Tech Works: How to Build a Life-Long Career in Engineering
“There are a lot of people that are just starting their career and they are already planning retirement in their early 20s. And I’m asking them, why are you rushing so fast?” said Kelsey Hightower, reflecting on his recent retirement from Google at age 42, on stage at Civo Navigate in London.
Too many developers are so focused, he said, on playing their career paths like video games — trying to get to the end without enjoying and learning from the creative endeavor. By zooming in, he continued, you get to understand the richness of a specific language or piece of technology. And then, when you know it well enough, you can zoom out and see how it fits into the greater, increasingly more complex landscape.
And unlike a game where you might be able to follow outlined steps in order to reach the end goal, every developer’s path will be unique.
This is where Hightower finds himself as he takes a step back after 25 years in tech. Not exactly stepping away completely, but pivoting his role to that of a philosopher — which was clear as he dominated the hallway track at Civo Navigate in September.
“Anyone that does something long enough and they get good at it will eventually become a philosopher,” he said to the Navigate audience. “You start to understand the thing not for what it is but why you do it.”
So how do you build a lifelong career as an engineer — without burning out? And, especially after a rough year, how can you be realistic and strategic about building a career in tech, while remaining positive?
Here’s how: You work smart, you stay curious and you learn from anyone you can. This month’s Tech Works column offers some advice for building a sustainable software engineering career.
Where Are the Jobs?
Of course, the first thing you need to build a career in tech is a job in tech — which, after the last year, isn’t so easy. The last 15 or so months have seen a power shift from tech workers back to their employers, with many organizations on hiring freezes.
Timothy James, a computer science instructor at the University of Pittsburgh, told The New Stack that he’s witnessed many of his recent graduates struggling to find jobs.
And if they have interviews, he said, they’re getting ghosted or dropped from the candidate pool without explanation.
Add to this, he said, hiring managers are becoming a bit opportunistic, freezing out entry-level engineers.
“If I can get somebody that has this level of experience, a little bit easier, a little bit lower — like I can get them to compromise on the level of the role — I think people are taking advantage of that,” James said. “That means I can hire someone with five years of experience in the position that I would usually hire someone with zero.”
This puts the whole industry at eventual risk, he warned, because you need workers with different skill and experience levels in order for an organization to grow, and to help others learn so they can grow: “If you only have people who are more experienced, the balance of your team is very difficult to maintain because there’s just not enough opportunity for the same things.”
Survival Strategies for Early Career
Not everybody can afford to pursue a graduate degree or do unpaid work while they wait out the market.
You’ve got to be persistent and strategic, James said. “I always tell students that there are different strategies for survival and reproduction in the wild. You know, a bear may have two cubs and invest a lot of time and resources in raising them into adulthood. Whereas a fish will lay a million eggs and swim away.”
When searching for a tech job, sometimes you have to be a bear and sometimes you need to lay a lot of eggs — equal parts persistent and mercenary with your time.
“You want to actually think about the jobs you’re applying to. And which ones are important to you and which ones you just would like to have a shot,” James said. “I think that this last year has shown a lot of people that something I’ve been telling them for years: is that you probably don’t matter that much. These companies will rescind your offer without a second thought.”
So, to paraphrase “Finding Nemo,” just keep applying, just keep applying. And in the meantime, what should you do? Don’t go running to do free work for open source communities, James advised, unless you really don’t have any alternatives or are targeting the companies that promote open source as key to their values.
“It’s a nice-to-have, but it’s not as nice to have as an internship,” James said. “It’s not as nice to have six months of experience at a particular place,”
Nonprofit work is another path he sees early career job seekers benefiting from. “They may not pay much or they might not pay anything, but they’re going to be very strong referrals and it’s something serious and real that you can build — and then you can talk about it and you can show it to people.”
It’s all about getting real experience, especially when college CompSci tends to be theoretical.
“The irony of college education is that we bring students into this environment for four years and have them build these tiny things. And then we send them out into the industry and there are like a million lines of code,” James said, where the tasks may be simpler than at uni, but the environments are far more complex.
He noted, “A lot of students will finish a four-year college degree in computer science, and never actually build a significant application.”
When to Make a Move
Some of James’ former students have told him they’re frustrated because either they think they should be getting paid more or because they don’t love their work. But it’s not a great time to leave a job, he said, even for a little more money.
On the other hand: if there’s a lesson this industry learned in 2023, it’s that your company is not your family. Loyalty should only go so far.
“This is a business. If I can double my salary by jumping out of here, there is no loyalty,” Hightower said in the same keynote. “If you were loyal, then you would pay me enough money where jumping would make no sense.”
He advocated leaping to a new opportunity, but with a caveat: “Don’t jump before you actually accomplish something. What’s the point of resetting the game if you didn’t fix the problem to learn what to do the next time you play?”
At some companies, it may only take six months to learn all you can from your job, and that’s OK, he said. “My ultimate goal was to ship something that people would actually be willing to pay for and then move on to the next thing. So I can become this well-rounded.”
There’s no doubt the role of developers is changing in light of AI. So how can developers leverage generative AI while still preserving their jobs? It comes down to an emphasis on creative work and problem-solving — nurturing a mindset where you want to figure things out.
As Hightower put it, “You get to move as fast as you’re willing to believe that you can. You identify a problem and you execute it.”
Aim to be agile in mindset and practice as long as you can, both with your organization and with your own career. Nothing is precious. Always look for opportunities to learn.
If you get stuck with one language or framework, it limits where you can move and also your ability to change. It may even have you wasting time rebuilding things in your framework of choice — like Hightower acknowledged he used to do with Python.
“When I meet developers and they say, ‘I am a Java developer,’ I’m like, ‘You are limited,’” he remarked, advocating for a polyglot’s curiosity. “You are a developer. Ideally, you have as many dialects that let you actually dive deep into the ecosystems in which you want to participate.”
And don’t forget to interrogate the “why” behind technical choices.
“If I see a new technology that I use for the first time, I ask myself: What are the fundamentals? What is this thing doing? And then, What were people doing before this? Once you get those answers, you can kind of see through any of the hype cycles,” Hightower reflected. “And then I can judge the quality of the project based on the implementation of events.”
Especially when the new shiny is artificial intelligence, who made it, with what data, and for what purpose, should always be asked. As you look to advance your career in tech in 2024, work on anything that makes you a more critical and creative worker.
Learn to Be a Storyteller
IT is a massive cost center that often demands an explanation from an organization’s budget makers, especially with a recession looming. An underappreciated benefit of platform engineering, for instance, is that it can enable a conversation between the tech side and the business side.
Developers and engineers benefit from this conversation. They feel a deeper sense of purpose when their work is more closely connected to business goals.
That means, especially in a time of increased automation, storytelling is of great value. To act as a translator and context giver can help boost an engineer’s value.
“The unnatural part is talking to people with power: ‘Hey I really want to tell you something, but I’ve not done the slides.’ That’s not natural,” Hightower reminded the Civo Navigate audience.
As humans, we instead talk to people and tell them stories. “The thing is, in this tech business we’re in, I don’t know why we forgot that these developers [are] actually people that build things,” he said. “And most developers are tired of the BS.”
Storytelling involves a lot more passion — and a lot less prep and boredom — than Powerpoint does.
“When we get a chance to speak about the thing you’re working on, it’s easier to convey my appeal via story because it aligns with reality,” Hightower emphasized.
Storytelling is also easier and more natural, he added: “And then you look into the audience and watch how people respond to the story. There’s a connection.”
What skills do you think can help developers build a career in tech in 2024? Share this post on LinkedIn with your tips and the hashtag #TechWorks.