Why is Senior to staff such a step change for a software engineer in a product company/department?
To be honest, before 2020 aa a software engineer, I spent my entire career working in unknown companies with no real leveling guidelines.
I fell into my only role in BigTech as an L5 (mid level) cloud application architect at AWS Professional Services in 2020 and now a Staff Software Architect (5th and highest IC) at a smaller consulting company.
The leveling guidelines for a “staff” where I am now are about the same as a “Senior” at AWS ProServe or a similar position at GCP
That being said, the leveling guidelines at AWS for my department were straightforward
- L4 junior - expected to be able to complete tasks/storues with little guidance
- L5 mid level - expected to be able to complete work streams and lead a work stream where the business requirements are well defined. But the technical requirements aren’t and you work with the customer to complete the requirements. You were expected to be a subject matter expert in one or more verticals.
- Senior - more ambiguous - neither the business or technical requirements are well defined and you have to work with the customer to discover the business problems/opportunities, define strategies and then plan an implementation and coordinate multiple work streams with the project manager, customer, etc. They could also be over multiple projects.
I’ve had one offer as a staff engineer for a product company (as oppose to a consulting company) at the company that acquired the startup I worked at before going to AWS. I would have been over strategy for all of the acquired companies.
I ended up turning it down. I understood the requirements of operating at that level in cloud consulting. But not product development. The technical requirements didn’t bother me as much as the organizational requirements.
To be honest, before 2020 aa a software engineer, I spent my entire career working in unknown companies with no real leveling guidelines.
I fell into my only role in BigTech as an L5 (mid level) cloud application architect at AWS Professional Services in 2020 and now a Staff Software Architect (5th and highest IC) at a smaller consulting company.
The leveling guidelines for a “staff” where I am now are about the same as a “Senior” at AWS ProServe or a similar position at GCP
That being said, the leveling guidelines at AWS for my department were straightforward
- L4 junior - expected to be able to complete tasks/storues with little guidance
- L5 mid level - expected to be able to complete work streams and lead a work stream where the business requirements are well defined. But the technical requirements aren’t and you work with the customer to complete the requirements. You were expected to be a subject matter expert in one or more verticals.
- Senior - more ambiguous - neither the business or technical requirements are well defined and you have to work with the customer to discover the business problems/opportunities, define strategies and then plan an implementation and coordinate multiple work streams with the project manager, customer, etc. They could also be over multiple projects.
- staff - over multiple seniors, usually a team lead and they deal with strategies over a practice (https://aws.amazon.com/professional-services/)
I’ve had one offer as a staff engineer for a product company (as oppose to a consulting company) at the company that acquired the startup I worked at before going to AWS. I would have been over strategy for all of the acquired companies.
I ended up turning it down. I understood the requirements of operating at that level in cloud consulting. But not product development. The technical requirements didn’t bother me as much as the organizational requirements.