Chapter 5 of The Staff Engineer’s Path is going to be about leading big projects, the kind that involve a lot of teams, or where the stakes are high, or the path forward is ambiguous–or all of the above at once. I was planning to jump in at the start of a new project, where you need to set clear goals and create the structures that will help the project make sense for everyone else. As I was writing it, though, I realised that there’s a step even before that: making the project make sense for yourself.
Image: Unsplash
It’s easy to feel out of your depth at the start of a project. There are a gazillion things you don’t know yet, but you need to know them because everyone’s looking to you for answers. You might not be sure yet what success looks like, or what the constraints are, or even 100% what your job is here, but here you are being expected to have opinions and direction and thoughts on what the first milestones will be. It can get a little imposter-y. “Can I really achieve this thing? Should they have picked someone else?” (They shouldn’t. You’ve got this.)
Is it just me or…
So I changed direction with the chapter and started by writing about all of the feelings at the start, and about being overwhelmed. But a few paragraphs in I started to doubt myself. Yes, I was writing the advice I needed a decade ago, but did anyone else need this? Past-me is my first audience, always, but I probably shouldn’t write a whole book just for her. So I took the question to the #staff-principal-engineering channel on Rands Leadership Slack, a little nervous that everyone would say “Uh, no? Competent people never feel like that. Oh, you sometimes do? …Interesting.” 😅
But nah, that’s not the kind of place it is.
I asked if people ever felt overwhelmed by projects. 21 people said yes and the discussion that followed was excellent.
The conversation that followed was empathetic and vulnerable and low-ego, as it almost always is on that channel. People shared stories and talked about what had worked for them and what hadn’t. I left with a sense that, yeah, this feeling of overwhelm affects a lot of people, and also with some more ideas for what to say about it. And I don’t know for sure, but I bet that some folks who are newer to leading projects saw that conversation and felt a little more secure, a little safer in their roles.
Community
Staff+ folks haven’t had a lot of community until recently. It’s been a weird job, sort of under the radar and under-discussed for a long time. I remember writing that I love the Lead Dev conferences because “It’s one of the few conferences that really acknowledge that the senior IC path exists and is a thing people might want to do.”, but even at Lead Dev conferences I didn’t meet a ton of Staff engineers: it was more likely to be managers. Lovely managers, to be clear, but people coming from a different context and different concerns. Staff engineers didn’t really have a place to show up and ask “uh, does anyone else not really know what their job is?” or “does it matter where in the org chart I report in to?” or “should I be coding more/less than I am? /o\” You know, the classics. 😁
Image: Unsplash
Tell me if I’m wrong about this, but I think that two years ago, there were no Staff+ communities at all. Maybe there were some company-internal things, but I don’t know of anything public. The RLS #staff-principal-engineering channel didn’t exist until February 2020 and even that was quiet at the start, enough that the Slack’s cleanup automation had the channel on a list for deletion a couple of months later. But it survived and ramped up and now it’s a busy place. I like it a lot.
Conferences
The last two years have had an explosion of Staff+ content. Last summer the Lead Dev folks ran Staff Plus Live, a one day virtual conference. I cohosted so obviously I'm biased but it really was a fantastic experience and the energy of the “hallway track” in the #staffplus channel of the Lead Dev Slack was like nothing I’d ever seen before. As someone said afterwards, “it felt like a community finding each other for the first time”.
Lead Dev have done a bunch more panels and webinars for Staff+ folks since then, (like this one and this one and this one), and some great articles too. It’s all excellent stuff, so I was a bit starry-eyed 🤩when they told me they were aiming to do a conference in New York in April and invited me to be part of it. The schedule for Staff Plus New York (April 4th and 5th, 2022), just went up on the site, and I’m delighted that there’s at least one presentation about the need for community: David Daly’s talk on building peer groups. But the whole schedule looks amazing. I’m really looking forward to this conference. The idea of an entire conference where almost everyone is a Staff+ engineer kind of blows my mind.
It looks like QCon has a Staff+ track coming soon at a future conference too. I haven’t heard anything about this track yet, but I’m excited for what they come up with. (If anyone reading this knows more, I’d love to hear.) And I’m seeing a ton of incidental other articles about the IC track, medium posts, Twitter lists, and company blogs explaining what Staff+ means to them. [Edit: and I forgot to mention this podcast!] I love it all.
Thanks, Will!
Of course I attribute all of this to Will Larson, who started his site staffeng.com around two years ago: the snowball that kicked off the avalanche. Will’s interviews with people doing Staff+ roles showed models for different ways to do the job, and became a focus point that let Staff+ folks start finding each other. If you haven’t read Will’s book, Staff Engineer, I recommend it a lot.
Staff engineering is still a kind of a weird and ambiguous job. I think that’s the strength of it–we adapt to the needs of the situation. But the ambiguity means we even more need a community and the ability to learn from each other. I’m happy that’s coming together at last.