This document goes over each level you need to be aware of, as well as the technical and people expectations behind them.
We suggest using the document in two ways:
Form a conviction for your level
As we discussed in the homework for Communicating Signal, you'll want to go over these levels, and get a sense of where you stand. You should have examples from your experience that match the description in these levels, and give you a strong sense of where you are at in your career.
Get a sense of the compensation ranges
For each level, we've included the alternate names that most companies use. Go on levels.fyi, and take a peak at the compensation ranges for the companies you are aiming for. When time comes to communicate numbers to your recruiter, having accurate knowledge and concisely conveying it, signals strength and experience.
- Alternate names: E3, L3, SDE 1, IC 1
- Experience Range: 1-2 years
The New Grad level is given to people who join right out of college. This is often the only time where companies assign this level. If this is not your first job search, carry on to the level above.
You complete tasks defined by others with speed, resourcefulness, and proactivity. The tasks you take on are often guaranteed to have a solution, and can be done within a week or two.
You can take ownership over these tasks and deliver them on time with little guidance. To do this, you use a combination of your technical ability: navigating the codebase, debugging, and your resourcefulness: researching, reaching out to people, asking for help with clear questions.
The main people dimensions at this level is how you handle feedback, and how proactive you are.
You learn quickly and are constantly searching for feedback. When you get it, you take it positively, and look for tangible ways to improve.
When a task is confusing, or you reach an impasse you don't know how to solve, you demonstrate positivity and proactivity by asking for help, and remaining confident in your ability to complete the task.
You communicate well, and are proactively updating everyone around you about the timeline for your tasks when it changes.
Live Leveling Guides
- Patreon Leveling Guide: See "IC 1" for the lower range, and "IC 2" for the higher range. You can ignore parts in IC 2 that involves supporting others (giving feedback to others, giving code reviews etc)
- Khan Academy Leveling Guide: See "Beginning Skillful" for the lower range, and "Skillful" for the higher range. You can ignore parts in Skillful related to breaking down complex tasks and supporting others
- Alternate names: E4, L4, SDE 2, IC 2
- Experience Range: 2-5 years
The Engineer Level is a large band that ranges from highly productive new grads with a year's worth of experience, to people with 4 years of experience who have shipped significant products.
The theme for this level is high individual productivity. You ship large projects and features, but don't yet own responsibility for your team's outcomes.
You can own large features, which can require more than a month or so of work. You are able to break up the project into many tasks, and complete them with little guidance.
You are highly effective as a coder. You consistently write code that's cohesive and maintenable. You proactively own and fix the codebase, whether it's upgrading to modern frameworks, adding tests, or refactoring confusing pieces. You demonstrate high throughput -- within your team, and perhaps the org, you may have one of the highest number of commits or the highest number of features shipped.
You give great code reviews to peers and junior engineers. You are a great mentor on the craft of engineering. You have learned how the organization works -- from how products get shipped, to what to do if something breaks. You know how to work well with PMs, managers, and tech leads. You can use that knowledge to join any large initiative and produce quickly. People are often very thankful when you join a project.
Live Leveling Guides
- Alternate names: E5, L5, SDE 3, IC 3
- Experience Range: 5+ years
The Senior Engineer Level is the terminal band for most engineers. This means that at this level, you are are a capable, strong engineering leader, and can stay at this level for the rest of your career if you so choose.
The theme for this level is team leadership. You are a strong, saught-out technical leader, and a mentor amongst your team. The most key separator for the senior engineer from the levels below is a deeper expectation on the people dimension.
You own initiatives that can take six months to a year to complete and involves multiple people. You have deep, sought-after expertise in a technical domain and have a track record of leader large projects well. You can take large problems with tight deadlines, work cross-functionally across teams, create specs, divide up the work, and drive your team to deliver. You have demonstrated this multiple times.
You own the success of a significant system. You often find ways to improve that infrastructure, and build out initiatives that get the whole team on board. The work you do often influences other teams to improve their product as well.
As a technical leader of the team, you are a strong partner to your Engineering Manager and a mentor for others. You may take on aspects of engineering management or product management, from leading standups to communicating progress, to hiring. You know how to work throughout different organizations to align and unblock large projects, and have done that multipl times.
You work with your engineering manager to make sure people are developing well on your team, and often step in to mentor some of them to improve. You constantly work to make people around your productive and content -- from introducing new best practices, to making development more ergonomic.
Live Leveling Guides
- Alternate names: E6, L6, SDE 4, IC 4
- Experience Range: 7+ years
The Staff Engineer Level usually makes up less then 10% of the engineering team. The theme for this level is organizational leadership. You are a technical lead that takes over ownership over a suite of systems, and influences organization you are a part of. The key separator for the staff engineer from the levels below is scope -- from team ownership to org ownership.
You own a suite of systems, and drive long-term initiatives to keep them impactful and maintainable. You can break down large problems into multiple systems that a team could work on. You often detangle and work on the hardest parts of these systems. You own problems that often involved coordinated, phased changes to different systems.
You have experience taking systems from conception to production -- from idea, to buy-in, to specs, to alignment, to comms, legal, and so forth. You have excellent communication skills, and can navigate throughout multiple orgs to find alignment and launch.
You influence the engineering direction of your org. You are aware of the trends in the industry, and work proactively to keep your org well positioned.
You can mentor senior engineers, and are a strong partner to multiple leads. You are a culture vector for your teams, demonstrating the kinds of values that make an exceptional team member.
You champion the people around you, and constantly work to make the whole org more effective. You take part in re-org discussions, take ownership over hiring, and the larger direction for the org. You look ways to multiply your impact -- this can involve writing, introducing new tooling, to setting up brown-bags.
Live Leveling Guides