Title: Senior Software Engineer
Scope: Team or Domain
Summary: A Senior Engineer II is a very experienced individual contributor and technical leader within their team. They look beyond their current work to plan for the short to medium term future. Their scope sits mostly within their team but sometimes you’ll find them working with other teams on wider problems.
The scope and impact of a Senior Engineer II is typically felt at the team or domain level, with their influence beginning to spread wider across the business. We’re keen to recognise that impact at this scale can be made in various ways, and that there are different “shapes” of Senior Engineer II. At one end of the continuum we have the technical or Tech Lead, who excels at leading engineering in their team, while at the other end of the scale we have the domain expert, who is a company wide subject matter expert in areas of our platform.
Although it shares the same title, Senior Engineer II is a noticeable step up from Senior Engineer I, coming with new responsibilities and expectations. Progression to Staff Engineer is extremely challenging and will likely take around 2 years for an exceptionally talented engineer.
Key Takeaway: As a Senior Engineer II you’re a seasoned engineer and a leader within your team. At this level, you’re thinking more in terms of architecture and systems than simply writing code. You also consider the knock-on effects of your team’s work on other teams, including outside engineering. To do well at this level you should also be starting to make significant contributions outside your team; within our guilds, through mentoring or by writing blog posts.
Influential Impact
- Delivers against their teams most challenging technical problems, skillfully weighing trade-offs to deliver scalable and maintainable solutions.
- Drives the culture of effective technical collaboration within their team.
- Keeps their team working towards business goals.
- Foresees potential disruptions to deliverable schedules and proposes solutions to reduce delays.
- It should be clear to see how they have contributed to a team achieving their goals for a quarter.
- Able to confidently present to large groups of people outside their immediate team.
Technical Mastery
- Able to provide technical reasoning and context related to the components and codebases owned by their team.
- Has the skills to competently work on complex and unknown problems under pressure (e.g. debugging complex production issues at speed, or leading the resolution of major incidents).
- Understands when and where it’s appropriate to pair-program and when it’s not appropriate.
- Has the flexibility and depth of knowledge to move across technical and product domains when needed.
- Introduces improvements and iterations to existing engineering standards.
- Articulates a coherent future vision for a component or components that they co-own within a larger system.
- Proactively proposes opportunities for codebase or system level improvements.
- Has the experience and judgement to flex processes and test approaches based upon risk.
Behavioural Approach
- Able to express intent and requirements effectively with one’s own team and across others.
- Shows resilience without being stubborn. Doesn’t give up easily and can work through difficulties.
- Sets high standards for their team in terms of software quality and delivery performance. Speaks candidly when standards are not met and works with their team to continually raise the bar.
- More focus on the end-to-end software lifecycle. Challenge themselves and the team to consider what happens after software is deployed to production.
- Deeply understands their product and how they’re used by customers. Is a key partner to their Tech Lead and Product Manager in driving their mission.
- Demonstrates empathy and candour when coaching / mentoring less experienced engineers.
- Expert in choosing appropriate technical approaches under different constraints. Knows that sometimes a naive solution can be the best and can weigh various options quickly and skillfully.