Engineering Ladders
A free, open source framework by Jorge Fioranelli that describes what each engineering level expects across five axes: technology, system ownership, people, process and influence. Radar charts for developer, tech lead, technical program manager and engineering manager roles make the gap between your current level and the next one visible. Useful for preparing a promotion conversation or writing a case for someone else.
8.5k
GitHub · Sept 2026
597
GitHub · Sept 2026
Apache 2.0
GitHub · Sept 2026
November 2022
GitHub · Sept 2026
Cheat sheet
Career Growth
Jorge Fioranelli
An hour
All
Free
How the framework works
The framework was written so that engineering managers and their reports could have concrete conversations about expectations. It defines four ladders:
- Developer, levels D1 to D7
- Tech Lead, TL4 to TL7
- Technical Program Manager, TPM4 to TPM7
- Engineering Manager, EM5 to EM7
Level 4 and above count as senior. Each position is drawn as a radar chart across five axes, and each axis has five steps, where every step includes the ones before it:
- Technology: adopts, specializes, evangelizes, masters, creates
- System: enhances, designs, owns, evolves, leads
- People: learns, supports, mentors, coordinates, manages
- Process: how deeply you engage with and improve the team's way of working
- Influence: how far your impact reaches, from your team to the whole company or beyond. It applies across the other four axes.
There is also a page comparing tech lead and engineering manager roles, which is one of the clearest short explanations of that difference.
Why the multi-dimensional view helps
Engineers tend to think of seniority as a single number, which makes promotion feel arbitrary. Splitting it into axes exposes a common situation: someone strong on technology who is stuck because their system ownership or influence has not grown beyond their own tickets. That is a specific, fixable gap rather than a vague sense of being overlooked.
How to use it
- Plot yourself honestly on each axis, using the step descriptions, not your job title.
- Plot the level above and note which axes differ.
- Pick one axis to grow over the next six months, and agree concrete opportunities with your manager, such as owning a service's monitoring or mentoring a new joiner.
- Revisit before each review cycle and bring evidence, ideally from a brag document.
If your company has its own career ladder, use that first. This framework is a good proxy when there is none, and a useful second opinion when the official one is vague.
Limits to keep in mind
- It is a baseline, not a standard. The author says roles and levels are loosely based on the US tech industry and should be adjusted. Level numbers do not map directly to titles at other companies.
- It is stable, not actively changing. The repository's last commit was in November 2022, as of September 2026. The ideas have not dated, but do not expect new roles such as staff engineer tracks to appear.
- It describes expectations, not how to get there. Pair it with StaffEng or The Staff Engineer's Path for the senior individual contributor route, or The Manager's Path for management.
Common questions
Is it useful for juniors? Yes. D1 to D3 describe what growing from beginner to mid-level looks like, which helps you ask for the right kind of work.
Can a company adopt it directly? It is open source under the Apache 2.0 licence, and small companies often start from it and adapt the wording.
Does the Developer ladder stop at D7? Yes. In this framework, D7 is the highest individual contributor level shown.
Best for: engineers preparing a promotion case, and leads or managers who need a shared language for levels.
Ready to start?
Opens on Jorge Fioranelli in a new tab.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.
Follow along
New writing, resources and project ideas land here first.