The Senior Shift
In most tech companies, the first few levels of an engineering career ladder are pretty straightforward. You must grow from someone who needs a lot of oversight to an independent engineer. You need to develop your best practices and have evidence that your code is of high quality. You build and eventually take ownership of bigger and more complex things, and show that you are capable, independent, and trustworthy.
At this point you have hit what most companies (whether they admit it or not) view as a terminal level or career level. This is the level at which “up or out” ceases to matter. You can’t stay an entry-level engineer for years, but at some point there is a level that will have engineers who span the gamut of experience, from, say, 5 years in the workplace to 20 or more. These engineers are a core part of any company and highly valuable as independent actors who can lead projects and deliver a lot of solid code. I’m going to call this level “senior engineer” for the purpose of this piece, although it might actually be anything from “senior engineer” to “staff engineer” to “some obscure level number engineer” depending on the company you work for and their level system.
Now, here’s the wrinkle. Getting to this level tends to be a straightforward progression of skill accumulation and demonstration. You become a better programmer, you work faster, you get more done, you work on bigger projects, you get promoted. But past the terminal level, things start to look different. Yes, there are new skills that you need to develop. Project management, broader influencing skills, often some product sensibilities. But the real difference that companies are looking for is not that you are capable, but that you have demonstrated those capabilities by delivering impact. It’s not enough to have the skills, you have to deploy them to produce something of value to the wider group. In fact, while companies may put language about increasing expertise in their engineering levels, the real lens that they use to evaluate that expertise is through increasing scope of ownership, delivery, and impact.
This is frustrating for some senior engineers. They know that they have the skills to perform at the more senior levels. They are better programmers, in many cases, maybe even better system designers. They look up to see people they believe are not as good as they are in more senior roles and start to think, this system is broken!
But the truth is that the person is in the senior role because at some point in the past they had the opportunity to demonstrate impact at a more senior level and they did it. This might have been a matter of pure luck, they were on the right project at the right time to be part of something big. It might be, on the other hand, that they were hired in at that more senior level. This is the backdoor for this system, and the reason that so many people are able to get higher titles by switching companies; the rare time you may be evaluated on potential instead of proven impact is in the hiring process, which also has a negotiation element to it that is absent from promotions at tech companies.
Either way, it is important to realize that these more senior levels are not a measure of betterness, or quality, or raw intelligence and technical skills. They are instead a measure of demonstrated impact and confidence in the scope of work that the person can be tasked to accomplish. The people who get these promotions are trusted to navigate the systems of the company, to understand what is valued by the people around them and where to spend their time, because they have done just that.
There are many flaws in this system. Better project opportunities lead to more chances to demonstrate impact and earn promotions, and we know that opportunities are not evenly distributed in most companies. The types of people who can confidently interview to get that level bump are often also beneficiaries of bias in their favor, and if that isn’t the case, it sure sounds like you should just switch jobs if you want to become a more senior individual contributor (which, yes, I would tell you to do if you are really frustrated internally and unable to find the opportunities to grow).
So yes, there are flaws in this system, as with any system. But now you know that demonstrating skills through impact is the goal, and this knowledge can guide you to look for the right opportunities in order to unlock that promotion you have been missing. No one is more in charge of your career than you, reader, and knowledge is the key to navigating it. So don’t get hung up on why someone else, someone you think is a total bozo, is more senior than you are. Use it as a sign that if they can get there, surely you can get there too. Focus on finding those opportunities to show impact, not just the hardest technical problems you can find, and I bet you’ll have an easier time finding your next promotion.
Enjoy this post? You might like my book, The Manager’s Path, available on Amazon and Safari Online!