The Developing Dev

Share this post

Staff+ Career Growth: Product or Infra?

www.developing.dev

Discover more from The Developing Dev

Filling the gaps for engineers who don’t have dedicated mentorship in 5 minutes or less. Written by a Staff Software Engineer @ Instagram
Over 21,000 subscribers
Continue reading
Sign in

Staff+ Career Growth: Product or Infra?

Ryan Peterman
Apr 7, 2023
14
Share this post

Staff+ Career Growth: Product or Infra?

www.developing.dev
7
Share

There are a lot of factors that go into picking the right team. Choosing based on what type of work you enjoy is important, but what about career growth? Let’s discuss how choosing a product vs infrastructure team will affect your Staff+ career growth.

Me at my first job after graduation

What’s the Difference?

Product teams build new user experiences. Engineers on these teams collaborate with product managers and designers to decide what to build and how it should look. These teams are often paced by product launch deadlines. Product engineers should be passionate about creating end-user value.

Infrastructure teams work on the underlying APIs and systems that product teams use. These teams are often engineering driven. Engineers on these teams should be passionate about the availability, efficiency and performance of the systems they build.

You can become a Senior Engineer on most teams in both product and infra. The differences emerge when you look at Staff+ Engineer growth.

Growing to Staff+

Staff+ promotion comes from completing projects of “Staff+ scope”. The industry quantifies this in a few ways:

  • Workstream size - Number of engineers involved and duration of roadmap

  • Complexity - Solving problems that the level below can’t

  • Impact - Wins should span multiple teams and achieve a significant portion of their goals

Infrastructure teams generally have more opportunity for projects that fit these criteria. This is because complexity and impact at this scale are more common.

Infrastructure work requires expertise in areas of high technical complexity (e.g. operating systems, storage systems, distributed systems, etc). They are difficult enough that engineers without this expertise cannot solve many of the problems that come up. This provides opportunity to solve problems that many engineers at the level below can’t.

There is also more opportunity to have impact spanning a significant portion of several teams’ goals. Infrastructure engineers build components used by many teams at the company. This allows their work to have leveraged impact since one change benefits all the downstream teams. This leveraged impact often fits the criteria needed to promote to the Staff+ level.

Now that’s not to say you can’t become Staff+ engineer on a product team. The common path is through leading a large enough workstream. The problem is that there are limited spots for a leadership role of this scope. There is much less opportunity to grow through your technical skills like you can in the infra domain.

What About Engineering Management?

Career growth for managers is often proportional to the number of recursive reports they have. This might change now that the industry is focusing on efficiency, but I don’t see this going away entirely. It also matters how tenured and impactful your reports are, but for simplicity, we’ll just focus on the number of reports.

Product organizations tend to have a lot more engineers. This is because of the inherent tree structure in how we build software. Infrastructure teams require fewer engineers since their components are reused, while product teams build unique, less reusable features. Since there are more engineers to manage, there tends to be more opportunity for engineering manager career growth in product organizations.

Generally more headcount at the top

While these general trends hold, there are exceptions. You should consider each career decision case by case. Mentorship is one of the best tools I know to help you make informed choices and is a key reason why I write this newsletter. Apart from choosing product vs. infrastructure, what other factors are important when deciding to join a team? Feel free to comment below, I’d love to discuss.

Join 2500+ software engineers who receive new posts and support my work

Thanks for reading,
Ryan Peterman

14
Share this post

Staff+ Career Growth: Product or Infra?

www.developing.dev
7
Share
7 Comments
Share this discussion

Staff+ Career Growth: Product or Infra?

www.developing.dev
Nico Wong
Apr 7·edited Apr 7Liked by Ryan Peterman

Loved this post. I believe I'm about to start an infra role, so I'm stoked! (I love systems.)

P.S. You are my favorite content creator in tech. I love the brand, Developing Dev -- it's so elegant in so many ways -- and, the post content is valuable and clearly expressed as bonus.

Expand full comment
Reply
Share
1 reply by Ryan Peterman
Ivan H
Writes The Software & Data Spectrum
Apr 7Liked by Ryan Peterman

Having a motivated nice fun team is pretty important. Not a big fan of having teammates that will constantly shout at each other and shut each other's ideas down. Having a motivated nice fun team can help with your growth as you can learn from each other and you're constantly learning with them.

Expand full comment
Reply
Share
4 replies by Ryan Peterman and others
5 more comments...
Top
New
Community

No posts

Ready for more?

© 2023 Ryan Peterman
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing