The unofficial first rule of engineering: When the minds behind the world’s most valuable startup, Stripe, want to talk about making better dev orgs, you listen.
In this episode of Dev Interrupted, Stripe’s Head of Engineering Smruti Patel joined us to talk about the daily, weekly, and yearly engineering decisions that have engineered the company’s meteoric success.
Smruti has a gift for making the logic behind make-or-break strategic decisions digestible for every engineer, regardless of where they are on the company ladder.
With a breadth of wisdom on what it takes to make tough decisions based on tradeoffs, opportunity cost, and developer bandwidth, Smruti Patel’s insights can be applied to any org – even ones worth less than $100 billion!
- (1:53) Smruti’s road to Stripe
- (4:49) Engineering resource and bandwidth decision making
- (9:37) Opportunity cost checklist
- (15:03) Framework checks and balances
- (20:28) How to think about tradeoffs
- (30:38) Current macroeconomic environment
- (34:29) What motivates teams at Stripe?
- (39:01) Smruti’s self-evaluation initiative
How Stripe Thinks About Trade-Offs and Fosters Autonomy
Conor: How do you ensure you’re making the right trade-offs to get there?
Smruti: Yes, Conor. All I’ll say in short is… it is hard. Trade-offs are very hard and they hurt. They have product in their businesses. What is your product strategy? What is your technical strategy? The spatial-temporal constraints you’re operating under. And the time horizon that you want to plan for. Do you want to optimize for the next six months? Do you want to optimize for the next eighteen months or three-plus years? You’ve also identified the right use of cohorts for optimal reach. And so using your tech strategy, your marked start metrics, your guardrails for what you do. You basically have decided what problems to solve at the macro levels. And here, I can even give you the example: we consciously had to de-prioritize to user cohorts and double down on ML. And this required a micro-level trade-off where we said, team A would no longer solve problems for business intelligence, but instead are more focused on better productivity to meet it. So, I as a leader made some macro-level trade-offs, but how do I then empower my teams to do the same for the problem space that sits within this macro problem trade-off? And here’s where I think a lot about fostering of autonomy that we talked about, how do you do this when your org or team is of size six, to an organization of size sixty, to maybe leading a company of six hundred? How do you sort of scale that as your group is scaling? How do you scale your autonomy? How do you dedicate your scope, your responsibility, and even that authority so that your teams can make the same decisions and independently operate, which otherwise you would?
How Smruti Motivates Her Teams at Stripe
Conor: How do you motivate your teams at Stripe?
Smruti: Conor, this is what I love.
Conor: Okay, this is great!
Smruti: Yeah, absolutely! I think to me… I’ve been leading teams for 14 years now, and I tell you the single biggest thing that gives me joy, is working with a diverse set of smart, talented engineers and then solving problems for our users. And here’s where typically what I have learned is… What I’ve seen is when we talk about high performance that when individuals or teams align their view, you can imagine, you know, a bunch of developers just burning the midnight oil and shipping faster, writing more code. But over the last two decades, I personally have worked as an engineer, then a manager, and now an org leader, and leading these diverse teams, to me it comes down to these two important concepts. One is about intrinsic motivation, and I strongly believe that engineers don’t lack motivation, they’re here to do their best work. So the work for me then as a leader was how do I create the environment for engineers to sort of come together and work that magic? And this is again, the second concept which blew my mind is about thinking in systems by Donella Meadows. This talks about how for any system you’ll figure out the set of elements and all the interconnect. And then the function or the purpose that that system needs to solve. So you brought up high performance. Whether at the individual level or at the team level, and think about it because we want that tactical stuff of sprints, and story points, and OKRs and PRs. To me it comes down to things that we’ve already talked about, right? The business success, which is what is a team shipping, what are you building, and why? Precision and impact about the higher north star.
Conor: How are we contributing?
Smruti: How are we contributing? And that comes to that body of individuals, that team success, which is how well are that set of individuals working together? How are they communicating? How are they collaborating? How are they effectively shipping code? Agility, autonomy, and high agency.
Additional Video and About Interact
Also, you are invited to join engineering leaders from Shopify, Stripe, Slack, and more at Interact on October 25th. This is a free, virtual, community-driven engineering leadership conference featuring over 25 of the most respected minds in development, all selected by the thousands of engineering leaders in the Dev Interrupted community.