A lot of folks want a map to Staff Engineer, and just as many Staff Engineers want to better understand their role. Towards that end, I'm working on a small project to collect folks' stories of reaching and operating as staff-plus engineers
"What should I measure when the CEO asks for engineering metrics?" is probably the most frequently recurring eng leadership question, and connects into a larger, somewhat nebulous topic: how should you measure engineering organizations?
Some notes!
This has been a terrible, staggering year in so many ways. It's also been a disproportionately interesting and meaningful year for me professionally, and I wanted to share some of what I learned in 2017 about engineering and infrastructure management.
In preparation for starting a new role next week, I had some convos with folks in those roles, did some research and have written up what you should focus on for your first 90 days as a VP Engineering or CTO
Congrats to
@whereistanya
for writing this excellent book into existence! Super excited for this book and all the not-yet-written books expanding on the staff+ role
Early edition of "Staff Engineer" is available tomorrow. If you didn't buy "An Elegant Puzzle," this is *your* chance to get premium typos, grammatical errors, and diagrams with confusingly reversed arrows, but about Staff-plus engineering instead of mgmt
If I had to pick one story had summed up my early career in Silicon Valley, it would have to be the ill-fated launch of Digg v4, sometimes thoughtfully described as the worst relaunch of a product, ever.
Now you too can read the story:
Once again, I am coming to you with a soup-to-nuts writeup on engineering strategy. Wrote an example eng strat, structuring strat in general, structuring eng strategy in particular, and how to evaluate specific strategy components. It's a lot.
A core management skill is bridging between your management’s and your team’s expectations in a way that is authentic to both’s values. If you never say no to your team, you’re not actually managing them. If you never change your management’s mind, you’re not being a manager.
Software migrations are a way of life at rapidly growing companies, and increasingly I think your ability to migrate effectively is the defining constraint for your growth.
It took me a long time to capture the idea concisely, but finally found way to talk about tradeoffs in a useful way, especially why some folks see tradeoffs everywhere, and others believe tradeoffs are rare: good tradeoffs are multi-dimensional.
Few eng orgs have clear engineering strategies, they can feel almost mythical & intimidating to write. While struggling myself, I’ve landed on a reproducible way to write useful strategies: five 5 design docs, synthesize them into 1 strategy, repeat!
Although I'm quite convinced that I'll always be a writer first and a conference speaker second (or third or tenth), decided to record a quick cut of the same slides I gave at QCon a few weeks ago.
As someone who is routinely annoyed by org value statements ("Integrity!"), I've written up my approach to writing useful values, particularly from an engineering org's perspective, make them: (1) reversible, (2) applicable, and (3) honest.
Full notes at
Excited to share
@ksylor
's story of becoming a frontend architect at
@Etsy
. A lot of folks believe that you gotta go into infrastructure or systems to reach staff roles, and Katie's exp is an important counter-example, along with being a delightful intrvw
Everywhere I've worked, people have complained that internal communication could be better. There is an art to delightful internal comms, but doing a reasonably good job bakes down to mechanically following a few fairly simple practices.
Full notes in
Will pull apart into a more useful thread tomorrow, but some notes on creating software quality. It’s hard to get right if you don’t disambiguate three distinct barriers to quality: essential problem domain, scale, and accidental complexities
As “Do titles matter?” does the rounds again, the StaffEng take is... of course it matters, especially to folks who don’t look like the stereotypical concept of a Staff Engineer
What are your preferred books, blog posts or case studies about engineering strategy?
Pulling together my thoughts on this topic and looking to understand the prior art. Collection thus far in
A friend and I are playing around with the idea of doing a small site where we answer anonymous engineering leadership questions ("eng leadership" meaning org, people, structural, process questions, but not technology questions).
Do you have a question? If so...
It's surprisingly common for folks in technology to view their career as transient, and working in industry it's easy to take on aspects of that perspective. I've spent some time thinking how I'd approach my career if I emphasized longevity and growth.
How do you, as a Staff-plus, or any other similar senior individual contributor role, wish your manager approached managing you differently than they approach managing folks in less senior roles?
Have some draft ideas but would love to hear more!
A list and summaries of many of my favorite technical papers: Dynamo, Hints for Compute System Design, Big Ball of Mud, The Google File System, On Designing and Deploying Internet-Scale Systems, Borg/Omega/Mesos, Raft/Paxos, etc!
Seeing across different layers of context is one of the hard skills to learn as a Staff-plus engineer. It's also the only way to consistently get access to company-scoped problems rather than team-scoped ones.
Some notes:
Pulled together slides and talking notes for upcoming talk at QCon in SF, which internally I'm thinking of as "Solving the Engineering Strategy Crisis" although that is indeed not it's official name.
"I've come to view engineering management as a series of puzzles. This book is a collection of those puzzles which I have had the good fortune to struggle with and learn from." -
@lethain
An Elegant Puzzle is now available for pre-order.
.
@Lethain
's book, Staff Engineer is a must-read for eng leaders: IC or manager.
In addition to demystifying the staff role, it covers the whys and hows of tech strategy, the power of sponsorship & the responsibility of having influence.
Pre-order here:
Having gone through the "infrastructure costs don't matter" to "infrastructure costs are on fire" to "we know what we're doing and no one is yelling at me anymore" cycle a few times, wrote up what I've learned about managing infrastructure costs
New Staff-plus story this morning from Adam Bender, Principal Engineer at Google. I always appreciate reading abt co's like Google and Microsoft with their parallel construction of what Staff-plus roles are, often incldng small people mgmt component, etc
Two of our upcoming books are, at their hearts, about bringing people together and helping them thrive. An Elegant Puzzle (spring ‘19) focuses on engineering management & Get Together (summer ‘19) focuses on cultivating passionate communities. Learn more:
Why do people angel invest? I get theory of angel investing as status building vehicle, but what are the other motivations? Especially for folks who do it before they are financially independent themselves? (Which seems increasingly common?) What do folks learn from the process?
Looking for examples of how engineering organizations measure their *impact*, what have you seen orgs do (good or bad)?
E.g. according to lore, Amazon measures # of press releases; Square measures # of billable features; Uber measures # shipped features normalized by # eng; etc
Wrote up some notes on the most frequent communication challenge I see folks have when communicating with executive, along with how to prevent it, "Extracting the Kernel."
There's a lot of hate for micromanagers, but my experience is that when picking between a micromanaging exec and a disengaged exec, you should *always* prefer the micromanager. Some thoughts on how folks disengage, and how to stay engaged yourself
Full at
Over past few weeks, I pulled together my notes on executive job/role searches, which I hope will help folks pursuing their first executive role avoid some of the common issues ("how do I find these roles?!", "what are single triggers?!").
Folks aren't exactly banging down my door to ask for my list of most useful leadership/management books I've read, but I do get the question occasionally and have written up a bit of a list:
From Staff Engineer proceeds so far, tonight was able to donate $1k to Resilient Coders (ty
@ksylor
), $1k to Black Organizing Project (ty
@podiana
) and $3k to /dev/color (ty
@kasawill
).
More to go soon (money moves so 🐌🐌🐌)
For all the advice out there on managing your org’s compensation, the significant real and perceived compensation shifts from market, inflation, and geopolitical environments are truly mind bending over past two years. Haven’t spoken to anyone with a particularly clear plan.
Excited to share
@hazelcough
's path to the Payments Products Tech Lead role at
@stripe
. Michelle shares a bunch of tools she uses like her "top 3" doc of current priorities and using a decision log when she and her team designed Stripe Payment Intents.
Wrote another systems modeling post on how limiting work-in-progress increases overall throughput. Increasingly suspect creating effective back pressure is _the_ core organizational design skill.
Without committing the cardinal sin of engaging in "meetings discourse", I spent some time documenting the ~six meetings that I'd suggest most engineering organizations operate around. Also cover how to run them, how to scale them, etc
Full notes at
I used to think the first episode of Battlestar Gallactica was brilliant to create a sense of dread by having its characters live in short explicit cycles of rest and flight. Now I realize the writers probably just had cared for an infant
I've been working with a large-ish startup that's revamping their incident response and incident program, and ended up writing up notes on some of the phases and challenges of creating and operating these programs.
Some tips!
Composing diverse teams and groups easily becomes second-shift work for URMs in your company. When we ask folks to participate, we become ethically obligated to ensure this work is shifted into the first-shift and recognized in performance reviews, promotions, etc.
Was recently poking around to find a tech writing community of folks who are semi-serious about the process (e.g. trying to write a book, build a ~monthly blogging habit, write for publications like Increment, etc), and couldn't find anything quite right
💛 post from
@brian_scanlan
, esp agree on microservices being an anti-pattern for most companies. Fix the monolith first, then independently decide if you move to isolate processes. (Yes, it is possible to fix monolith... if you start early enough😅)
LetsEncrypt has got to be one of the most impressive projects in the last decade in terms of requiring (a) little upfront investment and (b) having a last, widespread impact on the quality of the entire internet.
What are more projects like LetsEncrypt?
Anyone have a link to a good blog post on using "decision logs" to track team/org decisions?
(I've seen folks use the technique effectively, and looking for something I could share with others who have not.)
(For some reason I thought
@hazelcough
had one, but cannot find.)
Finally got around to writing up an idea I've had in back of my mind for a few months: how do you learn to estimate disk space? IME, it's a particularly useful case of "back of envelope" estimation for architecture discussions, interviews, etc!
Would folks be willing to send me some of their conference CFP / "Call For Proposals" summaries for talks that were accepted? Want to collect a couple dozen into a blog post for folks who are looking for examples of accepted proposals to help them write their first
Planning to spend some time in 2022 collecting folks' stories of infrastructure engineering along the lines of stories collected for
Hope to do a few trial runs this week if anyone would be interested to spend an hour Zooming 10-12AM PT this Tue-Thurs
Wrote up some notes on reading profit & loss statements, which are a surprisingly useful (often ignored!) tool for engineers and eng leadership to better understand the companies they work at, and also how engineering contributes revenue and expenses
Systems thinking is my fav thinking tool, but many of my largest reasoning errors stemmed from surface use ("here's an intuitive mental model") while skipping the details ("comparing outputs of an explicit model against real behavior"). Some lessons!
Hey folks! A lot of folks have recently asked me about small learning circles for senior leaders (CTO, VP Eng, Staff+/Principal Eng), and I'm thinking it would be ~easy~ to launch a few of these in SF/Bay.
If you're interested, consider filling out
Apparently the Kindle version of An Elegant Puzzle will be on sale for $1.99 tomorrow if you're looking to score a cheaper copy! Now with 100 ratings, and just 10 days to its one year anniversary (I vow I only that know bc I just saw while getting link)
In a scaling organization, the ability to be consistently aligned within and across teams is a marker of excellence. “Time to alignment” is your reorg success metric.
I'm thinking that now's the time for _me_ to pause sharing tech content until after the election. It can be helpful to have a choice to focus on reading something less overwhelming, but ultimately if there's ever a time in our lives in the US to be paying attention -- this is it.
Was trying to figure out the right platform to teach a group of folks how to integrate with a specific API without getting bogged down in setting up the development environment, and wow, Glitch is _surprisingly good_, really amazed with what they've done.
There is a surprisingly broad category of work where a single dedicated person saves person-years of rushed efforts later: ensuring systems are scaling (and not regressing), cost accounting, build tooling, code hosting, etc. Prefer two people, one is still the loneliest number.
2019: wow, I need an app that notifies me when AQI is above 100 so I can stop exercising outside
2020: wow, I need an app that notifies me when AQI is below 100 so I know when I can leave the house
Sometimes "later this week" is actually tomorrow! Full digital version of Engineering Executive's Primer up on kindle/oreilly, and physical preorders open for March delivery.
Would any engineering leaders in SF area be interested in come chat with Stripe's engineering management team on any given Wednesday? Pretty casual format, good questions, strong sparkling water selection, etc.
The
#1
google docs feature I would be overjoyed by is export to markdown. I use a plugin for this now, but this feature is literally only reason I periodically consider moving to Dropbox paper
Over the past year I've tried to get comfortable answering a question I often ask, "How do you build an inclusive team?" Some notes around work to move inclusion work into the first shift, including reworking how to assign key projects:
I hope we can do more to emphasize that line management is a distinct job than managing managers. The skills are different, and line management is an extremely rich, deep field that we should celebrate more.
For StaffEng, recently added a piece about how to write engineering strategy, which I think is sort of directionally good but isn't quite working either.
Any suggestions on how I should fix it?
So excited to have my talk from SRECon EMEA about investing in technical infrastructure up! This is ~everything I've learned over last six years leading infrastructure groups at Stripe and Uber.
Has anyone found a useful way to manage/maintain team and org charts? So they don't go stale in 2 months from new hires, team switches and so on? (Not worried about reorgs, those are discrete events, but orgs are never static things.)
If your answer is "make a spreadsheet", no.