Space to cook: notes on engineering leadership
Some things I've learned about leadership and management while building and growing software teams. Adapted, in part, from an internal document I wrote in early 2026 while at Stripe and written as a reminder for myself and for anyone interested in software engineering management.
Note: I’ve omitted many of the obvious management tropes like, “invest in your best people”, etc, since these can be read in countless management books and blogs.
Have a hierarchy of concerns
At my last job we would say, "Users > Stripe > Team > Me."
I quite liked this because it is simple, easy to remember, and gets the point across: we're here to serve our users first and ourselves last, and just about every decision we make as teams or individuals can be guided by or checked against that hierarchy: Am I optimizing for my team at the expense of our users? Rethink it. Am I putting myself before my team? Rethink it.
Having an agreed-upon hierarchy of "things we care about and in what order" makes every decision easier and makes it more likely that, in any situation, people do the right thing.
"Users > Company > Team > Me" probably generalizes well to most software companies.
Leadership is a behavior
You can be hired or promoted into a "leadership role" but whether or not you're effective and accepted by your team comes down to how you behave: Do you step up and create clarity for others when no one knows what to do? Do you share a compelling vision for the future? Do you energize and challenge people in pursuit of that vision? This is what separates "manager" from "leader", and the latter is the more valuable thing to be.
Some of the most effective leaders I've worked with were individual contributors (non-people-managers) who took on the behaviors of leadership (either because there was a gap or because they were asked to). They did the things that made others want to follow them, and it didn't matter what their title was.
If you want to be the leader (appointed or otherwise), you have to own it and act the part.
You must have a point of view
If you're running a team within a larger organization, the organization (partner teams, peers, leadership) will put demands on your team. Asks will show up seemingly at random and with varying degrees of urgency: "I need this feature", "I found this bug", "Why isn't this metric moving?", "Can you help me with X?", etc. There will be more demands than you have time for. Many teams go through unfortunate periods where, overwhelmed by asks, they're unable to make progress on their goals.
The single best way to protect the team’s time is to have a compelling vision of the future. If you have no vision to prioritize, you’ll lose every argument about what to work on via escalation (and then your team will feel like they have no agency, no one respects them, etc. etc.) People respect a well-articulated vision (even if they disagree with it) and it will give your team space to cook.
At the end of the day, you are accountable for the collective output of the team. If the team isn’t performing well, that’s on you. If the team isn’t shipping things the company cares about, that’s also on you.
You set the energy and the pace for your team
However you show up is (roughly) how the team will behave. This can be hard because some days you feel like crap, but you still need to show up with energy and optimism (if you can't, take a sick day). This is the responsibility of leadership and it matters a lot. It can also make the job pretty lonely, so it's good to befriend some peer managers to talk to and, of course, you can always gripe up. (If you're the CEO, get a therapist.)
Bias toward action
The fastest and best way to learn is to take some action and see how the world responds. Some problems can be reasoned through purely theoretically but these are rare and, in reality, the world is messy and constantly changing. Once you have a goal or objective to work toward it's almost always better to encourage thoughtful action-taking than tolerate excessive debating and hypothesizing. Sometimes it's obvious what to do, so just go and do it. Most of the time it isn't, and this is where teams can get stuck.
In general, teams that quickly move through the loop of "have an idea => try it out => get and incorporate feedback from the world => repeat" are more effective and make more progress (learning compounds, etc). Teams that spend a lot of time debating and analyzing underperform and get frustrated. Time is a resource that you're managing and it, unfortunately, is unceasing and limited.
(The actions you take should be governed by a set of values and, of course, be in service of some goal. This is not an argument for randomness or lack of focus.)
Being a manager is hard, but rewarding
Some management scenarios I’ve seen or experienced:
- The team loves and respects the manager, morale is high, output is high. Great,
- The team dislikes but respects the manager, morale is mixed but positive enough,
- The team loves and respects the manager, morale is high, output is low (includes
- The team dislikes and does not respect the manager, morale is poor, output is low.
mission accomplished.
output is high. This is fine, although you may have attrition issues.
shipping things the company doesn’t value). This is very dangerous. You probably think you’re doing well (ICs report being happy!) but you are likely failing.
The manager should be removed.
1 is obviously ideal (and rare). 2 is vastly better than 3. 4, we don’t need to discuss. In reality this is a gradient but you get the point.
Sometimes you have to trade off being liked for output. This is fine, as long as the team respects your judgement (which means you should try to be right more often than you’re wrong). It's easy to slip into #3 if you aren't willing to do that. At the end of the day, make sure you know where you stand.
One very cool thing about being a manager is all the ways in which you get to help people, often without them knowing it: fighting for an up level, amplifying their work, correcting some misunderstanding, suggesting them for new opportunities, etc. So much of your work will happen behind the scenes and you won’t get credit for a lot of it (especially from the people you’re quietly helping), but it is very rewarding to see it compound over years.
Be a generator of praise
Speaking of credit, always deflect any praise you get from leadership away from yourself and to your team (especially in public). People above you will understand your role & contributions. You should consider it part of your job to be a generator of praise for your team. If they do something notable, DM or email it to a senior leader (who you know will be interested) and ask them to celebrate it. I did a ton of this in my time at Stripe. (You also end up being seen as a source of “cool stuff”, which is good for you.)
Be a dampener of FUD (Fear, Uncertainty, and Doubt)
This is the best leadership advice I received while at Stripe (thank you, sebas). It is exceptionally easy to poke holes and create FUD around new ideas. Especially at a place where everyone is smart (and wants to show it). New ideas are incredibly fragile when exposed to FUD, and FUD is cheap, so you should expect a lot of it!
As a leader you are in a great position to empower your team and create space for exploration and for ideas to grow by acting as a dampener of FUD, not an amplifier of it. I try very hard to never utter the word “FUD” in front of my teams, and to buffer my teams from external FUD until ideas have had some time to mature.
Conversely, be judicious when voicing FUD about another team's nascent work, lest you unintentionally kill a great new idea before it has a chance to grow.
People leave
It can be quite crushing when someone you've hired and invested in (and have built plans around) decides to leave. Don't take it personally! Everyone leaves eventually (and so will you) so do your best to understand why, wish them well, and then move on.
When it's your turn to leave, think long and hard about how you want to do it. Recency bias is a real thing and how you depart will carry heavy weight in people's memory and opinion of you. This is true in all roles but is especially true for leaders where departures can have broad impact.
Make sure the "good old days" are in fact good
If you've been somewhere a long time you'll probably remember the early days with a certain nostalgia: things were simpler then, the eggs were hot, everything was exciting and new. It's a nice feeling to have, but don't reminisce in front of new team members. They don't need to hear that they missed out on the good times. For them, the "good old days" are happening right now! It's your job to make sure they stick around long enough to look back on these days with similar nostalgia, so do what you can to make sure they are, in fact, good. (HT ksun for putting this idea in my head.)
--
Thank you to Sebastian Bensusan, Kenneth Auchenberg, and Qiao Huang for reading and giving feedback.