What do Staff engineers actually do?

December 3, 2020.Filed understaff-plus26

员工加工程师的角色在很大程度上取决于团队需要什么,以及特定工程师的优势是什么。根据我的经验,员工加工程师的职责可能会随着时间的推移而改变,但通常他们的主要精力集中在对公司具有战略价值的项目/工作上,同时推动技术设计和提高团队水平。-Diana Pojar

任何在聚会上被亲戚逼得走投无路并被要求解释什么是软件工程师的人actually doknows that explaining the work can be a challenge. Over time you may have created a compelling answer for your relatives, but many folks’ minds go blank when their coworker leans over and asks, “What’s a Staff engineer do?”

The easiest answer is that Staff engineers keep doing much of what made them successful as Senior engineers: building relationships, writing software, coordinating projects. However, that’s a misleading answer. Theyaredoing those same tasks, but whereas previously they were the core of the work, they’ve become auxiliary work, and they have new priorities. Their daily schedule varies a bit按原型, but there’s a shared foundation across all archtypes: setting and editing technical direction, providing sponsorship and mentorship, injecting engineering context into organizational decisions, exploration, and what坦尼娅·赖利calls成为胶水.

设置技术方向

当我能帮助为一个领域设定一个技术愿景,并让人们朝着这个愿景前进时,我感到最有影响力。我想我们都会同意,我们希望我们的代码的架构比现在更好,或者在某种程度上得到改进。然而,我发现人们往往有一些模糊的感觉,想要更好,却不清楚自己想要的是什么。我喜欢帮助大家共同理解他们想要达到的目标(如果我们永远也达不到目标,那就没关系了),并提出一个如何达到目标的总体计划。-Joy Ebertz

Much asthe Lorax在他广受欢迎的儿童读物中,员工工程师代表他们公司的技术。技术不能为自己说话,需要有效的倡导者。那些成功地推动技术进步的人是务实的、深思熟虑的,他们更关注进步的长期趋势,而不是把每一个单独的决定看作是成败的危机。把这看作是一个兼职的技术产品经理是很有帮助的。

Some Staff-plus engineers are explicitly hired to lead a specific area suchas API design在其他情况下,他们发现自己editing and aligning approaches across a broad area. 在所有角色中,一个不变的事实是,设置技术方向更多的是了解和解决您周围组织的实际需求,而不是优先考虑您个人非常想了解的技术和方法。在早期的角色中,你可能试图影响对技术选择的决策,但在高级角色中,你首先要对业务和组织负责,其次是对自己负责。

Mentorship and sponsorship

In my current role, I feel energized when someone I’ve sponsored sends an announcement that they’ve shipped their work, or when I see that I’ve helped shape or shift an engineering team’s model of an important topic. It’s these teams, not me, who are doing the hard work day-to-day of building and supporting their technology. I measure my impact based on their progress and more importantly, the directionality of that progress and the alignment of their work to the company’s goals. -米歇尔布

There’s a popular vision of heroic leadership than centers on extraordinarily productive individuals whose decisions change their company’s future. Most of those narratives are intentionally designed by public relations teams to create a good story. You’re far more likely to change your company’s long-term trajectory by growing the engineers around you than through personal heroics. The best ways to grow those around you is creating an active practice of mentorship and sponsorship.

许多职业阶梯的每一个复选框“增大化现实”技术ound mentorship to qualify for a promotion into a Staff role, and mentorship is a key part of the role. Sharing your experience and advice, along with an ongoing relationship to understand the recipient’s context, is high impact work. In senior roles, mentorship is just the bar for admissions, and the most effective Staff engineers pair a moderate amount of mentorship with considerably more sponsorship: putting your thumb directly on the scale to help advance and support those around you. If you haven’t read it already, Lara Hogan has written the canonical piece on the distinction between sponsorship and mentorship,What does sponsorship look like?

提供工程观点

I have a seat at the table at higher level engineering discussions that occur at a level above individual projects and teams. We have recurring staff engineering meetings where we discuss problems that span teams which are both technical and non-technical in nature. -Dan Na

Effective organizations streamline routine decision making. A good example of this is the process for reviewing contracts for potential enterprise customers. Early on, there will be some contracts signed that the product and engineering teams is uncomfortable supporting. After that happens a few times, the process will include more stakeholders in the review steps, and overtime the right people will be in the right places at the right time.

There’s a second category of decisions, thoes which are both time-sensitive and important, and it’s more challenging to get the right folks into the room before those decisions get finalized. It’s frequent foran organizational restructure如果没有有价值的投入就会改变结果。类似地,不经常担任的职位的面试循环也很常见——那些你可能每年雇佣一个人担任的职位,比如高管或员工加上早期公司的工程师——没有从一个重要的方面对候选人进行评估。对一些公司来说,甚至像路线图规划这样的东西也属于这一类。

Staff-plus engineers are the folks who will often get unexpectedly pulledinto the roomwhere this sort of decision is happening. This gives them the opportunity to inject engineering context and perspective into a decision while it’s still possible to change the outcome. These brief moments of input on critical decisions are unduly impactful, and will allow you to keep engineer’s perspective heard. They’re also a moment when it’s easy to forget that your role in these moments is often to represent the interests of all of engineering, not just your own.

探索

In my current role within the incubator I’m spending all day prototyping, but in my previous tech lead role I did a lot of different things. -Ritu Vincent

Hill-climbingcan’t solve every problem, but it’s so effective that many companies struggle to take other approaches. This can be a consumer-oriented company struggling to support enterprise deals, or a mature company struggling to compete with a smaller competitor’s release cadence. It can even be the case that your current business is so valuable thatit’s hard to prioritize new businesses, even though the valuable business’ growth rate is trailing downwards.

In the long-term, companies either learn to explore or they fade away; this isn’t an ignorable challenge. Simply assigning a team that’s mastered hill-climbingto do exploratory work这远不是一件确定的事情,因此许多公司采取了不同的做法。他们找到一对有广泛技能的值得信赖的人,分配一些资源,几个月后再回来看看他们发现了什么。其中一名工程师通常是一名普通工程师。

This isn’t always a business problem either, it can be any sort of ambiguous, important problem that the company’s systems are ill-shaped to address. It might be reducing your infrastructure costs by an order of magnitude. It might be identifying a multi-region strategy that takes six months instead of three years. It might be addressing the sudden realization that your primary database only has three months of remaining diskspace and you can’t upgrade to a larger size (in my experience, a surprisingly frequent problem at fast-growing startups).

This is some of the most rewarding, and the riskiest, work companies do, and it takes a great deal of organizational trust to be trusted with this work, including having the respect from the business that if you fail it’s a reflection on the problem and not you.

成为胶水

坦尼娅·赖利wrote a wonderful post,成为胶水, which captures another core element of successful Staff engineers: doing the needful to identify the right work and get it shipped. It’s not glamorous, but high impact organizations often have one or more Staff engineer working behind the scenes expediting the最重要的工作,并确保它得到完成.

But will you still write software?

It’s impolite to end any discussion of the Staff engineer role without opining on the first question that Staff engineers ask when they congregate in a room together: “Do you still find time to write software?” The answer is, of course, it depends!

拉斯卡萨威廉姆斯说,“I still contributed code regularly—certainly less than the rest of the engineers on my team; but it was important that I sustained "hand to keyboard" work to ensure that my technical strategy (and other macro–level decision–making) was informed by the on–the–ground experiences of the rest of my team.”

凯蒂·西尔·米勒说,“我是一名前端架构师,但到目前为止,我最近写的主要内容是SQL,因为我正在做大量的数据分析。我一直在研究我们的性能指标,以找出需要改进的地方,以及需要解决哪些最有影响的问题来改进性能和业务指标。我会在这里或那里写一些JS或PHP,但主要是为了帮助解除团队的封锁,或者运行一些与性能相关的小实验。”

Silvia Botros说,“I don’t do coding for the business anymore. I think the last time I had to pull up my terminal it was to refactor my dot files. This is an intentional decision by my boss, the Chief Architect. He’ll check in with us every quarter to make sure we didn’t contribute any code that goes into production.”

Joy Ebertz说,“The more senior you get, the less your job is about code. Sure, unlike a people manager, you still have a very technical slant and even through principal, you’ll likely be doing at least some coding. However, the higher you get, the more your job becomes about mentoring and growing the people around you (and more broadly), building your team through building your company’s public tech brand, noticing larger technical trends that can be improved upon or corrected, helping to set the tech vision for your team or the company and advocating for resourcing for tech debt projects.”

Most write some, some write none, but none write as much as they used to earlier in their career. There will be the occasional week that is purely coding, but those won’t be the norm, and if they happen too often it’s usually a sign of workingon something comfortable rather than important.

缓慢但有回报

One unifying theme across Staff-plus work is that the timeframes are simply longer. Early in your career it’s easy to get attached to software development’s quick feedback cycle–write, test, ship, repeat–and most of the work you’ll be doing at this level replaces that feedbdack loop with one that takes weeks, months and years.

The impact and the personal growth lives in those longer timeframes, and while everyone I spoke with wished they’d occasionally get more time to code, none of them regretted their transition into their current roles.