Getting promoted to staff eng


You have likely read about many journeys in getting the staff engineer title. I’m sharing my story for anyone that feels like they’re doing all of the right things but still struggling to get it and may even be feeling a little discouraged. My journey from senior to staff was a few years long.

TLDR

  • 2022: began promotion discussion with manager -> promotion packet #1 -> all promotions put on-hold (out of my hands)
  • 2023: moved from a feature team to design system team
  • 2024: promotion packet #2 -> didn’t get it
  • 2025: new manager, new feature team -> did everything I was doing in 2022 but also delivered a small side project -> promotion packet #3
  • March 2026: got it

the starting point

I first expressed interest in getting promoted in 2022 - at this point, I had been team lead for the team that owns core/high-priority features for a few months. Lots of visibility, super important. I had been a senior engineer for 3 years at the company. Even once I stepped away from being team lead, I was the technical point of contact to help refine upcoming projects with product managers and for features owned by my team. I led all of the documentation efforts on my team and identified codebase wide issues that I’d fix when I had time. I actively mentored other web engs - not just the ones on my team. I sought out working with native engineers, backend engineers, and architecture to keep solutions aligned.

I wanted to move forward on the IC path so I read Staff Engineer: Leadership beyond the management track where I realized I was performing as the “technical lead” archtype. My manager provided me with the company engineering rubric to review the expectations for each engineer level on the IC track. At the time, the next title was “Senior Software Engineer II” so that’s what I was pursuing. We identified the things I was already doing from that list and keyed in on areas to improve in to make a stronger case.

At this point, I had already talked to some staff engineers and was basically told to ensure my 1:1s were always about the promotion - so that’s what I did.

“When the manager thinks about you, their first thought should be ‘promotion’.”

I’ve never really liked drawing attention to myself but I figured I was already doing all of the staff-type work, I may as well make sure others know I’m doing it. Not just anyone either - technical leadership, specifically.

There was a part of me that thought I had it in the bag. While I couldn’t check off EVERY item listed for a Senior Software Engineer II, I could check off many. I knew what my strengths were as well as my weaknesses so I had clear goals set out.

Later, my manager thought I was ready. I felt ready. However, the company was not. Things were shifting at the company, things out of my control, including the budget, so promotions were put on hold. That happens, as I’ve learned. It sucks but you have to

Stay on track

I got more insight into what the process would look like once the promotion packet is put together. It’s not a decision that falls solely on my manager which makes sense. Essentially, other web eng managers and technical leaders needed to be supportive of this promotion. The thing was… I did have impact outside of my feature team… but it was more visible to other disciplines.

Ultimately, months later, we were past the shift in the company and I found out I didn’t get the promotion. I continued doing my part but probably with less enthusiasm. For a few weeks, I just started to assume it wasn’t possible. My manager suggested a couple things that could help for “next time” such as speaking up more at web eng meetings. I won’t lie - I thought some of the suggestions were silly when put next to what I was already doing. However, I knew I needed to remain flexible so I presented at the bi-weekly web eng meeting about something I am passionate about: the importance of documentation.

Changing teams

A short time later, my manager decided to pitch creating a new dedicated team to work on the design system React component library. It might’ve been inspired by my 1:1s where I consistently pointed out issues with some of the components but no one had time to fix them. 🤷🏻‍♀️ Maybe. Idk. Regardless, the team was created and my manager asked if I’d want to join it. Absolutely. I had been on the same team for 4 years so I was ready for new challenges.

In 2023, I joined a tiny team and immediately started fixing bugs and issues that I had identified long ago. Around this time, the engineering rubric changed again. So, now, I was trying to make sure I was aligned to the “Staff Engineer” column. A lot of the items felt natural to me - I had made connections with so many people at the company and knew who the subject matter experts were as well as how things worked in the org so it was easy to talk to anyone and collaborate on whatever needed to be handled. I didn’t need anyone to tell me what needed to be done, how to do it, who to talk to, when to do it… I just did it.

A tragic personal matter occured in mid-2023 so I stopped actively pursuing the promotion for the rest of that year.

Once I was able to catch my breath again, I was back into talks about the promotion with my manager. I resumed speaking at the web eng meeting. I consistently reported to the group what was being worked on in the component library and what they could expect in the future since I knew the impact of it as every web eng uses it. I don’t really like speaking for the sake of speaking, though, and my new work was keeping me busy so I didn’t present beyond that.

Eventually, my manager submitted another promotion packet in 2024.

Unfortunately for me, before I could hear back, my manager had stepped into another role so I got a new manager. During my first 1:1, I summed up where I left off with my last manager so she was aware of my pursuit of a promotion. A couple months later, I heard back that I had, again, not received the promotion. This was at the end of 2024 and I, still to this day, have no idea why I didn’t get it. All of technical leadership had approved it but even that wasn’t enough.

This was obviously frustrating and discouraging. I knew it meant I may just not get it at this company. After all, did I mention that no web engineer had actually gotten promoted from senior to staff? Any engineer above senior at that point had been hired as staff. So, yeah, this wasn’t looking good for me.

Eventually, I was asked if I’d be interested in joining a new feature team again as a team lead. Sure, let’s try that again.

However, once I was on the new team, I was made aware that I was not going to be team lead. I received no insight on the miscommunication but honestly, it’s not an official title at this company anyway so I don’t think it really matters who was referred to as that. I had been assured this would have no impact in a promotion, anyway.

New manager, another new team

When the team was first spun up, we were assigned an interim manager. We got our first feature where I came up with a solution to deliver the feature on time. Cool.

Shortly after we wrapped up that feature, the new, permanent manager was hired. During our meet-and-greet, I got to the point immediately.

I have been trying to get promoted, let me know what you think I should be doing.

Again, at this time, it’s early 2025. I had been at the company for 7 years and I felt confident in how I did things. I just needed to make sure this new manager was on board.

During my 1:1s I still sought out guidance from my manager on opportunities to make a stronger promotion packet. He pointed out that the most distinguished web engineer (principal engineer) had a board full of stories for himself that perhaps I should take a look at to get an idea of what needs to get worked on. As the most senior eng on a feature team - at this org, you take on a lot of the complex challenges and discussions so your time gets consumed leaving little room to work on anything else. I figured I could maybe look for a task/small project on the board that I could maybe knock out at the end of the quarter.

One particular piece of work caught my attention so I checked with the engineer to see if he had started on it yet - as he hadn’t, I wanted to take it off his hands. Research it and come up with a proof-of-concept. I created a spike for myself to get started and put it in the backlog. I delivered the proof-of-concept within that quarter and then went on to deliver it fully a few months later. It would’ve taken less time but I ended up having to spread milestones out for it since my focus had to be on my feature team.

Our team feature presented challenges that I won’t get into but I was pulled more and more into technical direction / decision making conversations as time went by. I saw a gap needing to be filled so I filled it. I was right back to talking to the native engineers and backend engineers. For some time, we didn’t have an architect working with us so all the tech lead engineers just collaborated to get the feature delivered.

As 2025 came to an end, I knew my manager fully supported my promotion and I had a good idea of what would be in my promotion packet. He started putting it together and shared it with me to see if I thought anything should be added. I had other staff engineers that provided feedback supporting it which made me feel even more confident about it.

march 2026

I hope it’s not discouraging to others that it took ~3 years to finally get the title. There is some luck involved regarding timing. I personally didn’t feel I was doing much more for the final promotion packet than the first. The side project may have put me over the line in the end because it was something I could point to where I wrote the objectives including how it’d benefit the rest of the web engs and it was clear I could managed a timeline on my own. So, that’s one thing I would recommend for others to try but I know it can be difficult if you’re on a feature team.


shout outs

I’ve been fortunate enough to meet some amazing engineers that helped me get here that I want to give a shout out to: