5 Things I Wish I Knew About Promotion as an Engineer

Rahul Pandey
Geek Culture
Published in
6 min readJul 21, 2021

Promotions are the most tangible marker of career growth, a formal recognition of your advancement within a company. They also generally come with more money, influence, and status, so it’s no surprise that promotions are top of mind for so many of us. I’ve gone through the engineering promotion process at several tech companies, with several success and failure outcomes. I’ve also seen the process as both a manager and high-level IC.

Here are 5 things about promotion that I wish I knew at the beginning of my career. Understanding these would have made me a better engineer, and as a byproduct, I would have been promoted faster.

Our careers will grow like these plants.

1. Promotions are about behavior, not output

The mark of a senior engineer is the capability to take a large, ambiguous problem, decompose it in a tractable way, and progressively de-risk the project through technical skill and collaboration. This is something that a junior engineer simply cannot do, no matter the time or effort they put in. The upshot is that a senior engineer is not simply a junior engineer who codes faster; the types of problems they solve are fundamentally different.

Senior engineers get promoted not because they write 1000s of lines of code, but because they design solutions which make it easy for others on the team to write the code, or (even better) prevent the code from being written in the first place.

The phrase “work smarter, not harder” is apt here. One of my former managers said that working extremely hard to achieve next-level impact is actually a negative signal for promotion: burning the midnight oil isn’t sustainable and implies that the candidate cannot tackle problems of larger scope.

One litmus test to gauge seniority is the question “How far in advance do you know what you’re going to work on?” A junior engineer is probably working on some bugs or a small feature which will keep them occupied for several days. A mid-level engineer may work on a feature for a few weeks. I’d expect a senior engineer to know what they’ll broadly work on for several months. The most senior engineers will define what they’ll work on, and define the roadmap for their whole team.

The key to promotion is not necessarily increasing your output, but building the muscle of tackling problems of larger and larger scope. This requires technical depth + expertise, but also something else: strong relationships with your peers.

2. You need to invest in relationships

Peer feedback is a core part of any promotion packet. As a result, you need to actively spend time cultivating relationships and ensuring that people recognize and enjoy your work. If someone writes about how you’re unresponsive to their messages, neglect action items from meetings, or ignore their feedback on code quality, your chances of promo will be shot.

In risk-averse companies (such as FAANG), promotions only happen with unanimous agreement — why would the company want to promote you if it could hurt team morale, or worse, lead to higher turnover due to ruffled feathers?

Especially as you become more senior, when most of your impact will be delivered through others, there’s simply no way to succeed unless you have strong relationships. It doesn’t matter how amazing your coding skills are, you need to make sure your peers say glowing things about you.

One important part of getting positive peer feedback is the marketing aspect. Through status updates, regular meetings, and announcement posts, your work and its impact should become obvious. Earlier in my career, I viewed this as political grandstanding, but I view it much more positively now for two reasons:

  1. If your work is truly adding value, then the status updates and announcements will be welcome. Err on the side of over-communication: it helps both you and your team!
  2. Your regular updates let you acknowledge the contributions from your teammates + XFN partners, which is important for healthy team relationships.

Another easy way to get glowing feedback is to identify and mitigate a pain point shared by many people on the team.

3. Spend time identifying problems

I used to think that engineering is purely about finding the optimal solution. Now I know that the best engineers actually identify the highest-leverage problems in addition to identifying various solutions. In fact, one trait of a senior engineer is the ability to define your own work instead of having concrete tasks defined for you (shifting from reactive to proactive).

Earlier in your career, you may not yet have the trust or freedom to propose new projects based on problems you identify (these decisions may get decided at quarterly or half planning). Regardless of your level or tenure at the company, though, there’s always an opportunity to improve processes or tools on top of your main project. In a high-growth tech company, I promise you there will always be room to improve things — what worked last year probably doesn’t work as well anymore 😇

You could be the person to fix unit test flakiness, improve the documentation to onboard new engineers, or fix small UX bugs in the product. These tasks lead to undeniable team impact, and your initiative will build trust to tackle larger projects later.

In fact, one of my most impactful projects at Facebook started as a personal hack to automatically extract useful info from bug reports. Within 6 months, the majority of engineers in the org started using it, and this tool played a big part in my promotion and peer recognition.

Identifying problems with tools or processes is nice, but you can also identify problems with yourself! The best way to identify your growth areas is through feedback from the people around you.

4. Solicit feedback and act on it

I’m operating at the next level, but I’m still not getting promoted. Why?

You’re not getting promoted because there is a (perceived) gap in your performance, and you’re not aware of it. The way you get clarity about the gap is through actively seeking feedback. This process starts with your manager, but should also include senior people who are at a higher level than you.

Many companies have a structured way for you to receive regular feedback, but if it doesn’t, you can run your own version. Every few months, I schedule a 1:1 with key people to have a dedicated feedback conversation. I communicate the agenda in advance to give the other person time to reflect, and to avoid wasted time in status updates. These conversations should be awkward.

When you give others permission to give you constructive feedback, you’re much more likely to hear it. It’s easy to be defensive when you hear something negative, but it’s essential to hear the feedback and actually process it. Then work with your manager to identify what projects or behaviors will demonstrate how you’ve addressed the concerns.

5. You can switch jobs for a “promotion”

You’re not beholden to your company, so you should feel empowered to switch jobs if you don’t see an opportunity for career growth. I know of several people who came into a new job at a higher level than their previous role. The harsh reality is that no process is completely fair, so a difficulty with promotion may be the company’s fault more than your own:

  • As we talked in #2, perception matters. If your manager is unsupportive, or you have a strained relationship with influential people in the org, your promo case will be much harder.
  • Promotions are a combination of you operating with larger scope, and a “business need” to have someone at that scope. You likely don’t have control over the business needs.
  • Companies are generally risk-averse with promotions, and you have very little leverage if you’re already employed. Sometimes the easiest way to advocate for yourself is to get another job.

Final words

I’ve had my fair share of ups and downs with getting promoted as an engineer. The specifics about the process will depend on where you work, but I truly believe the 5 points we covered will be a helpful framework to optimize for promotion, regardless of company size or geography.

If you’re interested in a live session + Q&A where Alexander Chiou and I talk more about promotions in the tech industry, join us on July 21 for a session with our Tech Career Growth community. Wishing you all lots of promotions in the future!

— — — —

Thanks to Girish Patangay, Siriwong Wongthongserm, and Alex Chiou for discussion + inspiration of many of the ideas in this article.

--

--

Rahul Pandey
Geek Culture

Founder at joinTaro.com + youtuber: https://youtube.com/rpandey1234. Android Eng at @Facebook, formerly @Pinterest. Stanford CS Lecturer.