The Pragmatic Engineer

Gergely Orosz

Details

Software engineering at Big Tech and startups, from the inside. Deepdives with experienced engineers and tech professionals who share their hard-earned lessons, interesting stories and advice they have on building software. Especially relevant for software engineers and engineering leaders: useful for those working in tech. newsletter.pragmaticengineer.com

Recent Episodes

NOV 5, 2026
Scaling Slack and GitHub with Maude Lemaire
Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable. • Entire – The Git forge for agent-human collaboration. Built for the scale and throughput of agentic coding. — What is involved in scaling up large, popular products at places like Slack and GitHub? We get an insider’s view on this from Maude Lemaire, a principal engineer and author of ‘Refactoring at Scale: Regaining Control of Your Codebase.’ She spent nearly eight years at Slack, where she led the backend performance infrastructure team, before joining GitHub to tackle database scaling challenges. Most recently, she worked on improving performance at Cursor – including time to first token. In this episode of The Pragmatic Engineer, Maude and I dig into the challenges of scaling some of the world's largest software products. We explore how Slack handled growing numbers of enterprise customers, how it evolved its approach to load testing, and the lessons Maude learned during nearly eight years of scaling Slack's infrastructure. She also tells us what it was like joining GitHub in 2024 when Copilot was taking off, the challenges of working with GitHub's gigantic Rails monolith, and how Maude uses AI in her work – while keeping judgment calls and decision-making firmly in her own hands. Timestamps 00:00 Intro 03:15 Early years and path to software engineering 07:32 First job at Rent the Runway 09:17 The HipChat data leak 10:54 Joining Slack and the challenges of scaling 26:30 Load testing and thundering herds 32:29 Event floods 38:30 Evolving load testing at Slack 48:38 Joining GitHub in 2024 56:52 The challenges of the Rails monolith 1:02:26 How Maude uses AI 1:12:40 Advice for engineers interested in product/platform work — The Pragmatic Engineer deepdives relevant for this episode: • Real-world engineering challenges: building Cursor • Pushing software engineering limits with “napkin math” • What is happening with code reviews? • Why reliability is hard at scale: learnings from infrastructure outages • What is Reliability Engineering? • Migrations Done Well • Shipping to Production • The Platform and Program Split at Uber • The present, past and future of GitHub • Why performant code matters (but gets widely ignored), with Casey Muratori • Designing Data-intensive Applications with Martin Kleppmann — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email [email protected]. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
78 MIN
OCT 29, 2026
Software engineering at Google & CS education with Titus Winters
Brought to You By: • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable • Linear – the product development system for teams and agents • WorkOS – everything you need to make your app enterprise ready. — An engineer who helped create today’s software engineering curriculum now says to burn down almost all of it. What’s the cause of this contradiction? We find out from the lead author of Software Engineering at Google. Titus Winters spent more than a decade at Google, where he led its readability program and built Abseil, Google’s open-sourced foundational C++ libraries. He is currently a Senior Principal Scientist at Adobe, where he focuses on developer experience and productivity. In this episode of The Pragmatic Engineer podcast, Titus and I discuss how his team tackled a massive refactoring project across Google's 250-million-line C++ codebase, why Google made testing mandatory, and his work on updating the ACM/IEEE undergraduate computer science curriculum guidelines. We also explore why traditional productivity metrics miss some of AI’s biggest benefits, what needs to change in CS education, and how new engineers can stand out. Timestamps 00:00 Intro 07:01 Getting hired by Google 09:48 Finding his niche at Google 14:32 Why Google made testing mandatory 17:45 Why new engineers fear making mistakes 20:40 Abseil: C++ foundations at Google 23:09 Google’s massive C++ refactoring 30:48 AI for rewrites 39:07 Software Engineering at Google: the book 43:10 Google’s readability reviews 47:18 Why teams still matter 52:41 Psychological safety 58:17 Layoffs and culture 1:02:11 Measuring developer productivity 1:11:17 Rethinking CS education 1:22:56 What new grads should learn 1:32:08 Titus’s ideal software engineering curriculum 1:36:27 Advice for breaking into tech 1:38:35 Book recommendation — The Pragmatic Engineer deepdives relevant for this episode: • The state of the tech industry in 2026 • Inside Google's Engineering Culture • Slow down to speed up when working with AI agents • Measuring developer productivity? A response to McKinsey • How tech companies measure the impact of AI on software development • What is happening with code reviews? • When AI writes almost all code, what happens to software engineering? • Developer productivity with Dr. Nicole Forsgren (creator of DORA, co-creator of SPACE) • Measuring the impact of AI on software engineering – with Laura Tacho — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email [email protected]. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
100 MIN
OCT 21, 2026
The revised rules of engineering management with Will Larson
Brought to You By: • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable. • Entire – Git hosting, rebuilt for the agentic era. Every agent session, prompt and tool calls: stored in your repo. • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. — What’s changed in “the unwritten rules” of engineering management since the 2010s, what drove the shift to today, and what has it done to the engineer-to-CTO career path? Today’s guest is one of the best people I know who can tackle these questions. Will Larson is CTO of Imprint, was an engineering executive for 10+ years, and is the author of several popular books on engineering leadership, including ‘The Engineering Executive's Primer,’ ‘Staff Engineer, An Elegant Puzzle,’ and ‘Crafting Engineering Strategy.’ Previously, he was also CTO at Carta and Calm, and an engineering leader at Stripe and Uber. In this episode, we explore how engineering leadership has evolved from management practices shaped in the long post-financial-crisis ZIRP era to the altered expectations of engineers and managers today. Is middle management an increasingly precarious career path, and might managers need to reskill and return to hands-on technical work – or even consider retirement? Will makes the case, and we hear why the traditional path to engineering executive roles is changing, as well as why taking one step backward might sometimes be the best way forward. We discuss Will's early career, and get his first-hand account of Digg's disastrous relaunch, his own path to CTO, and he tells us why career ladders still matter. We also explore how AI is changing engineering roles and bringing technical decision-making back to leadership. Timestamps 00:00 Intro 08:20 Stories from Yahoo! 12:47 Digg’s v4 rewrite: the insider story 26:02 Will’s path to eng leadership 30:03 Uber, Stripe, Carta, and Calm 35:11 What does a CTO do? 38:09 Will’s role at Imprint 42:48 How engineering management has evolved 51:08 ZIRP’s impact on tech 57:21 Career ladders 1:01:03 Eng 1 vs Eng 2 1:06:58 How software engineering roles are changing 1:16:25 Revised rules of engineering leadership 1:21:57 The risks of becoming a bureaucrat as an EM 1:25:57 How to become a CTO? 1:31:33 Middle management vs. line management 1:41:36 Will’s writing 1:52:13 Book recommendations — The Pragmatic Engineer deepdives relevant for this episode: • The end of ZIRP and what it means for startups and the tech industry • Getting an Engineering Executive Job – an excerpt from Will’s book, The Engineering Executive's Primer • What is a Staff+ Engineer? • Inside Stripe’s engineering culture • Engineering career paths at Big Tech and startups • Staying technical as an engineering manager • Performance calibrations at tech companies • Scaling Uber with Thuan Pham (Uber’s first CTO) • Hypergrowth startups: Uber and CloudKitchens — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email [email protected]. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
115 MIN
OCT 14, 2026
Uber’s AI infra, from the inside
Brought to You By: • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable • Linear – the product development system for teams and agents • WorkOS – everything you need to make your app enterprise-ready. — What do developer tools look like inside of Uber, today? They are very different from what you would see at most places. For example, can you guess what service a system called DevPods, Code Inbox, Slate or Wisdom would be providing to engineers? Today’s episode is a deepdive into the day-to-day tools of devs at Uber, our tour guide being on of Uber’s longest-tenured engineers: Uday Kiran Medisetty. Uday is one of the few Distinguished Engineers at the company, and leads much of the work on agentic AI, today. With Uday, we talk through how Uber’s developer infrastructure prepared it for AI agents. We look at the systems Uber built before generative AI and the new tools that connect agents to its code, internal services, and engineering knowledge. Uday explains how engineers use background agents, why tools like Slate make development (and bugfixing!) more efficient, and how code review is changing. We also cover Uber’s approach to token costs and how it measures productivity as the engineer’s role changes. Timestamps 00:00 Intro 02:48 Uday’s early days at Uber 05:40 Uber’s move to microservices 07:55 Uber’s engineering team, then and now 09:05 Developer tooling before AI 16:03 DevPods 19:28 Building for AI agents 29:27 MCP gateway 34:37 Agent Skills repo 38:46 The context graph and Cortana 47:54 PRD and ERD tool 50:45 Minion 54:46 Testing and code review with Bazel, Slate, and Capri 1:12:26 Edge Gateway, Shepherd, and Wisdom 1:21:33 The changing role of engineer and measuring productivity 1:30:40 Uday’s favorite new products — The Pragmatic Engineer deepdives relevant for this episode: • How Uber uses AI for development: inside look • Scaling Uber with Thuan Pham (Uber's first CTO) • Inside Uber's move to the Cloud • The Platform and Program Split at Uber • Hypergrowth startups: Uber and CloudKitchens with Charles-Axel Dein • How Uber Built its Observability Platform • How Uber is Measuring Engineering Productivity • Developer Experience at Uber with Gautam Korlam — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email [email protected]. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
93 MIN
OCT 7, 2026
Building resilient systems with Sam Newman
Brought to You By: • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable. • Entire – Git hosting, rebuilt for the agentic era. Every agent session, prompt and tool calls: stored in your repo. • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. — Sam Newman wrote one of the most-read books about microservices (“Building Microservices”), but he calls them an architecture of “last resort.” In this episode of the Pragmatic Engineer podcast, Sam explains his thinking on this, and he’s certainly well placed to do so; he was in the room when the term “microservices” was coined. We discuss what teams get wrong when adopting microservices, why independent deployment matters, and how microservices can help teams work more autonomously. We also delve into his new book, ‘Building Resilient Distributed Systems’, and Sam explains his three rules for distributed systems, why observability is essential, and also why it’s vital to take business context into account when deciding whether to fail open or fail closed on errors. We also explore how AI is changing software development, from specs versus code as a source of truth to cognitive debt and cognitive surrender. Sam shares how modular architecture can help teams experiment with AI while maintaining understanding of the systems being built. Timestamps 00:00 Intro 03:16 Sam’s path into tech 09:32 Thoughtworks 20:55 The rise of microservices 33:37 Are specs becoming more important than code? 45:22 Building Resilient Distributed Systems (Sam’s new book) 52:35 Three rules of distributed systems 56:16 Observability 1:02:20 Resilience tradeoffs 1:07:54 Idempotency 1:15:58 Thundering herds 1:21:03 Business context and resilience decisions 1:25:51 Resilience engineering: four concepts 1:32:42 AI and resilience 1:36:26 AI’s limitations and where to use it 1:40:06 Cognitive debt and cognitive surrender 1:45:02 Modular architecture and AI software factories 1:51:53 Resources for learning software architecture 1:55:30 Where to find Sam — The Pragmatic Engineer deepdives relevant for this episode: • Scaling Uber with Thuan Pham (Uber’s first CTO) • What is good software architecture at Netflix? • The past and future of modern backend practices • What is reliability engineering, and the history of SRE • How to debug large, distributed systems: Antithesis • Designing Data-intensive Applications with Martin Kleppmann • Building Bluesky: a Distributed Social Network — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email [email protected]. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
118 MIN