Categories
Career

Lessons learned in 35 years of making software

Today (3rd July, 2024) is my 35th anniversary working in and around the software industry. All but 18 months of that have been spent on software development teams; those errant 18 months were spent editing technology books. I figured out fast that it wasn’t for me, and came right back home to the software industry.

Me, working infinitely hard at one of my career stops

In 35 years, I’ve learned some strong lessons. Maybe they’re ones you’ve learned yourself already. We all learn at different paces and at different times!

Do things in the most straightforward way possible. It’s easy to fall into the trap of clever solutions, or clever applications of technology, or overbuilding something because you’re anticipating the future. Don’t do it. You will hate yourself for it later when you have to maintain it. Build the thing in the simplest way you can, as fast as you can. You can improve it over time as needs demand.

There is no substitute for working software in Production. I can’t believe now that I have been part of 18-month release projects. This was back in the bad old waterfall days, but even then it was possible to release a lot more frequently than that. The software we build is valuable. It builds the value of the company. When you hold it until it’s perfect, or everything you think it needs to be, you are holding back on building the company’s value. Find the fastest, shortest path to getting the smallest increment of the thing that will work into the customer’s hands. You can keep making it better from there.

Relationships matter if you want to advance. It took me until about ten years ago to start to understand how building relationships across any company I work for is critical if I want to move up, and even remain employed when times are tough. I’ve found that being relentlessly helpful to others, even in things that aren’t strictly your responsibility, keeps you as someone everybody wants on the team. And when you push for a promotion, you have a base of people across the company who think you’re awesome. It greases the skids.

Relationships matter if you want to see your vision come to life. You may have the best vision ever for the product and how it should be built. You may see something that isn’t working well and know just how to fix it. It’s a 90-degree uphill climb to make your vision reality when you aren’t well connected to people with the power to help you. Even if you’re at the lowest level of the organization, try to build relationships with key leaders.

Never be invisible. When I was still testing software for my supper, I’d just quietly work all day and then go home. I’m going to toot my own horn a little: I was fast and good at finding the most critical bugs. Nobody could touch me. But, critically, nobody in leadership knew it. When I wanted to move up, I had a hard time showing that I was ready. I needed to make sure my work was visible, so that leaders could see what I was capable of.

Build and maintain a network of people in our field, outside the company you currently work for. As I write this, I realize I have let my network fall off since the pandemic. I need to rebuild it. My network has saved my bacon more than once when I unexpectedly lost a job. I wouldn’t be at my current company without my network. I got introduced to a particular fellow about ten years ago and we had coffee. We really enjoyed the conversation and committed to coffee once a quarter, a habit we kept for many years. It fell off in time as his life took him in a different direction. He was connected to the CTO at this company, who was trying to figure out how to build out the QA team and test process. My colleague connected me to him, and I gave him some free advice that he used. He thought I was sharp enough that when his Director of Engineering left to start his own venture, he called me and asked me if I would be interested in the job.

Be willing. There have been plenty of things in my career that I didn’t know how to do, but when my boss asked me to do it, I simply said I’d figure it out. As you do this, it’s good for you in two ways. First, bosses like people who accept assignments and figure them out. Second, you then learn how to do the thing and can do it again; you’ve built skill. In my time at my current company, my CTO has asked me to do plenty of things I didn’t know how to do. I simply said yes and got on with figuring it out. Someone who already knew how to do it could have done it faster and better, for sure, but I got it done. We all have to start somewhere when we learn how to do something.

Chase adventure and interestingness, not salary and title. This might be controversial with some, for whom salary and title are critical. So be it. We’re ridiculously well paid in this industry, even at the entry level. I’ve had a varied career, from technical writing to QA to engineering. I’ve said yes to, or chased after, things that sounded like would be challenging and interesting, and therefore fun. The money and positions have come to me in time. I might have gotten them a lot faster had I chased after them instead. What I got was a fascinating career and a great deal of personal and professional growth. I regret a couple choices, and a couple other choices totally didn’t work out for me. But there’s so much opportunity in this industry (even though the downturn we’re living through has tightened that up for now) that you can recover from that.

Challenge yourself to stretch past your natural tendencies. I loved it back in the waterfall days that I could pick up a big assignment and go work on it alone for weeks. Frankly, I still would love to do that. Those days were always so comfortable – come to the office, get some coffee, put on headphones, and chip away at my assignment all day. What I didn’t understand was that it kept me off everybody’s radar. I’m not a highly competitive person. I mostly want everyone to get along and work together. But unfortunately for me, there are times when you need to be competitive to keep your job, such as when a company has a rough time financially. I had to figure out how to show visible value all the time so that the sentiment was, “well, we can’t let Jim Grey go, he gets so much good stuff done.”

Understand that different social classes have different ideas about how the world works. I grew up working class, blue collar. We work in a white-collar industry. Because of my background, I thought that if I worked hard and did good work, I would rise. That was true for my dad, who rose from factory floor, to quality control, to quality manager, and finally plant manager. But in a white-collar world, it’s far more about relationships and power than about your work. I still struggle with this lesson. I still want it to be about my work. But it wasn’t until I built relationships and power that I was able to reach the Director level. If I ever want to make the VP level, I have even more work to do there.

When you deliver work you’re really proud of, you’ve almost certainly done too much and taken too long. I have a bit of a perfectionist streak. I want to do my work well and thoroughly. It took me a long time to learn that when I do that, it’s for me, not for the company. When I’ve reached 60-80% of the thing being as good as I want, I’ve probably done enough.

The software we are building right now will one day be decommissioned and not be used anymore, probably before your career is over. I’ve lost track of all of the software I’ve delivered that isn’t running anywhere anymore. Some of that is because my career is 35 years long. But even some of the software I worked on five or ten years ago isn’t running anymore. This is another good reason to build small increments, just good enough, get them out there, and iterate from there. Anything more and you’ve overbuilt some software that isn’t going to run forever anyway.

Categories
Career

To move your career forward, focus on what your company thinks is valuable

By Jim Grey (about)

Early in my career I wrote thick paper manuals for a company’s highly technical software products. (Paper manuals were still very much a thing 34 years ago when I started writing them.) I really liked the work and dreamed of becoming an independent technical author.

The company lost its biggest customer and that put us in serious financial trouble. We needed to ship the next release of a particular product fast to close some product gaps that were blocking sales. My boss reassigned me from writing to testing.

One of the many books I edited. If you find a copy, look on the page right before the Table of Contents and you’ll find my name.

I was not happy about it. At all. I didn’t hate testing, and I could see that they needed more testers to accelerate the schedule. But testing didn’t move me toward my dreams. So I quit to become an editor for a technology publishing company.

That job turned out to be a meat grinder. And then I learned that authors didn’t really make that much money from their books. I’d have to kill myself working to make a good living as an author. So I quit and went to a different company in the software industry.

But this isn’t really about my dream. It’s about a missed opportunity, which was to make a name for myself with those people in that place, materially helping them save the company by doing the critical job they asked me to do. The company did not need more user manuals right then, it needed working software to sell. I could have helped with that. 

Lots of people left that company during that time and it didn’t make it. In my view, if we had all stuck it out and done the things that were needed, even if they were not things we would have preferred to do, we might have pulled the company through. What a story that would have been to be able to tell!

Even in less urgent times, wherever you work, understand what your company thinks is valuable and align yourself hard to those things. Throw yourself into them. Skate to where the puck is.

First, it helps the company more powerfully achieve its goals. Second, it helps you in your career to be seen as someone who’s seriously in the game. That’s good for you.

This does not mean you shouldn’t advocate for things that you think are valuable. I’m sure you see a dozen things that your company doesn’t pay attention to that it probably ought to. Fight the good fight while you give them what they value.

This also does not mean you should align to things that are illegal or immoral. If your company asks you to do that, obviously you should get out.

As a leader I love it when I say, “I need X,” and my team gives me X in abundance. It’s not because my ego needs that stroke, but because X is highly valuable. You giving me that highly valuable stuff leads me to see you as a highly valuable player. It makes it a lot more likely that I might call you one day after we’ve all gone on to work elsewhere, and ask you to join my team again. I know you to be someone who delivers valuable things in abundance!

Categories
Career

The farther you go up the ladder, the less it’s about your technical skills

By Jim Grey (about)

I just finished writing new job descriptions for the software engineers and quality engineers in my organization as part of a new titling and leveling system we’re rolling out.

Job descriptions are an important part of knowing what skills and experience are expected of you in your role and level, and at levels above you so you can work toward promotion. But they are not meant to be, not able to be, a hard-and-fast roadmap to promotion.

That’s because the higher up the ladder you go, whether as an engineer or a manager, the more you need soft skills that job descriptions aren’t designed to capture.

By soft skills I mean things like:

  • Straight up social skills – being able to build connections with others, to collaborate successfully, even simply to have a human conversation with people (especially leaders) outside your immediate sphere.
  • Communication – being able to clearly and crisply explain technical concepts and implementations so that others can follow you, especially if they’re not engineers; being able to put together a good slide deck and write a good position paper; knowing when and how to escalate things up the chain.
  • Leadership – seeing what needs to be done and getting others to follow you in doing it, taking calculated risks, being comfortable with failure.
  • Power – being able to identify the key people you need in your corner, build reciprocal relationships with them, and use this as your power base.
  • Maturity – managing your time and energy, your emotions, your decorum.

Somewhere along the way I saw a model that describes how hard and soft skills relate as you move up the ladder. Here’s a rough diagram of it:

Credit where credit is due: I searched until I found where I learned this and it was from this article: https://codecapsule.com/2021/07/15/the-skills-map-of-senior-tech-career-progression/

Notice that on this model some people at the Senior Principal level may not have technical skills better than a Staff Engineer. They just have outstanding soft skills that let them have a much bigger impact on the organization. Heck, my technical skills are, at best, on par with a mid-level engineer. It’s been a long time since I coded! Yet here I am, the Director of Engineering. It’s because I’m technical enough, and I’ve learned the soft skills I need. As a result, I can have the impact expected of a Director.

The farther up the ladder you go, whether on the technical or managerial track, the bigger the impact you are expected to make. You can’t make the bigger impacts without those soft skills. It’s because you increasingly need to work with and influence others, and even build a power base, the more you rise.

Learning soft skills has not come easy for me. At all. I have had to learn them all by watching others who are good at them and straight up mimicking them until I could do them easily enough. At my core I’m deeply introverted, probably mildly autistic, reticent and anxious. I’ve had to push myself to take some big (to me) risks, over and over again, to become truly good at leading, and gain confidence.

You can’t quantify soft skills. The people who hold the keys to saying Yes to your next promotion have little choice but to judge your soft skills to the best of their abilities, and compare them to what they see the needs are at the next level.

Ten years ago I was a QA Manager at another company. I badly wanted to be Director of QA. A new executive from outside the company was hired and became my boss. We fit together really well, and after a little while she told me she wanted to promote me. Woot!

But then she was abruptly reassigned to turn around a troubled part of the company, and in time I got yet another new executive as my boss. He soon decided that he wanted a Director of QA, but it was clear that I wasn’t his automatic choice. Rather, he posted it externally. I interviewed for it, but he hired a fellow from outside the company instead.

This fellow didn’t have nearly the QA chops that I did, which pissed me off. Yet within his first 30 days on the job he had built rapport and trust with a whole bunch of key leaders in the organization. I had not managed to do that in four years with that company. Compared to me, he was a master of soft skills.

This is judgment at play. I was the same person under both executives. 

This felt unfair to me at the time, but eventually I came to see that this wasn’t a matter of fairness. Rather, given the new executive’s vision he wanted something different from his Director of QA than the previous executive did. He didn’t see that I had it.

I had to leave that company to finally get the Director title. There I found I needed to work on some soft skills pronto, as it didn’t take long before I struggled to move ideas forward. I just didn’t know how to build that power base I needed.

Where I work now, the CTO gave me a terrific development plan in January that is helping me build the soft skills I still need to succeed at a higher level here, should one ever become available. To be a viable candidate for promotion, I need to gain certain soft skills at the next level — not technical skills, at all. The higher up the ladder you go the less often promotions come around, so who knows if it will ever happen for me here. Fortunately, I really, really like being Director and can keep doing this job indefinitely. And I’m enjoying the growth my development plan is driving.

The moral of this story for you is that if you want more out of your career, lean into soft skills at least as much as you lean into technical skills.

Categories
Career

Surviving the downturn

By Jim Grey (about)

For years there have been more jobs than people in our industry, and supply and demand kept driving salaries up. But now across the industry there have been layoffs. I imagine you are feeling uncertain and insecure now. That’s normal and natural. I feel it too.

In our industry, security is illusory. Every software company is always one or two bad quarters away from a layoff, or worse.

A photo of me on the job at the ERP company

Here’s a story of this in the extreme. In 1997 I joined a software company that made an ERP system for small and mid-sized manufacturers. It was a wonderful place to work. Sales were fantastic, and we grew enough over the next three years that we IPO’d. I was granted 30,000 stock options and dreamed of an outcome that would pay off my house.

Then the dot-com bubble burst, and September 11th happened. The bottom fell out of the entire software industry – nobody was buying software. That company had layoffs every quarter, and my turn finally came. My stock options had become worthless. 

But worse, I had kids to feed and a mortgage to pay. Industry jobs were scarce. Through a lucky break, I landed an individual contributor role on a software team at a very large health insurer. The culture there was terrible, but the pay was surprisingly good and I could take care of my family.

The last time I found myself involuntarily without a job was in late 2018. I saw signs it was coming, and I was worried and anxious. I wasn’t even happy there! But when it happened it was still a loss, and nobody likes to lose. Also, I’m not wealthy; I needed those paychecks. 

I had been Director of Engineering there, and the best job I could find in time was an Engineering Manager for a large, slow software company with a bad culture and ancient technology. I gritted my teeth and got on with it, for my bills weren’t willing to wait for me to find a better job.

What I’ve had to do – and what I encourage you to do – is become comfortable with the uncertainty inherent in our industry. But also, know that the overall trajectory of the industry is strong. It has recovered powerfully from every dip – we are in the third one in my 34 years in the industry – and is very likely to keep doing that.

If you just can’t find a way to get comfortable with our industry’s inherent instability, consider finding work at a big insurance company or bank. A whole bunch of developers and testers I worked with at the health insurer 20 years ago are still there. 

To make yourself more able to pull through downturns, focus on things you can control. A long time ago I learned about The Three Freedoms, and leaning into them has helped me find a new job faster when I was out on my ear:

  • Freedom skills – Make sure that you can do things for which there is demand. I know an engineer from that ERP company who never moved off that company’s core technology, which was a language called Visual FoxPro. Never heard of it? That’s because nobody’s used it in 15 years. He has made himself irrelevant. 
  • Freedom contacts – Build your network in the industry. I could write a whole article about this one topic. But in short: Stay in touch with good people you’ve worked for and with in the past. Ask them to introduce you to people they know but you don’t. Make a regular habit of having coffee, lunch, or beers with these people. Then when it’s time for you to find a new job, you can contact all of these people, who can keep their ears to the ground for you.
  • Freedom money – Save powerfully. If you have six or 12 months of living expenses in the bank, losing your job is not a crisis. This also lets you quit a situation that is bad for your mental health.
Categories
Career

Nine tips for interviewing over Zoom

By Jim Grey (about)

I’ve been hiring engineers and testers lately. Even though pandemic restrictions are starting to lift, most of us are still working from home. So are the people I’m interviewing. That means I’m interviewing over Zoom.

I care a lot more about a candidate’s qualifications than I do about how they present on Zoom. I hope it’s true of all hiring managers. However, good presentation removes any subtle biases and barriers to your success.

What I look like on a Zoom meeting

Here are a few tips from the trenches that can help you present well.

  1. Video and audio quality need only be adequate. You don’t need pro equipment. The camera and microphone in your laptop are sufficient. A webcam from a major manufacturer will be fine. A headset might reduce ambient noise; try one and see.
  2. Test the videoconferencing platform before the meeting. A few times, candidates have struggled to get Zoom to work, and we lost the first five or ten minutes of the interview. If you know what videoconferencing platform the interview will use, install it on your computer well in advance and make sure your camera and microphone both work with it. Also make sure you know where the mute button is and how to recognize when you’re muted. Know where the app’s audio settings are, in case they say need you to turn up the volume on your end. If you don’t know what videoconferencing platform will be used, record ten seconds of yourself reading something into your computer’s video app. Play it back to see how it looks and sounds, and adjust settings in your computer accordingly.
  3. If you can, do it in a quiet place. I got to listen to loud sirens in one interview, as fire trucks rumbled by on their way to a call. I am embarrassed to admit that one interviewee got to listen to our microwave oven roar and beep while my son heated up a burrito, as my home office is just off the kitchen. Neither was the end of the world, but it would have been nicer not to have those interruptions.
  4. If you must use your phone, set it steady and level, in portrait orientation. One candidate used her phone, and turned it sideways so I appeared larger on her screen. But Zoom didn’t correct the orientation of her camera, and she appeared sideways on my screen. Another candidate held his phone in his hand the whole time, and it was a jerky experience. Get a stand for your phone.
  5. Face the camera. I know a lot of people place their laptop to the side and their main monitor in front of them. But then they appear in profile on camera, as if they’re speaking to someone outside the frame. If this is you, use the laptop screen for the interview. Or do what I did, buy a USB webcam and set it on top of your monitor.
  6. Position your camera so the top of your head is near the top of the screen, and you are centered horizontally. I spoke to one candidate who I could see only from his nose up, his head at the very bottom left of the Zoom window. I got a great view of his ceiling above. Another candidate appeared to tower over me on screen, as his monitor was somehow above his camera. When you are front and center, it’s far easier for the interviewer to connect with you. You may need to elevate your laptop to achieve this; a stack of books may do the trick.
  7. Consider how much or little of your body you want to show. My camera’s position and field of view reveals my torso from the sternum up. I’m good with that, but perhaps you prefer to show less of yourself. You can move closer to the camera, or buy a camera with a narrower field of view. Alternatively, for some cameras (like my webcam) Zoom lets you turn off HD, which will make you appear closer on the screen and show less of your body.
  8. Make sure the room behind you is tidy. In one screening call, I got a great view of the candidate’s unmade bed and some dirty clothes piled up on the dresser behind it. Tidy up behind you! If that’s not possible for some reason, consider using a Zoom background (but know that some people find them to be distracting). To use a background, you need to download Zoom in advance.
  9. Pay attention to clothes and grooming. One fellow appeared on my screen looking like he just crawled out of bed. You don’t need to dress formally for a Zoom interview, but do make sure your hair is in order, your face is clean, and your shirt is fresh.
Categories
Career

Fortune’s careless aim

By Jim Grey (about)

It’s the American mythos: if you work hard enough, you can accomplish anything. But I no longer think it’s true.

Mind you, I’m all for hard work. But I think success also requires good resources and good luck. Actually, I think resources and luck are more important than hard work. They make hard work gain solid traction. Without them, a lifetime of hard work usually yields very little.

I see it all the time in the inner-city church I attend: teens struggling to make a viable life as they enter adulthood, adults working hard only to barely tread water. Many of these people are bright and capable and have dreams they’d like to achieve. Few of them make a stable life, despite their best efforts.

In contrast, I’ve done well in my life. I make upper-middle-class money — not so much that I’m free from financial worry, but enough that the wolves are so far from the door that I’ve pretty much forgotten what they look like.

What has brought my good fortune? Hard work has certainly been important. But I’ve also had resources that my inner-city church friends simply lack, and those resources and my willingness to work have let me capitalize on the luck that has come my way.

My story illustrates my point very well. So I’m going to tell it three times: first through the lens of hard work, then through the lens of resources and luck, and finally through the lens of some of the difficulties I’ve faced, some of which were severe. As you read it, think of your story. How hard have you worked? What setbacks have you experienced? How have your resources and luck enabled — or lack thereof limited — success?

My story through the lens of hard work

Here’s the version of my life story, from the perspective of the success I’ve found in my life. Told this way, it looks like hard work really pays off.

I applied myself in school and got good grades. I also learned how to program computers. These things got me into a top engineering school where I worked harder than ever before or since. I got a degree in mathematics and computer science. I moved into a career in software development, where I’ve worked hard for more than a quarter century now and have risen through the ranks. Today, I’m a director in a software company. I have an upper-middle-class job and I’m doing well.

My story through the lens of resources and luck

I have worked hard. But when you look at my life through a wider lens, you can see how many resources I had available to me, and how good luck at key moments led to important opportunities.

I was born in 1967 to working-class parents who had high-school educations. We didn’t have much for a long time, but my parents were frugal and we never went without. Manufacturing jobs were reasonably plentiful then and Dad worked steadily. He was smart and capable, and in the 1980s was promoted to management.

My parents deliberately created a quiet, stable environment for my younger brother and me. We were well cared for and loved. Education was everything to them. Homework came first. They praised and rewarded our scholastic achievements. They always spoke of college as something we would do as if it were the natural next step after high school.

I was intelligent. I taught myself to read by age 3. And then I turned out to be well-suited for school — I was naturally well behaved and liked the rules and structure. I did the work and got excellent grades. In high school, I was accepted into all the advanced-placement classes, and I liked the challenge.

As I entered high school, the then-new home computers were just becoming affordable. I’d shown aptitude so Dad, flush with a new management-level salary, bought me one. I taught myself to write code on it. I spent hours mastering programming and really loved it.

I started writing programs to illustrate the concepts I was learning in my advanced-placement geometry class, and the teacher learned of it and had me demonstrate them to the class. He was impressed. “Jim, you could do this for a living.” That was a revelation: I had no idea people made careers out of programming computers. “You’ve got talent,” he continued. “You should study at Rose-Hulman. You have what it takes to make it there.”

I’d never heard of Rose-Hulman. It turns out it’s one of the nation’s top engineering schools, and it’s here in Indiana. I thought surely I couldn’t get in, but I applied anyway. To my astonishment, I was accepted.

MeAtRose1987
In my room at Rose in 1987

Rose is expensive, and was out of my family’s reach. But the Lilly Foundation, the philanthropic arm of Indiana pharmaceutical giant Eli Lilly and Company, was at that time helping bright first-generation college students go to private colleges. Their grant paid for a large portion of my college expenses. I also got a federal grant and a couple smaller scholarships. One federal program let me borrow some money, and another paid me to work part-time on campus. A state program helped me find summer work to earn more money. My parents were left with about 1/3 of the bill, bringing Rose just into reach. They lived on next to nothing while they paid for it.

Rose was enormously challenging — I never worked harder before or since. But I made it through, with a degree in mathematics and a concentration in computer science.

At graduation, the country was in a recession. Like many of my classmates, I had trouble landing a job. I wanted to be a programmer, but those jobs were scarce. But I had taken a technical-writing course as an English elective, and the professor connected me with a local software company that wanted to hire a technical writer. The company was founded by a Rose grad who liked to hire other Rose grads. I got the job.

I wrote and edited technical materials for a dozen years at several companies. At one company, my boss saw something in me and promoted me to manager. And then it turns out I had an aptitude for leading people, and liked it. After completing a successful and important project, he gave me a new opportunity to lead software testing, and mentored me as I learned the ropes.

A burgeoning software industry has formed in central Indiana, and I’ve ridden the wave, moving every few years from company to company to take on greater responsibilities and new challenges. Along the way, several people have mentored me or taught me a skill I lacked. It’s enabled me to deliver well everywhere I’ve worked.

It’s been enough to impress corporate CEOs and Vice Presidents all over town enough that I can call them up and meet them for coffee. Several years ago I reached out to them all in search of a new challenge. With their help, within eight weeks I was in a new role at a company with a bright future.

My story through the lens of life challenges

You might now think that I’ve lived a charmed life. But I have had some deep difficulties and stunning setbacks.

I’m not going to air my family’s dirty laundry here, but suffice it to say that there were challenges that led me to enter adulthood with difficulties forming healthy relationships, and that held me back for a long time. I lived with major depression and anxiety through my 20s and 30s. I was abused by someone who was supposed to love me and was left with PTSD. I endured a terrible marriage and, inevitably, a brutal and expensive divorce. I live with a chronic health issue that, for a while, I worried would leave me disabled. I’ve been let go twice by companies that couldn’t afford to pay me anymore, and I was fired not once, but twice.

These things have, point blank, held me back from greater success.

Yet they didn’t crush me. They could have; I’m not made of rock and titanium. I see people at my church struggle with many of the same challenges and it devastates their lives, leading to bankruptcy and homelessness, or severe chronic mental and physical illness. Sometimes they never recover.

The major difference, and the reason I’ve come through all of that okay, is because I’ve had good resources: family and friends who offered support, and money (and good insurance) to get help when I needed it.

Key themes in my story

Several key themes are woven through my story.

Timing. That I was born in 1967 is very important. I was about the right age for all of these things:

  • When I was a teenager, home computers became affordable to a family that had just emerged into the middle class.
  • When I entered engineering school, the Lilly Foundation was actively helping people in my situation pay for it.
  • When I entered the workforce, software companies were just starting to exist in quantity, creating demand for talent even during the recession we were in then.
  • When I began to mature in my field, the dot-com boom was forming and software companies were desperate for talent. It gave me the opportunity to move into leadership, which springboarded my career and, eventually, my income. That bubble burst, but another, more sustainable boom followed, and has created endless opportunity.

If I had been born a few years before or after 1967, I would have been the wrong age to fully enjoy most of these advantages.

Family. The family in which I grew up wasn’t perfect, but my parents loved me and raised me well overall. They didn’t have much money, but they were hyperfocused on making sure I got a very good education. They have been a source of support and encouragement throughout my life, especially during the most difficult days.

Natural abilities. I’m intelligent and intensely curious. My brain is wired just right to understand and enjoy technology.

Working/middle-class life skills. I know how to get to work on time and how to please my boss. I have good life-organization skills: there’s always enough food in the house, I pay my bills on time and have good credit, I keep my car and house well maintained (and do as much of the work myself as I can).

Willingness to work hard. I like to work. Look at me today: director in a software company, finishing raising my children, president of a nonprofit, elder in my church, publishing in my personal blog six days a week.

Good people. Just look at all the people who have helped me: The geometry teacher. The English professor. The boss who promoted me to management and taught me the ropes in software testing. The other mentors and colleagues I’ve alluded to who have elevated my abilities and helped me find new opportunities. Friends who supported me through difficult times and connected me with professionals who could help me.

Money. Just look at all the places money came from. My parents’ labor and sacrifice. A philanthropic organization. Federal and Indiana governments. And now, a healthy salary thanks to being a reasonably talented person in a booming field. Funds have been available to pay for college, for lawyers through my expensive divorce, and for healthcare professionals.

These incredible resources have provided a solid foundation on which I’ve been able to build a pretty good life — and recover from setbacks and difficulties.

My story through the lens of great wealth

Let me try to tell my story through one more lens, as best as I can: from the viewpoint of someone who was born into far greater privilege than me.

One of my college roommates was from a very wealthy family. To give you an idea of just how wealthy, he grew up in his own wing of his family’s mansion. Given my working-class roots, we were an odd pair of friends. I had no real concept of his reality, and he had little concept of mine, but we had Rose-Hulman and computer programming in common and it made our friendship work.

He could see that I had no clue about what success looked like in his world. Sometimes he gingerly offered me advice from his perspective. More than once, he coached me hard to save money and build capital. “When you get your first job, save up $10,000 as fast as you can,” he said. He detailed some ways I should invest it. “And then save another $10,000. And keep investing. It won’t take that long, really, for your money to grow to $50,000 or $100,000 or beyond — and then you’ll have money you can really work with.”

I couldn’t get my head wrapped around it. I came from a mindset of working to pay the bills — and if you had any left over, it went into a fully liquid emergency fund. And $10,000 was an unimaginable sum to me then. Even if I could save it, why would I tie it up in investments? What if something went wrong and I needed it?

He also talked to me about the importance of building relationships in my career, especially with VPs and CEOs. But to me, people with such lofty titles might as well have been 25 feet tall. Who was I to them? Why would they want to even talk to me? What did I have to offer them anyway? I’d rather let my hard work and eventual accomplishments speak for themselves.

That friend and I slowly drifted apart after college, I think in some part because he was living in his upper-class reality and I was living life according to my working/middle-class rules. From my perspective, I’ve done something remarkable: moved up one socioeconomic class. I am living successfully! But I think my friend was frustrated to see me squander my resources and not build a good network.

With my success of about the last 15 years and the world to which it has introduced me, my mind has slowly, finally come to see where my wealthy friend was coming from. You see some of it towards the end of my resources-and-luck story: how I do have VP/CEO contacts now, and I maintain those relationships. But even then, I did it the working/middle-class way: by proving myself through my work first.

– – –

So consider your story. What time in the world were you born into and how did that play into your success? Were you born into poverty, the working or middle class, or wealth? What life skills did your upbringing give you or not give you? Was your family emotionally healthy and a source of strength in your life? Did you have any major setbacks in your life? If so, were you able to recover from them? Why or why not? Do you have good friends, good colleagues, good professional contacts? Where has money come from in your life and how has it helped you get ahead?

Because no matter how hard you’ve worked, without those advantages you would be nowhere near as successful as you have been.

Categories
Career

Changing jobs during a pandemic

By Jim Grey (about)

Even as I approached the building, all was strange. The front was still boarded up after last summer’s Black Lives Matter protests, the only such building on the block. My key card let me in the front door. It was irrational, I’m sure, but I thought it might not still work after not having used it in ten months. The lights were off in the lobby, as they were on my floor as the elevator doors opened.

My desk was as messy as I’d left it. I didn’t know when I took the week off in early March that I’d never use it again. The company ordered us all to work from home starting the Monday I was to return.

Fast forward to December. I received a fantastic offer from another company, one I would have been foolish to ignore. I took it. On my last day, I drove to my soon-to-be-former office to clean out my desk.

I’ve left jobs before, a dozen times. I have it down. I take stuff home little by little during my last two weeks so my desk is clear on my last day. After lunch I walk around and say personal goodbyes to everyone I can find who I ever worked with, wrapping up with my boss. Not only will I miss the people, who I genuinely enjoy, but also I want to leave a good final impression. The market I work in is small enough that I’m likely to work with some of them again. When I’ve said my final goodbye, I slip out the door.

This was all different. There had been a Zoom happy hour in my honor, which was a nice gesture. I said goodbyes in my normal meetings all during my final week. Anyone I didn’t see, I Slacked. But it all felt so disconnected.

Stepping off the elevator, the floor was silent but for the whoosh and hum of the HVAC. The last time I was on this floor it buzzed with such activity that I needed noise-canceling headphones to be able to focus. I sorted through my things, leaving a healthy portion of it in the wastebasket. I left my laptop and my key card on my desk, picked up my box, rode the elevator down, and walked out for the last time.

Monday morning I started at the new job. My commute didn’t change a bit: I came downstairs, sat at my desk, and started Zoom. But the faces I saw on the screen were all new.

The new company did a terrific job of onboarding, easily the best experience of my career. They committed to everyone’s first full week being nothing but group meetings with various people in the company telling us the company’s history and mission, how we make money, how administrative things work, and what our product looks like and how it works. We got to meet all of the executives.

Yet I kept wishing to see my old team in those little boxes. I really missed them! I always miss the good people I worked with when I leave a job, but never this acutely. But then, I didn’t get to say a proper goodbye.

Categories
Career

You are an impostor

By Jim Grey (about)

I hired a software developer right out of college. He had a lot to learn, but he learned it steadily. Yet he admitted to me privately that he wasn’t sure he belonged. He thought that the other developers spoke so confidently and delivered so competently. He compared himself to them and, in his mind, came up wanting.

Impostor.

What he didn’t know was that I was leading developers for the first time. I’d been in management roles in the industry for a very long time, but always of testing and communications teams.

Worse, I hadn’t written a meaningful line of code in about a decade. Even then, most of that code was test automation. That’s not the same as writing product code.

Yet here I was, leading developers. The CTO who hired me wanted my skill in managing people, leading projects, and refining process. But I had so much to learn about modern software development. It was embarrassing to need the developers to explain the basics to me.

I told this young developer this story and admitted that I felt like an impostor, too. But I’d experienced impostor syndrome before. I knew that with effort and time I’d learn what I needed to learn and the feeling would abate. More importantly, even with all I needed to learn, I knew I had something valuable to offer right now. He did too, I told him.

We all figure it out as we go. In time, we build experience that lets us get it right more often.

What I wish I’d told him, what I’ve learned since then, is that there are three kinds of impostors:

  • There are the impostors who don’t know they’re impostors. They’re so self-possessed that they overestimate themselves.
  • There are the impostors who know it but do everything they can to hide it. They live in fear and anxiety that they will be found out.
  • And then there are the impostors who know it, admit it to themselves, and sometimes even admit it to others. They’re the ones who can grow the fastest.

This young developer was the best kind: he admitted it. It let me tell him my own story, which helped put his mind at ease. Then it let us talk frankly about the areas where he felt like he didn’t know what he was doing, so I could pair him with other engineers who could level him up faster.

Categories
Career

Communication: Throwing the ball so others can catch it

By Jim Grey (about)

“You are unusually direct,” Elsa said to me. She was one of the first people I hired in my first management role, in the late 1990s. She said this to me on a few occasions as we worked on a large project together. I took it as a compliment then, but with hindsight I see that Elsa found my forthrightness to be challenging.

I say half-jokingly that I was this direct because I have hillbilly and blue-collar roots. My dad grew up in the hills of West Virginia. His family moved to Indiana to find factory and construction work. Dad worked in a farm-equipment factory while I grew up. In the culture I came from, anything less than saying it straight — no matter how much the words hurt — is seen as being untrustworthy.

Handley, WV
Handley, West Virginia, pop. 350 — where my dad’s family is from

I was proud of my direct manner. I believed that my forthrightness was good and valuable. It came from a place of wanting good outcomes for the company, customers, and my co-workers. I wasn’t trying to be a jerk, but that’s how I was sometimes perceived.

I’d been a manager for about 10 years when the fellow I worked for at the time said it to me: “Jim. You’ve got to stop leaving dead bodies behind when you talk. Learn some tact.” He told me he’d like to see me move up in the organization, but not while this behavior stood in my way.

That got my attention. I had been pitching fastballs at peoples’ foreheads. That boss coached me in throwing drifts that others can catch. I’ve practiced it ever since, and have built reasonable skill. It has unlocked all sorts of opportunity for me. It has helped me build influence and trust.

It took a long time for more nuanced communication to not feel wrong. It turns out I’m not among my hillbilly family, and I’m not working a blue-collar job. I’m working with midwestern professionals, and the rules are different.

I revert to my natural form when I’m anxious, over-stressed, or very tired. Those are not my finest moments.

But there are times when speaking directly is valuable. Emergencies are one such time. A couple companies ago I ran QA. Production went down while all of the ops managers were at a conference. I was ranking manager, so I dove in and, using my natural directness, led the team to quickly find root cause and get Production back up again. One engineer praised me: “You came outta nowhere and crisply and efficiently drove the train back onto the track. I’ve never seen this side of you!”

Another time is when I think I see something critical that nobody else does, and nuanced communication is not getting the ball across the plate. A flat statement can grab attention and change the conversation. It can also blow up in my face, so it’s a calculated risk. I’m hoping it works because it seems so out of character. “Whoa, Jim is really strident about this one. He’s usually so collegial. Maybe we should listen a little more closely.”

Finally, sometimes you have to say a flat “no” to a challenging request. I try very hard to find a way to say yes while highlighting the tradeoffs I or my team will have to make. “Could you deliver this feature two weeks earlier?” “Yes, if I pause work on this other feature.” Or, “Yes, if we trim scope and accept greater quality risk.” Or, “Yes, if we can flow some of the work through this other team.” But if scope, quality, and team are fixed and don’t support the timeline, I’m left to say no, and I do so plainly.

I will always wish I could be direct all the time. It’s how I’m made. But I care more about being effective than leaning into my basic nature.

This post expands on a comment I left on another post on this subject, on Johanna Rothman’s blog, here.

Categories
Career

Sometimes you have the tiger by the tail, and sometimes the tiger has you in its mouth

By Jim Grey (about)

Lots of people in our industry have accomplished much, made a lot of money, and even achieved status or fame. It seems like lots, anyway. It’s probably a small but highly visible percentage. Whichever it is, it’s easy to wonder in this industry of plenty why that can’t be us.

When I remove the incredibly successful from the picture, it’s easy to see that I’ve done well for myself. I’m a middle manager of software engineers making a product you’ve probably heard of, in an engaged and positive workplace. We all make an upper-middle-class living.

Yet I sometimes wonder why I’ve made it only this far, why I’ve not gone farther. And I wonder whether I’ll be able to sustain my career as it enters its waning years.

You see, today marks 30 years that I’ve worked in the software industry. It boggles my mind that I’m only two-thirds of the way through my career — I still have 15 years to go before I’m of normal retirement age.

Fortunately this is all I’ve ever wanted to do, ever since I taught myself to write code in the early 1980s. I went to engineering school to get the credential I needed, but graduated during a recession when jobs were scarce. In a nationwide search I couldn’t find coding job. I managed to land job in the software industry writing manuals and online help, and I was grateful to get it.

I liked the work and became quite good at it, so I kept at it for eight years. Then I transitioned to QA, where I led functional testing, test-automation, and performance-testing teams. I did that for 17 years. And now I’ve transitioned back to my roots in a way by leading engineering teams.

I’ve lived through crazy growth and sudden downturns in the industry. Several times I’ve needed to find a job when one ended unexpectedly; several times I’ve been poached away to a better opportunity. I’ve worked with good people who have taken good care of me, and with charlatans and egomaniacs who stabbed me in the back.

Sometimes I’ve had the tiger by its tail, and sometimes the tiger’s had me in its mouth.

Thinking about what you'd taste like

Dozens of people have reported to me since I shifted into management. It’s a small tech community where I live; I bump into many of them a lot. Some of them are still individual contributors, some of them have become managers and leaders, and a few of them have gone on to even greater careers than I’ve had, reaching VP levels or reaping tidy sums when their startups exited.

But I’ll bet every last one of them has had good luck and setbacks all along the way, just as I have. We all sometimes have to figure out how to move forward from here in our careers. We all have to figure out how to stay relevant and vital, especially as we age.

I’ve been in management for 20 years, during which time I focused on being the best leader I could be. It has served me well.

I couldn’t both become a strong leader and keep my technical skills current. I struggle a little bit to swim as fast as my peer engineering leaders, most of whom have written code recently. I can see it’s time to rebuild my technical skills. I don’t expect, and I won’t try, to become the equivalent of a senior engineer. But to have a solid understanding of the technologies involved in my company’s product, to better evaluate the code of someone on my team and maybe even to be able to fix a bug, to be able to write a SQL query more complicated than SELECT * FROM table_name; — it’s time. I’m a little daunted, but in I go nevertheless.

I’ve learned a lot in 30 years. In many ways, I’ve become wise. But I’m still trying to figure things out as my life and career unfold. I can see that this never ends.