James Russo

James Russo

Engineering at Brex

Fullstack engineer who knows nothing about design.
Example: this website.

Bored Hacking

Staff Engineer: To be or not to be?

68.calendarApril 23, 2023 | 4 min read

In February 2022, I achieved a significant milestone in my career by being promoted to Staff Engineer at Brex. As I settled into this new role, I began to receive a lot of questions from engineers who were contemplating whether or not to pursue the same career path. Their inquiries were along the lines of “Is it worth it to become a staff engineer?” or “Should I work towards becoming a staff engineer?“. While I initially struggled to answer these nuanced questions in person, I have spent the past year reflecting on my own motivations for pursuing this role, the work and effort I invested to get here, and my thoughts on the role after a year of experience. In this post, I will share my personal journey, hoping that my own experience can help answer these common questions in a more meaningful and personalized way.

My Motivations for Becoming a Staff Engineer

I’ve held a few different software engineering roles in my relatively short career, including working at a small startup with around 5 full-time engineers, being the first full-time engineer at a pre-seed startup, and working as an engineer at Brex which is the largest and fastest-growing company I’ve worked at.

As an engineer at Brex, I’ve enjoyed designing, leading, and managing projects of varying sizes, as well as contributing to larger engineering-wide initiatives, such as improving recruitment processes or important internal documentation. However, over time, I found myself feeling limited by the senior engineering role. While I enjoyed coding and solving technical problems, I wanted to have more influence, impact, and scope in my work.

I found fulfillment in working on larger initiatives, both technical and non-technical, and in proposing new projects and mentoring others. I wanted to improve my influence and impact, which I saw as key characteristics of the staff engineer role at Brex.

Moreover, becoming a staff engineer would allow me to have more project opportunities, including identifying, proposing, and leading larger projects with multiple engineers. As a staff engineer, I could push to prioritize projects that I identified and thought aligned with the team’s goals. I also wanted to be able to lead large projects with multiple other engineers or teams, as I enjoyed both collaborating and mentoring.

Ultimately, I realized that becoming a staff engineer would give me more opportunities to do more of the work that I found fulfilling and would allow me to have a greater impact and influence in the company. However, I knew that getting to this role would require effort and work on my part, as well as support from my manager and others.

Working Towards the Staff Engineer Role: My Experience and Tips

I believe working towards the staff engineering role is a deliberate choice that requires a significant commitment. While some individuals may have their managers proactively push for their promotion based on their existing work, most have to actively pursue it. I also think it’s generally important to make this a deliberate choice to ensure your ongoing success in the role as it’s often one of the hardest roles to meet expectations in. There is no clear or single path to becoming a staff engineer, but it generally involves finding opportunities and projects to demonstrate staff scope and impact, exceeding expectations in your current role, and collaborating with other engineers and non-engineers across the company.

One approach to working towards the staff engineering role is to have a clear career development plan in place. This can include maintaining a career log to track past and ongoing work, initiatives, proposals, and goals. It is important to communicate this plan to your manager and align on what you are currently working on, what you could be working on, and what other opportunities exist. Constantly evaluating your ongoing projects, additional commitments and future commitments can help ensure that you prioritize the most impactful work and have a plan for what to work on next before you finish the current set of work.

Collaborating and working with others across the company is also critical to the staff engineering role. This can involve working on special initiatives, identifying work for other teams, and mentoring other teams on your platforms/domains. It is essential to grow your collaboration skills to know how to work with others, uplevel them, align with them, and know who to communicate with in certain situations. It can also help showcase you as a functional expertise in one or more systems. Moreover, additional voices who can vouch for you during the promotion review process can be valuable.

As you work towards becoming a staff engineer, it is essential to continuously align with your manager to assess how you are performing, identify what is missing, and find ways to improve constantly. This means finding opportunities to demonstrate staff scope and impact while still exceeding expectations in your current role by designing and developing your work, mentoring your direct teammates, etc.

Finally, it is essential to note that the path to becoming a staff engineer is not linear, and it may take years to achieve this role. However, by developing a clear career development plan, collaborating with others, and continuously aligning with your manager, you can work towards achieving this goal.

Reflecting on the Challenges and Changes of Advancing to the Staff Engineering Role

Reflecting on the past year in a staff engineer role, I’ve learned that the work is indeed different from what it was before. As everyone says, the expectations are much higher, and it’s not just about thinking of your own work anymore, but that of others on your teams and other teams as well. Although you’re not always in the room, you’re definitely in more rooms. It’s also crucial to be aware of the various archetypes you can fluctuate between depending on the organization’s needs. It’s important to align with your manager(s) and ensure you’re meeting expectations and doing what’s expected of you at any given time. Being successful in this role can often involve learning how to properly manage up.

However, exceeding and progressing beyond the staff role is even less clear than getting to the staff role itself. Expectations vary depending on the company, and it’s easy to get lost in too much high-level technical leadership and not enough hands-on development or vice versa. Striking the right balance between these two areas and being deliberate with your work choices is critical. Ultimately, reflecting on the past year has taught me the importance of being adaptable, collaborative, and constantly learning and growing as a staff engineer.

All in all I think answering the question whether or not the staff+ role is right for you is a personal decision that depends not only on your own career goals and skills but also the expectations of the role at your company. I have found it helpful reading and hearing about the experience from others and hope this post helps other engineers in the decision making process of pursuing the staff+ role.

© 2023 James Russo. All Rights Reserved, Built with Gatsby