The Pragmatic Engineer

Gergely Orosz

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

  1. 15 min ago

    Why performant code matters (but gets widely ignored), with Casey Muratori

    Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • Sentry – application monitoring software considered “not bad” by millions of developers. • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable. — There can be few people around who care about software performance more than today’s pod guest, Casey Muratori. He’s a programmer and videogame developer, founder of Molly Rocket, and creator of  Handmade Hero – a long-running series about building a game from scratch. He also evangelizes about performance on his Substack, Computer, Enhance. We got to know each other about three years ago, first via messages, including this one from Casey: “Why does the industry zeitgeist place so little emphasis on software performance when there seems to be overwhelming evidence that performance is critical to their bottom line? Like you, I run a Substack for professional programmers, but I focus exclusively on software performance. Although we are quite large by Substack standards, so a certain subset of programmers must believe performance is important, I nonetheless hear lots of dismissive excuses when I post on social media. This happens so frequently, I devoted an entire article to cataloging the extensive pro-performance evidence we already have from the world's leading software companies: Performance Excuses Debunked. Strangely, nobody has a rebuttal to why performance is important. When I point people to this, they actually tend to agree. But the prevailing attitude nonetheless stays the same.” I’m delighted we finally have Casey on the podcast because it’s overdue! In this episode, we discuss why software performance matters, why it’s overlooked, and how developers can get better at writing performant code. We explore why performance should be considered during design, the value of learning to read assembly & understanding how CPUs work, Casey’s critique of ‘clean code’, and why he believes testing shouldn't drive software design. We touch on how videogame development has changed, and influential game engines. Casey also tells us why he prefers to write code by hand, not with AI, and more. — Timestamps 00:00 Intro 05:17 Games at Microsoft 12:52 Building games 16:00 Why performance matters 27:12 Why you should learn to read assembly 30:36 Designing for optimization 42:51 How to get better at writing performant software 49:04 Understanding how the CPU works 55:53 Building games then and now 1:05:56 How game engines changed building games 1:10:48 Why new games compete with old games 1:13:25 GTA 6: why is it taking so long? 1:16:59 Casey’s critique of clean code 1:21:48 Casey’s take on TDD 1:24:30 What is good code? 1:27:32 What makes a good software engineer? 1:33:56 Why Casey doesn’t code with AI 1:39:01 AI’s impact on the game industry 1:44:43 AI and burnout 1:50:21 Why you should read papers — The Pragmatic Engineer deepdives relevant for this episode: •Pushing software engineering limits with “napkin math” with Simon Eskildsen  •How Games Typically Get Built: prototyping, game engines, and a different type of QA •Game Development Basics: deepdive on how game studios differ from standard software teams •Inside Linear's Engineering Culture: building a performant product with a tiny team •Building a best-selling game with a tiny team – with Jonas Tyroller. A two-person team built a game that sold 1M+ copies More on premature optimization: read or watch Casey’s extended take on “premature optimization is the root of all evil”: https://www.computerenhance.com/p/theroot — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    Why performant code matters (but gets widely ignored), with Casey Muratori
  2. 6 days ago

    From Chrome DevTools to AI Engineering, with Addy Osmani

    Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • Google Cloud Run – run your code and host LLMs directly on top of Google’s scalable infrastructure, without having to worry about managing infra. • Sentry – application monitoring software considered “not bad” by millions of developers — Addy Osmani spent more than 14 years at Google, working on Chrome, DevTools, Core Web Vitals, and most recently, AI developer experience. If you've ever opened Chrome DevTools, or optimized a page for Core Web Vitals, you’ve used software built by Addy Osmani. In this episode, I sit down with Addy and we talk about his path from building a web browser aged just 16 to becoming a director at Google. We discuss what he learned from building tools for millions of developers, Google’s engineering culture, and why he continued doing hands-on coding work as a manager. We also get into how he works with AI agents today, the risks of ‘cognitive surrender,’ his approach to ‘loop engineering,’ and why it’s good to develop skills in product management, go-to-market, and other areas. — Timestamps 00:00 Intro 02:50 Addy’s current workflow 05:11 Addy’s path into tech 15:04 Addy’s work on jQuery 16:44 TodoMVC 21:44 Getting hired at Google and working on Chrome 27:17 Building dev tools 40:15 Core Web Vitals 45:42 Google’s engineering culture 51:03 Addy’s career trajectory at Google 57:55 The director role at Google 1:01:40 Cognitive debt and cognitive surrender 1:03:03 Working with agents 1:05:52 Loop engineering 1:12:55 The changing role of the software engineer 1:18:15 How Addy uses AI in writing 1:27:40 What’s next for Addy 1:28:47 Career advice — The Pragmatic Engineer deepdives relevant for this episode: • What is loop engineering? • Inside Google’s engineering culture • How AI-assisted coding will change software engineering: hard truths • Are AI agents actually slowing us down? • How Claude Code is built • How Codex is built • From IDEs to AI Agents with Steve Yegge • Google’s engineering culture: the podcast — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    From Chrome DevTools to AI Engineering, with Addy Osmani
  3. 12 Aug

    Stop being skeptical about AI for development with Charity Majors

    Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • WorkOS – everything you need to make your app enterprise ready. • Buildkite – CI software built to absorb whatever your coding agents throw at the build queue — In 2025, it was rational to be skeptical about AI, but in 2026 it’s clear that AI is changing all of the industry, and there’s less and less place for skepticism. This take is from one of my favorite voices in software reliability and observability: Charity Majors, CTO and cofounder of Honeycomb, co-author of Observability Engineering. (Note: the second edition of Observability Engineering is out, and it’s pretty much a full rewrite of the book, I recommend grabbing it if you’re building reliable systems) In this episode, I sat down with Charity to discuss how her thinking on AI has evolved, why she believes it is becoming a foundational part of software engineering, and what that means for how teams build, review, and ship software. We explore how AI is changing the economics of code generation, why reliability and verification are increasingly the bottlenecks, and why the rise of non-deterministic systems requires more engineering discipline. Charity shares her views on code reviews, observability, DevOps, leadership, and why both AI skeptics and enthusiasts are getting important things right. — Timestamps 00:00 Intro 02:56 How Parse led to Honeycomb 06:00 The limits of individual productivity metrics 09:08 How Charity’s perspective on AI has evolved 13:50 Rewriting code vs. editing code 19:20 Production as a stage of development 22:14 Code reviews 26:56 Non-deterministic systems 31:11 Sensible uses of AI 37:41 The two AI camps 44:40 Why AI works so well for building software 49:42 DevOps 55:13 Modern observability 1:00:40 Handling context overload 1:01:56 What’s new in Observability Engineering’s 2nd edition 1:07:45 What effective leadership looks like 1:10:25 Engineering management: what is changing? 1:16:31 Junior engineers 1:18:01 AI fatigue 1:21:39 Book recommendations — The Pragmatic Engineer deepdives relevant for this episode: • Shipping to production • Deepdive: How 10 tech companies choose the next generation of dev tools • Why is Meta destroying its engineering organization? • When AI writes almost all code, what happens to software engineering? • Are AI agents actually slowing us down? • Observability: the present and future, with Charity Majors • The third golden age of software engineering – thanks to AI, with Grady Booch — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    Stop being skeptical about AI for development with Charity Majors
  4. 29 Jul

    Formal methods with Hillel Wayne

    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. • WorkOS – everything you need to make your app enterprise ready. — There’s a popular theory that AI will finally make formal verification mainstream because mathematical proof of correctness will be needed when machines write most or all of the code. But will this happen? Today, I’m talking with one of the best people to tackle the prediction. Hillel Wayne is a formal methods consultant, educator, and author, who’s deeply interested in software history.  In this episode of Pragmatic Engineer podcast, I sit down with Hillel to compare software engineering with traditional engineering, discuss where formal methods fit into modern software development, and we explore why they are essential for some of the world's most complex systems. We cover the formal specification language, TLA+, walk through several formal verification tools, examine why distributed systems are so difficult to reason about, and look into whether AI will make formal methods accessible to more engineering teams. — Timestamps 00:00 Intro 03:21 The Crossover Project 10:26 What software engineering does better 14:19 What traditional engineering does better 17:06 Formal methods 28:21 TLA+: what it is and demo 35:47 TLA+ at Amazon 36:59 Ways distributed systems break 39:52 Formal methods and systems thinking 45:09 The value of learning math 49:12 What TLA+ is good for and isn’t 51:39 Alloy: a declarative language for software modeling 57:42 Other formal methods tools 1:00:13 Property-based testing 1:04:20 AI and the need for formal verification 1:11:18 Logic for programmers 1:13:24 Hillel’s 2025 prediction on AI’s impact 1:20:19 Book recommendation — The Pragmatic Engineer deepdives relevant for this episode: • How to debug large, distributed systems: Antithesis • How AWS S3 is built • Paying down tech debt • How Big Tech does quality assurance (QA) • Bug management that works • Resiliency in distributed systems — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    Formal methods with Hillel Wayne
  5. 15 Jul

    Context engineering with Dex Horthy

    Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • Buildkite – CI software built to absorb whatever your coding agents throw at the build queue. • Sentry – application monitoring software considered “not bad” by millions of developers. — Knowing how LLM contexts work and how to work around context limitations – aka “context engineering” – is becoming more important for software engineers working with LLMs. Let’s look into what works and what doesn’t, today. In this episode of The Pragmatic Engineer podcast, I sit down with the CEO and cofounder of HumanLayer, Dex Horthy, who coined the term “context engineering”. We discuss the ideas behind this context engineering, harness engineering, loop engineering, software factories, why his approach to AI-assisted software development has evolved, and how HumanLayer is helping engineering teams automate more of the software development lifecycle without sacrificing code quality. — Timestamps 00:00 Intro 03:35 Dex’s path into tech 05:36 Early work in platform engineering 07:30 Replicated 13:26 Metalytics 14:38 12-factor agents 20:29 Context engineering 25:40 Harness engineering 28:13 Context overload 32:47 Loop engineering 46:36 Software factories before and after AI 52:35 Automation limits 57:20 Three options for automating 1:01:02 RPI framework 1:06:18 Intentional compaction 1:13:50 Token harder vs. token smarter 1:18:46 AI slop 1:21:17 HumanLayer 1:31:11 Book recommendation — The Pragmatic Engineer deepdives relevant for this episode: • How Uber uses AI for development: inside look • Are AI agents actually slowing us down? • AI Tooling for Software Engineers in 2026 • Vibe Coding as a software engineer • How Claude Code is built • AI Engineering in the real world • The AI Engineering Stack • How AI-assisted coding will change software engineering: hard truths • The creator of OpenClaw: "I ship code I don't read" — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    Context engineering with Dex Horthy
  6. 8 Jul

    The Pragmatic Engineer AMA

    Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. — In this special “ask me anything” episode of Pragmatic Engineer podcast, I am in the hot seat facing questions sent in by subscribers that are read out by guest Volodymyr Giginiak, CTO and cofounder of Wordsmith AI, a legal tech startup (note: I’m an investor). I tackle your questions on the software industry, AI, hiring, engineering organizations, career growth, the business model of the Pragmatic Engineer, and more. We also discuss where software engineering is headed, and I offer advice on some specific situations. Thanks to everyone who sent questions! — Timestamps 00:00 Intro 01:56 From Uber to writing 09:22 AI-native SDLC 14:00 AI and hiring 19:06 Engineers currently thriving 22:18 Junior roles 24:44 Meta’s war mode 27:54 AI at Big Tech vs. startups 36:46 Tech debt 41:36 Types of engineering managers 44:40 Measuring AI productivity 48:30 The value of CS degrees 50:53 AI at Pragmatic Engineer 56:09 Future-proofing your career 1:01:36 The EU job market 1:03:55 Making money as a creator 1:08:20 What’s next for The Pragmatic Engineer 1:09:27 Bunq and Pollen 1:13:38 Spotting trends 1:14:33 Book updates 1:15:20 Favorite books & tech products 1:17:13 What won’t change in engineering — The Pragmatic Engineer deepdives relevant for this episode: • State of the software engineering job market in 2026 • The impact of AI on software engineers in 2026: key trends.  • How 10 tech companies choose the next generation of dev tools  • The reality of tech interviews — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    The Pragmatic Engineer AMA
  7. 1 Jul

    How Kent Beck shapes the software engineering industry

    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. • WorkOS – everything you need to make your app enterprise ready. — Few have made as big an impact on software engineering as this week’s guest on the Pragmatic Engineer podcast, Kent Beck. He created Extreme Programming, pioneered test-driven development (TDD), co-created JUnit, and is one of the authors of the famous ‘Agile Manifesto’. But these days, he's re-examining many ideas for the age of AI, and says we’re failing to accumulate trust during this new era at the same high rate as new code is being accumulated. In this episode of the Pragmatic Engineer podcast, Kent and I dig into his journey from discovering Smalltalk in the early days of personal computing, to helping define modern software engineering practices. We explore the origins of TDD, design patterns, Extreme Programming, and Agile – along with some lessons learned at Apple and Facebook. Kent explains why he believes software engineering is about far more than writing code, why no one yet knows exactly how engineers should work alongside AI agents, and how his "explore, expand, extract" framework can help engineers navigate major technology shifts. — Timestamps 00:00 Intro 03:47 Human engineers aren’t going away 08:00 Kent's path into tech 13:50 Undergraduate and graduate studies 17:21 Kent’s first programming job 18:54 The rise and fall of Smalltalk 27:04 Working with Ward Cunningham 37:36 Design patterns 44:05 Working at Apple 51:08 CRC Cards 59:29 Testing tools in the language 1:04:22 The C3 project with Martin Fowler 1:09:54 Extreme Programming 1:16:25 Developing TDD 1:25:07 Writing the Agile Manifesto 1:30:00 Agile’s impact 1:32:40 Agile’s downside 1:37:32 The Dotcom Bust 1:44:30 Lessons from working at Facebook 1:59:44 Kent’s ‘Good to Great’ program at Facebook 2:06:07 Soft skills engineers need to learn 2:09:30 AI and the challenges of acceleration 2:15:53 Explore, expand, extract 2:22:33 What Kent is excited about — The Pragmatic Engineer deepdives relevant for this episode: • Measuring developer productivity? A response to McKinsey – co-written with Kent Beck • TDD, AI agents and coding with Kent Beck • Paying down tech debt • The past and future of modern backend practices — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    How Kent Beck shapes the software engineering industry
  8. 24 Jun

    Tech interviews with NeetCode

    Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • Sentry – application monitoring software considered “not bad” by millions of developers • Google Cloud Run – run your code and host LLMs directly on top of Google’s scalable infrastructure, without having to worry about managing infra. — Navdeep Singh – oftentimes better known as NeetCode – is the creator of NeetCode.io, one of the most popular coding interview preparation platforms and YouTube channels for software engineers. Before building NeetCode full-time, he worked as a software engineer at Amazon and Google. In this episode of The Pragmatic Engineer, I sit down with Neet to discuss his path from Amazon and Google to building his own startup, why he left Amazon after just two months, what he learned at Google, and the decision to leave a stable engineering career to bet on himself. We also discuss what coding interview preparation teaches beyond passing interviews, the value of going deep on difficult problems, and why systems thinking and domain expertise remain essential engineering skills in the age of AI. Throughout the conversation, NeetCode makes the case that learning hard things is one of the single best investments an engineer can make, helping build the judgment and expertise that remain valuable no matter how the tools change. — Timestamps 00:00 Intro 02:57 Neet’s take on coding interviews 06:41 Getting into tech 08:56 Why Neet isn't a fan of the CAP theorem 13:12 Quitting Amazon after two months 18:22 Google vs Amazon 22:26 The origins of NeetCode 25:27 Leaving Google to go all in on NeetCode 32:02 Why Neet doesn't fix every bug 39:26 The value of coding interview prep 42:57 Systems thinking and domain expertise 47:28 Hiring at Big Tech 52:15 Tech stack at Neetcode 57:57 The NeetCode  redesign contest 1:01:46 The future of software engineers 1:09:04 Hot takes: AGI, AI skill erosion, personality traits 1:22:49 “Maybe some people should just give up” 1:24:39 How to be a standout engineer 1:27:55 Book recommendation — The Pragmatic Engineer deepdives relevant for this episode: • Learnings from conducting ~1,000 interviews at Amazon • How experienced engineers get unstuck in coding interviews • The Reality of Tech Interviews in 2025 • Tech hiring: is this an inflection point? • AI fakers exposed in tech dev recruitment: postmortem — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

    Tech interviews with NeetCode

About

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

You Might Also Like