Changing Career Paths in Tech
You’ve probably described yourself at some point as an ambitious professional. So why would you ever go anywhere but straight up?
This article is mostly for those who have a career in software development, are considering starting one, or are just curious about it. It’s mostly about how knowing how to code opens up non-obvious career options.
Let’s begin by acknowledging that a career in software development is a great privilege. There’s enormous demand, giving us geeks incredible luxuries in terms of compensation, perks, and choice.
On the other hand, the software industry is hard and stressful. Burnout, a kind of mental exhaustion where you can barely put two and two together let alone write a line of code, is rampant. Ageism in tech is real and it can render veterans unemployable. Staring at a screen and hunching over a keyboard for 8–12 hours a day for decades wreaks havoc on your back, neck, wrists, and eyes.
So, despite the perks, not everyone wants to write code forever.
Linear progression
Once you’ve got enough experience, options start opening up for enabling others instead of coding yourself.
You can advance upward into management if you enjoy responsibility and mentoring others, but be warned that things change dramatically.
Becoming a consultant is a solid option. Sharing your experience to help others is very rewarding and validating. It can be simpler to get retained as a consultant than hired as an employee. Consulting engagements aren’t typically long term, meaning there’s always something new and fresh around the corner and it’s harder to get bored. However, managing your consulting career is itself a full-time job.
(Co)founding a company is a popular ambition. Either developing your own product or joining up with others to build theirs as a technical co-founder is the ultimate dream for many programmers working in startups.
These common progression options are are very distinct, but they’re all branches of the same career path. All three options have you reporting into a CTO or being one.
The incredible flexibility of programming
Let’s take a moment to consider how software runs everything and how it runs everywhere. This has two important implications:
- Programmers can work in departments other than IT. Modern companies employ programmers of some description not only in Engineering but also in Product Development, Design, Marketing, Sales, Customer Success and all kinds of research teams.
- Writing software for a business inevitably teaches you about that business. If you’ve written code for things as diverse as newspapers, realtors or food delivery companies, you know a lot about how those business work.
All this to say, a person with programming skills can find a home in many different areas, doing a few different things. There have never been so many options.
Going sideways
Let me show you what I mean with a few examples of lateral moves and career changes I’ve made and witnessed.
A friend of mine traded jobs to become a product manager. His influence over the product increased, he was able to spend more time with his family, and he seemed to enjoy himself more.
I know sales engineers who were developers at some point, and now they use their programming skills to directly influence large enterprise deals.
Developer friends who enjoy public speaking became evangelists for SaaS companies. They travel extensively and get to play with technology for a living.
And when I decided to switch from head of engineering to solutions architect at a new company three years ago, I gave up a management position which was a step back. But I’d be learning about Customer Success, teaming up with industry experts and working directly with software teams at huge companies internationally.
Reasons to take the leap
You might simply want to stop writing code for a living, but keep leveraging the experience you accumulated. There are other reasons to switch away from the Engineering path:
To learn different skills
Of course, you can keep learning whatever your current job and a linear promotion is almost guaranteed to bring new challenges and learning opportunities. But that knowledge will probably be very closely related to what you already know.
Working at a different department will bring different kinds of people into your life. Your objectives will change dramatically. As an engineer, your goal might be to write the best performing code possible. As a sales engineer, your goal will be to showcase the benefits of that performance for your audience. Stating how fast something is won’t cut it, you’ll have to learn to communicate that benefit in terms that matter to them.
A switch to Sales or Customer Success at a software company is also a great way to learn what it takes to run the customer-facing side of a startup. That will be useful if you’re inclined to start your own later on. And you’ll be amazed at how much the efforts of those two departments can make up for product shortcomings.
Those are just the obvious things you can learn from taking on a different job and mingling with different people. Being a programmer, you know what’s possible with technology and you’ll be shocked at how many things don’t take advantage of it. You might just find an unexpected business idea.
To grow your network
I already hinted at this in the point above, but it bears repeating. You’ll have access to a new network of people with different skill sets and interests. This might challenge your views and teach you new things. You might become a more well-rounded person. You’ll make friends and grow your professional network in new and exciting areas.
To spend your time differently
I and those Developer Evangelist friends got to get paid for traveling and seeing the world in the course of our duties. How crazy is that? Of course, there’s also the reverse side of that coin. Maybe at some point, we’ll want to go back to an engineering track to stop traveling so much and spend more time at home. Point is, there’s life outside of the office and developer skills give you the option to experience it.
As a way into something better
The skills, network, and experience you’ll gain from taking on a different role will greatly influence your career. They’ll give rise to new, unexpected opportunities.
Even if you return to your old engineering path, your view of the world will have changed. You’ll have a higher-level perspective than before, and that’ll make you stand out. There are plenty of engineers who know more programming languages than you do, but how many also know how to sell software, placate an angry customer, speak in public or pitch to C-levels? All those skills can be put to excellent use in Engineering departments.
Things to expect once you’ve done it
If you’re considering a switch, or have recently made one, here are a few things you might be experiencing already, or might come to experience.
Excitement
You’ll be learning all-new things and your head might feel too small for all the knowledge it absorbs and ideas it has. Things will feel like they’re moving at a thousand miles an hour. In my first trip to North America to visit enterprise customers, I felt like I was caught in a headlong rush, barely able to keep up with everything that was happening. That’s a great feeling, enjoy it and remember it.
Impostor syndrome
You may or may not be prone to experiencing IS in general. If you are, switching careers will be a very likely time to experience it. In my first months as a solution architect, I was very intimidated by my colleagues. They were older, more experienced and more knowledgeable. I felt like an absolute newbie. Even as I started figuring out the role and getting praise for my efforts, internally I kept waiting for the other shoe to drop, to be exposed as a fraud.
But keep at it. Keep plugging away and the feeling will fade. Keep working and you’ll get that win that’ll restore your confidence. For me it was finding myself alone in Santa Monica, visiting a customer nine time zones away from my home and my company’s headquarters in Berlin. With everyone in Berlin asleep, and at a time before the company had round-the-clock support, the only person the customer could turn to for answers was me. I left LA with a happy customer, new friends and a great sense of professional pride.
Keep at it. You’ll get your win too.
Longing
Your former path might have been going somewhere. In your moments of doubt, you might long for the comfort of what you knew so well, and experience some regret over the decision to switch away.
It’s normal. And it might not be wrong. Give yourself time to settle into the new role, but if a year passes and you still know in your heart of hearts that you want to go back, then do it.
Growth
Whatever happens, as long as you apply yourself and give the new role a fair go, you’ll learn a lot and grow as a professional and as a person.
And that’s always a good thing.