What is a Product Staff Engineer?
How can a product-focused engineer fit into the role of Staff Engineer? What tools and expertise can they leverage to provide organizational impact? In this post we will define what a Product Staff Engineer is, and how they might realize this impact.
What is a “Product Engineer”?
Let’s start by defining what a Product Engineer is and does. A Product Engineer, as the name implies, focuses on the product experience. This work often involves converting detailed product and UX requirements into working software.
These developers often work closely with Product, Design, and Product Analytics stakeholders to understand how users are interacting with the product, iterate on the existing product experience, and implement new product experiences.
This work is typically full stack work, so Product Engineers may be frontend, backend, and/or fullstack experts.
Product vs Platform Engineering
To understand what a Product Engineer is, it can be helpful to understand their role contrasted with Platform Engineering.
Where Product Engineers focus on developing the product, Platform Engineers focus on the platform that supports the product. The end users of Platform Engineering work are often Product Engineers, while the end users of Product Engineering work are the product’s end users.
For example, Platform Engineers may support the database health and development, tooling for metrics and observability, experimentation platforms, payment platforms, and much more.
Product Engineers build product experiences on top of the infrastructure and platform tooling built and managed by platform teams.
What is a “Staff Engineer”?
Staff Engineering is a leadership role, typically very different from a Senior role in software engineering. A Senior Software Engineer will certainly have leadership responsibilities of varying scope - they may be the primary technical owner if some project, or may be responsible for mentorship across their team.
Staff Software Engineers differ from Senior engineers in that the scope of their impact is scaled more broadly across their technical organization and beyond. Staff Engineers may also be technical project owners, but may also be expected to guide organizational change, identify and execute on impactful technical initiatives, resolve blockers and inefficiencies that impact their technical organization, and much more.
The reason that defining what a Staff Software Engineer is and does is such a common topic across Staff-plus resources is that the scope is broad and undefined, and it is often up to the Staff Engineer to identify and justify the work that they spend time on.
The Staff Engineer Archetypes
Will Larson’s book, Staff Engineer: Leadership Beyond the Management Track describes the four common archetypes of Staff-plus roles:
- The Tech Lead. This role exists within the scope of a single team to guide execution and technical approaches.
- The Architect. This role is responsible for technical direction and quality within a subject area, providing expertise and leadership to address the needs of the project.
- The Solver. This role focuses their efforts on arbitrary and/or high complexity problems. They may remain in one primary space or move around addressing technical issues as they arise.
- The Right Hand. This role gives the executive layer of an organization some additional technical bandwidth, operating with “borrowed” scope and influence as a delegate to help reduce the load for the leader(s) that they support.
In my experience, these archetypes accurately represent the types of Staff Engineers that exist in the wild, however, your organization may not have some or all of these archetypes represented (depending on the organization’s needs).
The Product Staff Engineer
Bringing together the focus of a Product Engineer with the role of a Staff Engineer, we can define what the role of a Product Staff Engineer might look like.
First, I want to make it clear that I don’t believe “Product Staff Engineer” to be a title, but rather it is more descriptive of a focus. A product-focused Staff Engineer is still just a Staff Engineer in title and scope, but they operate primarily in the product problem space.
A Product Staff Engineer, as with any Staff-plus role, will first and foremost be responsible for taking on work that allows them to provide the highest impact for their organization. That may mean stepping outside of their focus area, even temporarily, to drive change.
A Product Staff Engineer should also seek to guide best practices and influence the technical direction of the product. This means being closely involved with Product and Design stakeholders, understanding how different parts of the product fit together, and understanding user needs and pain points.
It’s very important for a Product Staff Engineer to remember that they do not need to be the individual to solve a given problem. A product and it’s business logic at any significant scale will likely become nuanced and fluid enough that it may not be possible for one person to understand exactly how it all works. Instead, their job as a technical leader is to ensure that the right people are in the room and involved in the decision making process.
A Product Staff Engineer has the knowledge and influence to define and evangelize a coherent and unifying technical vision for their product. This should not be done in a vacuum, but rather with input and feedback from experts across the product. This is a unique and awesome power to wield, and as a technical leader in the product space it will be the Product Staff Engineers most impactful tool.
Summary
What differentiates a Product Staff Engineer from any other Staff Engineering role is their expertise and focus on the technical aspects of the product. This is more of a focus area than a title, and the responsibilities of a Staff Engineer in general may require stepping outside of this focus area if needed.
As a Product Staff Engineer, your role is to guide the best practices, technical direction, and any other components of a unified vision for your product codebase. This involves a keen sense of awareness of the needs of your Product leaders and the users of your product.