Staff+ covers a spectrum of software engineering roles, from staff to distinguished engineers, all of which hold a unique technical leadership position within their teams.
No one – not even Tanya Reilly, author of The Staff Engineer’s Path – seems to be able to agree on where the “staff+” terminology originated. While some speculate that it was inspired by the military ranking system, others believe it emerged from either Bell Labs or IBM decades ago, as engineering roles started to proliferate.
Despite this, staff+ has grown as a category to encompass a whole range of engineering roles that has emerged in parallel to the management track, allowing individual contributors (ICs) to focus on technical execution, help their organizations to scale, establish wider technical context, and assist teams to work on the tasks that will contribute to the most pressing goals.
That being said, staff+ roles can be somewhat ambiguous and often misunderstood, especially outside of the engineering function. What exactly do we mean when we say staff+?
Who are staff+ engineers?
Staff+ engineers are senior technical leaders within an organization. Their job title might be staff engineer, senior staff engineer, principal engineer, distinguished engineer, and very rarely, engineering fellow.
The variety of staff+ roles within an organization will largely depend on the size and requirements of the business. For example, if the VP of engineering at a smaller organization is highly technical, then it’s unlikely that they will also need a distinguished engineer. Whereas a large, engineering-centric company, may need a variety of staff+ roles to cover all of the technical areas it has exposure to.
The staff+ career ladder
Once an engineer reaches the senior level in their career, two paths typically open up.
They may decide to start taking on management responsibilities and pursue the management track. This can span from managing teams, to managing managers, and eventually directing the technical strategy and the roadmap of an entire engineering function.
Conversely, if a senior developer chooses to continue developing their technical expertise, but also wants to move away from working on day-to-day execution and more towards contributing to the overall technical strategy, they might pursue a technical career path. This could start by becoming a staff engineer, where they can begin to progress up the technical track.
Staff+ roles can similarly range in responsibility. This could be from solving technical problems and being interpersonal force multipliers across the organization, to technical horizon scanning for new opportunities for the business. At the very top of the IC ladder, you’ll sometimes find engineering fellows, who focus on both day-to-day technical decisions, and leading the broader technical strategy of a business..
Staff+ roles and responsibilities
Staff+ roles are often steeped in mystery as engineers transition into thinking and operating at a more strategic level. To add to the uncertainty, there isn’t a lot of industry-wide consistency with these roles. Different organizations will have different requirements for their senior technical engineers and the responsibilities can vary widely from company to company.
Author of Staff Engineer: Leadership beyond the management track, Will Larson, created a guide for the different staff+ archetypes that you might find within an organization, detailing their scope and responsibilities which may help in demystifying them.
Core skills
Being a staff+ engineer means specializing in what you are already good at. However, staff+ engineers also need baseline skills that allow them to be independently effective in their roles and within a cross-functional team, while also being specific to the organization.
Largely speaking, staff+ engineers are in technical leadership roles that run parallel to those on the management track. While they may not be directly responsible for the career progression of junior engineers in the same way managers are, they will often influence and coach them in an effort to successfully upskill them.
Influencing other engineers without having managerial authority can be one of the more problematic elements of a staff+ role. One of the ways staff+ engineers can manage this challenge is through alignment. Whilst managers provide alignment through managing individuals, staff+ engineers contribute to alignment across the organization through their influence and by translating context across different teams.
Strong communication skills are foundational for staff+ engineers, enabling them to show a strong, foundational understanding of different disciplines, while also being able to translate these concepts for less technical colleagues.
Staff+ engineers will also have a wealth of technical expertise, meaning that they will likely be called upon to lead on and oversee various projects, placing them in de facto leadership positions. Staff+ engineers will often embed on a team to unblock and upskill them. Once this work is done, the staff+ engineer can move on to another problem area for the business, reassured that they’ve just bridged a technical gap for the organization.
This cycle calls for staff+ engineers to amass a good network within an organization so that they can identify and persuade the right people to work on a particular project. They can also use these skills to gain the trust of those people making the decisions.
Staff+ engineers are not just senior or more experienced engineers, as their position often involves switching focus from delivery to broader enablement. Their goal is to indirectly boost engineering output through supportive mechanisms.
Staff+ engineers vs. senior engineers
Being a staff engineer means focussing more on outcomes and the consistency of the results you’re creating. For example, if a staff engineer is tasked with working on a project that starts to derail, they will be responsible for getting it back on track. Where senior leaders expect junior engineers to try their best or follow a playbook, senior staff engineers are measured by whether or not they achieved the outcome that they were striving for. The role is steered towards whether or not they can and have achieved the results, rather than whether or not they are able to follow the steps that someone else provided for them.
Staff+ engineers have a broader scope. They need to understand the organization and specifically what the business is trying to achieve so that they can focus on accomplishing the right results.
Another distinction between senior engineers and staff engineers is that the level of proactivity expected from a staff engineer is much higher. In many cases, the scope of a staff engineer's work is not something that a manager can guide them through. In practice, staff+ engineers and their managers will often be identifying problems together.
Where do tech leads fit into the staff+ career ladder?
Google has recently made the distinction that the role of a tech lead is considered to sit on the individual contributor track, however, this can be a gray area because a tech lead’s effectiveness is measured by their ability to technically support and unblock a team, rather than their individual contributions.
Like staff engineers, tech leads are expected to have the ability to answer specific technical questions, for example, how a particular feature works, or why a specific choice was made in the code. But instead of having all of the technical knowledge, they are responsible for finding out who knows the information and expanding their own understanding of the topic, as well as improving the documentation to increase knowledge sharing efficiently.
In this regard, a tech lead needs similar skills to a staff engineer; relationship building, a focus on impact, technical acumen, and communication skills, combined with the ability to explain technical topics to an array of people and liaise with other people within the organization.
A key difference between tech leads and staff engineers is that tech leads work with a specific team as the go-to person for answering technical questions and unblocking the team. Whereas a staff engineer works more independently and might only work with a team for a period of time before being parachuted onto a different problem area for the organization.
Whilst a tech lead might be considered to sit on the technical track, their career progression is different from that of a staff engineer. A tech lead can become more senior and increase their influence across the organization by becoming a tech lead for multiple teams and serving as an unblocker for junior tech leads. However, becoming a staff engineer would require a different skill set and would be considered a lateral jump across, rather than a vertical promotion beyond a tech lead.
Stepping up to a staff+ role
To become a staff engineer you will need to demonstrate that you’re capable of delivering results. Early in their career, developers will spend a lot of their time-solving problems by writing code. Whilst this is an extremely important tool, becoming a staff+ engineer means understanding how change happens in your organization and how to participate in and drive that process.
Staff+ engineers will also spend time mentoring junior engineers and their peers through code reviews, building team culture, and supporting other engineers’ understanding of problem spaces and how to approach them.
As engineers move into a staff role, they move up the curve of seniority in their mentorship and coaching. The job becomes less about mentoring graduates to become efficient software engineers and more about helping the new tech lead to drive results for their team.
As a staff engineer, it can be tempting to work on solving problems by yourself because it’s easier than trying to coordinate with multiple people who will be attempting the task for the first time, but leveling up the organization around you is an important skill that ICs need to develop.
What are the most challenging aspects of the role?
Recent research conducted by LeadDev found that the most commonly cited challenges faced by staff+ engineers were influencing and building relationships across the business, juggling multiple high-priority tasks, and navigating a rapidly changing business environment.
Given the nature of these roles, these results were unsurprising. Other challenges included issues faced without having a clearly defined role and building a technical strategy that supports a business strategy that is constantly changing.
Despite these challenges, the emergence of staff+ roles has given engineers a more clearly defined track up the technical career path, as opposed to stepping into management.
If you’d like a deeper understanding of what each specific job title entails on the staff+ track, head over to our webinar series, where we delve into each role, defining the career ladder, and clarifying the different expectations of each staff+ role. And if you’re interested in future staff+ content, sign up to our newsletter to hear more about our upcoming webinars and articles!