The pathway
How you actually get there, here
How you become one varies far more by country than what one does. This is the UK route. Most people take one of these ways in; the right one depends on where you're starting from.
- 1
Mid-Level Software Engineer (Internal Promotion)
2-3 yearsSkills to master
- Consistently delivering features independently, taking ownership of smaller projects, providing constructive code reviews, and proactively identifying areas for improvement in the codebase.
You're ready to move on when
- You're regularly taking on tasks of increasing complexity without significant supervision.
- You're seen as a reliable go-to person for specific technical areas within your team.
- You're actively participating in design discussions and offering thoughtful input.
- You've started informally mentoring new joiners or less experienced teammates.
- 2
Senior Software Engineer (External Hire)
5-8 years total experienceSkills to master
- Demonstrable experience leading technical initiatives, designing scalable systems, strong mentorship capabilities, and deep expertise in a relevant tech stack.
You're ready to move on when
- You have a strong portfolio of projects where you've been a key technical contributor or lead.
- You can articulate complex system designs and architectural trade-offs clearly.
- You've successfully mentored junior engineers in previous roles.
- Your interview performance clearly demonstrates advanced problem-solving and technical communication skills.
- 3
Specialist from a Related Technical Field
6-10 years total experience + 1-2 years focused on software engineeringSkills to master
- Transitioning from a related field (e.g., Data Science, DevOps, QA Automation) into a pure software engineering role, demonstrating strong coding skills and system design principles.
You're ready to move on when
- You've built significant software components or systems in your previous role, even if it wasn't your primary title.
- You've taken dedicated courses or completed personal projects to fill any gaps in core software engineering concepts.
- You can demonstrate a deep understanding of software engineering best practices, despite your varied background.