Peter Drucker—the founder of modern management—said in his 1999 article “Managing Oneself” that knowledge workers should plan their second career well ahead of time.
That’s admirable advice.
Except that for the rest of us, planning our first career is already a major life struggle.
And I can talk at length from my own experience. A little more than ten years ago, back when I was still a naive junior engineer, career progression was a very nebulous concept.
Now that I’m at a point where I’m managing other tech managers, I’ve gained enough perspective on the topic that I can share valuable insights that my younger self would have loved to hear and learn.
I wanted to create a simple representation to enable anyone with a career in tech to grasp how career progression looks like and what it requires.
In the rest of this article, I’m presenting a skills map of career progression, starting all the way from the senior developer role. This map covers both the individual contributor and managerial career paths.
Career growth happens on multiple dimensions
When I started thinking about creating this skills map for senior developers, I wanted a way to figure out a way to represent the equivalence between levels across the individual contributor paths and the managerial paths.
I settle on using the career levels of big tech companies and in particular Amazon, Google, and Microsoft as main inputs. For that, I used the website levels.fyi as a reference, as it compares similar jobs and career levels across many companies.
Below are the two tables that I retrieved at the time I wrote this article, one for the individual contributor path, and another one for the managerial path. I’ve also decided to use the level numbering from Google, and as such, Senior Engineer starts at L5 (career level 5) and the progression goes all the way to L11 for a Senior VP of Technology.
The Senior Engineer Skills Map
After tinkering with various ways I could illustrate this data, I decided I’d be mapping the different job roles and career progressions on two dimensions: hard skills vs soft skills.
Hard skills would include things like programming, system knowledge, and so on, but also product skills in the case of a product manager role.
On the other hand, soft skills include things such as communication, relationships building, emotional intelligence, and so on.
I showed it to a few of my manager friends for feedback, and I finally arrived at the version I’m sharing below. Click the links below the map for higher resolutions.
Where to start with this skills map
You should read this map from the bottom-left corner, with the Senior Engineer role as the starting point. Then, follow the arrows to see how each path develops.
What you’ll rapidly notice is that the career progression for senior engineers, for both the individual contributor and the managerial paths, always requires growth on the soft skills and organization skills.
Look at the relative positions of jobs on the map
Don’t pay too much attention to the absolute position of each job on the map. Instead, look at their relative positions, which shows where the need for skills improvement resides.
For example, the space between Senior Director and VP is rather tiny. This doesn’t mean that transitioning from one job to the other is easy, it’s shown like that only because I had to group those jobs visually within the L9-10 box.
There’s one exception: you’ll see that Staff SRE is represented to the left of Staff Engineer, this doesn’t mean that the Staff SRE role requires fewer soft skills. The requirements for both roles are equivalent, it’s just that I had to represent them side by side.
Lateral moves are also possible
A lateral move in a career is when someone stays within the same career level or seniority and decides to go on a different craft.
Within the L5 box, I represented lateral career moves: the change of career scopes that happen within the same career level. For example going from Senior Engineer to Product Manager, Engineering Manager, etc.
I did not represent lateral career moves past L5, just so I wouldn’t overcomplicate the map. Those lateral moves are possible, for example going from Director of Tech to Director of Product, and similar transitions.
In my experience, I’ve seen that it’s mostly people in tech roles who go to product roles, and rarely the other way around. If you think about it, that’s not surprising: acquiring deep technical skills later in one’s career is increasingly more difficult.
Another reason why you’d want to consider a lateral move is if you’re in the individual contributor track and you find yourself stuck. Below are two interesting comments I found on Blind, from employees of Facebook and Google.
Downwards moves are sometimes necessary
There are also possibilities for individual contributors to switch to the management track at some point.
They have to accept to be “downgraded” one level down, sometimes two levels down, so they have responsibilities that match their level of experience in terms of management and process skills. I didn’t represent such transitions on the map, to avoid making it more complicated for nothing.
Generally, they start by leading a single team of 3-6 individual contributors, and if things go well, they’re offered a job title within the managerial career path, and given a shot at managing bigger and bigger organizations.
Tech breadth vs. tech depth
You’ll notice that Director of Tech is above Senior Engineering Manager on the hard skills dimension.
I chose to put it above, because there’s a moment when leading larger organization that one has to own many more functions and types of tech assets, simply due to the increased scope. And to be up to that challenge, one has to increase their tech knowledge and skills in terms of breadth quite significantly.
Depth means being an expert and knowing a lot about one thing, and breadth means having a good overview of everything that’s out there, knowing the basics about them and how they fit together.
So I decided to place that need for more breadth between Senior Engineering Manager and Director of Tech, hence why Director of Tech appears above on the hard skills.
And of course, don’t take this as absolute truth, it’s just an opinion I’m putting out there. It will depend mostly on what the scopes of those two roles entail locally, within the organization where you work.
There are more jobs out there
I couldn’t possibly represent all tech jobs and all career paths on this map, so I had to choose the most common ones.
If you want to learn about what are other possible career paths from the role of Senior Engineer, for example Technical Program Manager, Developer Advocate, and so on, then you should check out my other article: Career Growth: What Paths After Senior Engineer.
A career in product is also a good option
I’ve added a product career progression to the map, and I decided to represent the product jobs very close to the tech management jobs. This is because those roles are very similar in terms of seniority and progression, they just happen to require different hard skills.
I’ve represented the tech path always a bit more to the right, meaning higher soft skills needed, because the tech path requires deeper structural skills sooner compared to the product path.
In my experience, tech leaders have larger organizations reporting to them sooner in their careers compared to product leaders, and they have to deal with organization and people problems sooner, which requires developing such skills to be effective.
How many years in each job?
There are no rules for how many years maximum one will have to spend in a job in order to get to the next. It all depends on the individuals, the luck they have with opportunities showing up at their doorsteps, how much risk they’re willing to take, how quickly they’re able to learn the skills they’re missing, and so on and so forth.
Lateral moves within L5 can take you as little as six months, and up to two years.
After that, each transition from one job to the next is likely to take you three to eight years. This means for example that transitioning from a Senior Engineer (L5) to a Director of Tech (L7) will take you about six years in the best-case scenario, and up to around 18 years. There’s still a possibility that you never make it to that position.
One way to try and speed up this process so it doesn’t take three to eight years is to join a scale-up with high growth—a scale-up is a company that grew from a start-up to a larger size and which has some capital in the bank.
These scale-ups, through their growth, often have to grow their headcount 1.5-2x every 18 months, which means there’s a lot of opportunities to grind that wave and grow with the company. This does mean that you have to find the right companies to join, which can be difficult if you’re rather inexperienced, however that’s still a valid option to speed up your career progression.
Job titles and levels may vary across companies
The roles of Staff, Principal, and Architect are used differently in different companies and can mean the same or different levels. Some companies don’t have the role of Staff, they go from Senior directly to Principal.
If you look at the compared ladders of Google, Amazon, and Microsoft, you’ll also notice that for example the job title of Principal Engineer corresponds to different career levels and also are ranked differently.
Similarly on the managerial path, for some organizations, a Senior Engineer Manager is an Engineering Manager with a single team and the “Senior” denotes that the person has more maturity in the role. And for other organizations, the role of Senior Engineer Manager means managing several Engineering Managers, which some organizations are calling Director.
You’ll also notice that beyond the L5 box, all other boxes do not relate to a single level, but rather a range of levels. This is to account for the fact that there is variability in how those jobs are mapping to career levels at various companies.
If you’re interested in learning more about the day-to-day activities of those jobs, then check out my other article about senior developer career progression.
I previously shared about the difference between hard and soft skills in tech careers, and in this article, I’ve mapped how the career paths for senior engineers are mapping to those two skill dimensions.
Another great resource is the website progression.fyi, which centralizes the career progression framework at various tech companies.
In a future article, I will list the skills that, based on my experience, I consider the most important—and sometimes the most underrated—and I will share pointers on how you can learn and make progress on each of them.
Wanna be the first to know when this article is out? Join my mailing list, see the form below.