Meta (a.k.a Facebook) has very well established structure and levels for Software Engineers. Levels are starting from E2 Intern/Student but for purpose of this post we will focus on levels from E3 to E9+ which are for fully qualified engineers.
We will cover briefly what one could expect from each level.
- E3 - Software Engineer ||
- E4 - Software Engineer |||
- E5 - Senior Software Engineer
- E6 - Staff Software Engineer
- E7 - Senior Staff Software Engineer
- E8 - Principle Engineer
- E9+ - Distinguished Engineer
Complete individual tasks without much guidance. Deliver good quality code, test, documentation. React well on constructive feedback. Unblock yourself or with the help of another engineer.
You work on projects delivering whole features. You own the technical specification, collaborate with other teams to deliver. You are mostly independent. You help your colleagues through code reviews or providing constructive feedback on technical decisions.
You own a problem space / project end-to-end. You are expected to create scope for yourself and others in the team. Driving technical alignment and collaboration across functions and teams. You help other engineers grow through mentoring and coaching. You set and maintain the quality bar for the team. You can drive and deliver through others.
Yow play a critical role in setting the direction and goals of the team. You are involved in roadmapping, scoping work and managing technical problems spanning outside of the team influencing the organisation. You are the one that deals with the hardest problems. You can cover for missing PM or EM in the team if needed. You advocate for high quality and engineering excellence.
Different tracks and Archetypes focusing on breadth or depth in terms of technical complexity. Working on large programs spanning multiple teams and orgs. Setting organisational direction of a large problem. Involved in building high performing engineering teams and organisations.
Industry expert/leader. You have impact beyond Meta into an industry or specific technology area. You are very passionate about an area and champion it. You drive technical, process and cultural changes to help the company move fast. Pursuing many difficult incremental changes instead of just building new/shiny. You are a great coach.
You are heading a whole organisation. A core product of Meta. You are seen as a CTO of the area able to drive through all of the layers independently and dealing with problems that few other can.