So You Want to be a Big Shot: Advice on playing the promotion game
davidreiscto.substack.com
davidreiscto.substack.com
Maybe not bad advice, just ineffective in any mature industry where promotions are typically internal, changing jobs will almost never land you into a more senior position - unless you are really, really good at CV stuffing and bullshiting your way through interviews - and leaving will usually "reset the clock" you accrued on the internal promotion ledger.
It this, more traditional setting, promotions are a power game and managers use promotions strategically to increase their own power in the company and gain allies. This means that you have a cooperation-competition relationship with your own manager: he either levels up and drags you too because he wants loyal people around, or he sees you as a potential competitor his own boss might promote into lateral teams that will then suck his resources. Knowing where you find yourself in this game, who are your allies, what does upper management want and how can you fulfill it and gain their confidence are the keys.
The first step to get promoted is to understand the promotion process of your current company, if they have a formal one. It took me one year to learn how promos work in my current company, and that was one whole year of progress lost.
Then if you really want to get promoted fast, you need to optimize to meet the promo criteria. Often that is in line with OP advice, sometimes it is against it. And above all, learn about scope, impact and visibility. Also learn about optics and politics. Sadly often promotions are not so much about your accomplishments, but how you present them and how people perceive them. The old advice of "work really hard and you will be rewarded" is moot if the right people don't know about it. Some people get promoted faster by doing less but promoting themselves harder and louder.
Even if you don't want to exactly game the system, it is still useful to know how it is played. For example, if you accomplish some extraordinary, spend a bit of effort letting higher ups know about it.
This gets repeated all the time, but it’s easy to overdo it.
It’s true that you’re not going to get promoted if you don’t meet the promotion criteria, so you have to meet the criteria if you want to move up.
However, I’m seeing more and more juniors who think promotion criteria are some game they’re going to min-max, and that I have to promote them if they check certain boxes. They do weird things like ignore their assigned work and spend all their time working on a high-visibility side project, or ignore the way work is assigned and try to do only the things they see as promotion-worthy. Or other times they’re just difficult to work with, unliked by their peers, and avoided by people who don’t want to deal with their politics. Then they can’t understand why we didn’t promote them to team lead despite their work on that one high-profile thing earlier this year.
If you play it too much like a game, it’s obvious and starts to backfire. If you go fully cynical on the process, it’s almost guaranteed to backfire. I’ve seen some people included in layoffs mostly because their constant promotion-seeking competitiveness turned into pervasive toxicity and everyone was looking for the first opportunity to remove them.
Maybe at some companies the pure game theory mode works out, but you have to build relationships and be a good person to work with. At some point, the “game theory” approach just looks like “do a good job and make relationships in the process”.
Last year an engineer in my org got promoted to Senior Staff. In order to get there he alienated and burnt out many other engineers, including me.
But guess what? he got the promotion, which is what he was gunning for, and he only alienated his peers. Leadership still support him and think he is a genius (BTW for doing things like taking credit from others). Also he seems to have chilled down a lot since the promo, so if you only interacted with him afterwards you would have a very different opinion of him.
There is this idea that tech is a small world, your fame will precede you and such, but in practice I have seen the opposite. It seems way too easy to outrun your mistakes, either by changing teams or companies. I guess that is why it is relatively common to switch companies right after a promo. I have seen not so brilliant people greatly exaggerate their accomplishments and jump to greater highs.
They say that you can't fool all the people all the time, but that framing is wrong. You only need to fool the right people long enough. And in tech, long enough seems to be 2-3 years, after which you can jump ship and rinse and repeat.
I don't know about your company, but in mine executives never get fired. They always "leave for new and exciting opportunities" or "to spend more time with their families". I remember reading an article from an entrepreneur saying that a high % of executive hires are duds, but this is often kept under wraps to save face for both the company and the executive.
Bottom line, min-maxing your career progress *can* backfire, but statistically you'll be ahead by doing it than not. And you can minimize the downside by outrunning your mistakes, moving to other teams or companies (this applies less with the current job market).
Exactly! Do a generally good job; don't be an asshole; read the promotion rubric, but don't read it every day; it's far more important to understand what the strategy of your team/org/division is and work towards that.
Sometimes it doesn't work out. You either fail to deliver because it was too challenging or the company changes direction. And even then you still learned some new skills. But when you succeed people notice. And then you go out and talk about what you did and people outside of your company notice too.
I don’t mean to be cynical, or throw cold water on anyone’s ambitions, but I do want to add a different perspective here for those that care enough to read on.
I entered the professional software world at a time when there simply weren’t enough people building software. There was an extremely high priority on “bringing people up” throughout the industry. That didn’t change for decades.
But today there are approximately the right number of folks doing this work; still too few but the scarcity of candidates is far worse in other industries. Frankly, an electrician may have better long term prospects as far as I can see. But more importantly, this industry has matured and the focus is more “normal” (market adjacency, efficiency, risk reduction, globalization, benchmarking, etc). There is plenty of opportunity still, but also less.
In addition to that “cheerful” opinion, I’ll offer that I (to some degree) regret moving “up” so quickly. I missed opportunities to become truly expert by taking on new roles. It all worked out okay, but didn’t do much for my imposter syndrome. And, it kept me in positions working for others when I (looking back) would have done better financially and felt better about it had I pursued my own path (entrepreneurship). Hence, being here on HN and paying attention to YC.
Perhaps just normal regret from perfect hindsight? I believe doing a startup was easier in the past than now because there were more opportunities and less competition. Now a software startup is more likely to be in a crowded market - or if you do find a unique niche others will quickly copy? Still plenty of opportunities but maybe start in a niche?
> > I missed opportunities to become truly expert by taking on new roles.
Great technical skills in narrow areas are not that useful in a founder. Jumping in the deep end and soft-skills and solving problems without help are more useful: and your career sounds like you got more of that.
I suspect your career path has left you with a far better ability to found a startup than you think. The only block is that we get conditioned to working in a large company and changing gears is hard. If you had the personality to succeed in a startup, you can still do so.
Maybe unwanted advice and I've only really had experience in my own startup so perhaps not helpful! I would also suggest avoiding VC - VCs select for certain types of failure that you don't want. Also you will always lose (extremely assymetrical game with long term players - the field and rules are also biased).
Super Senior. Super Senior II. Hyper Senior II Turbo. Super Senior: Ultra Instinct.
And you missed Championship Edition.
Guile still slaps
It's just a reality that promotions are limited and not guaranteed, and that reality becomes harsher the higher one climbs.
Also, many people don't want the leadership and organizational responsibilities that come with being promoted higher (less coding, more politics, less working by yourself, more working through others' hands, etc.)
How do you arrive at this conclusion? “Under 30” but old enough to have graduated college leaves only ~8 years of career. Unless you think the majority of devs are retiring before the age of 45-50, this doesn’t make sense at all.
I think you might be in a bubble with a lot of young devs, but it’s a big industry out there. Devs don’t just disappear or retire when we hit our 30s. They’re probably just at different companies.
This piece is to help people be marginally more effective and be one of the ones that gets it.
PS: your question assumes stable demand for software engineer, but I'm completely uncertain whether it will grow stay flat or disappear. It all will depend on how AI goes, as well and overall economic development and digitization of the economy.
Architect is a different role than a dev, assuming dev means programmer/coder/software developer/software engineer.
Manager is a completely different career path.
No every dev wants to change their role into a non-dev. Some will, some will and will end up going back.
> There just aren't enough senior jobs
Well the job will change. New teams, products, companies will come and go. No one stays at one company anymore -- okay that may be an exaggeration but very rarely do you see one person working a single job in this industry for 20-30-40 years anymore.
It's about scaling yourself through others, and not everyone wants to do that, and that's OK.
The engineering ladder is one of the worst things to happen to this industry. Sometimes cross-team is the easy stuff, and solving some deep technical issue has the most impact.
People here hate leetcode and IQ tests but they are far better filters than "job level" where I've seen many principal engineers failing to write basic code.
When I'm not doing that, I'm working on deep technical issues, but I already did that as a senior/tech lead.
We’ll probably just pay them more.
TLDR: Team selection is 70% of it.
1. Find team with high turnover, overall low tenure. Avoid high tenure teams at literally all costs. The politics will be high, and there will be a line to get promoted. Try to figure out if someone is being primed to be promoted. Do not join the team if this is the case.
2. Further filter for teams that are somewhat business critical, legacy tech, and are failing all of the time.
3. Unfortunately, this one is very important. Find management that looks like you, was educated like you, and overall is very receptive to you on first interaction. DO NOT DOWNPLAY this. People at FAANG promote based on natural affinity.
4. Understand the parameters to get promoted, notify your manager of your intentions. DO NOT TRY TO INNOVATE. Hit all deadlines right on time or before. NEVER take on extra projects before hitting the deadline, removing all extra work, only ever work on tracked tasks with documented high profile outcomes.
5. Do this for 2-4 years, if you havent got promoted by then, leave.
So avoid working with people that can teach you things? That’s not a great plan.
If not for my role as a fresh out of college QA person working in a team of 6 deeply expert, very senior folks (with essentially zero turnover) I would absolutely not be where I am today.
I’m sure there are all sorts of cynical strategies that are more effective for getting promoted, but if you love programming then putting the love into your programming will probably work out alright for you.
all that energy wasted learning and playing faangesque promotion monopoly.
that energy could have been spent passionately learning and building cool stuff.
stuff that doesn’t just look good on the packaging, but is actually good.