Top 100 most popular podcasts
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
?? Linear ? ? ? The system for modern product development.
?
Michelle Lim joined Warp as engineer number one and is now building her own startup, Flint. She brings a strong product-first mindset shaped by her time at Facebook, Slack, Robinhood, and Warp. Michelle shares why she chose Warp over safer offers, how she evaluates early-stage opportunities, and what she believes distinguishes great founding engineers.
Together, we cover how product-first engineers create value, why negotiating equity at early-stage startups requires a different approach, and why asking founders for references is a smart move. Michelle also shares lessons from building consumer and infrastructure products, how she thinks about tech stack choices, and how engineers can increase their impact by taking on work outside their job descriptions.
If you want to understand what founders look for in early engineers or how to grow into a founding-engineer role, this episode is full of practical advice backed by real examples
?
Timestamps
(00:00) Intro
(01:32) How Michelle got into software engineering
(03:30) Michelle?s internships
(06:19) Learnings from Slack
(08:48) Product learnings at Robinhood
(12:47) Joining Warp as engineer #1
(22:01) Negotiating equity
(26:04) Asking founders for references
(27:36) The top reference questions to ask
(32:53) The evolution of Warp?s tech stack
(35:38) Product-first engineering vs. code-first
(38:27) Hiring product-first engineers
(41:49) Different types of founding engineers
(44:42) How Flint uses AI tools
(45:31) Avoiding getting burned in founder exits
(49:26) Hiring top talent
(50:15) An overview of Flint
(56:08) Advice for aspiring founding engineers
(1:01:05) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Thriving as a founding engineer: lessons from the trenches
? From software engineer to AI engineer
? AI Engineering in the real world
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Statsig are helping make the first-ever Pragmatic Summit a reality. Join me and 400 other top engineers and leaders on 11 February, in San Francisco for a special one-day event. Reserve your spot here.
?? Linear ? ? ? The system for modern product development. Engineering teams today move much faster, thanks to AI. Because of this, coordination increasingly becomes a problem. This is where Linear helps fast-moving teams stay focused. Check out Linear.
?
As software engineers, what should we know about writing secure code?
Johannes Dahse is the VP of Code Security at Sonar and a security expert with 20 years of industry experience. In today?s episode of The Pragmatic Engineer, he joins me to talk about what security teams actually do, what developers should own, and where real-world risk enters modern codebases.
We cover dependency risk, software composition analysis, CVEs, dynamic testing, and how everyday development practices affect security outcomes. Johannes also explains where AI meaningfully helps, where it introduces new failure modes, and why understanding the code you write and ship remains the most reliable defense.
If you build and ship software, this episode is a practical guide to thinking about code security under real-world engineering constraints.
?
Timestamps
(00:00) Intro
(02:31) What is penetration testing?
(06:23) Who owns code security: devs or security teams?
(14:42) What is code security?
(17:10) Code security basics for devs
(21:35) Advanced security challenges
(24:36) SCA testing
(25:26) The CVE Program
(29:39) The State of Code Security report
(32:02) Code quality vs security
(35:20) Dev machines as a security vulnerability
(37:29) Common security tools
(42:50) Dynamic security tools
(45:01) AI security reviews: what are the limits?
(47:51) AI-generated code risks
(49:21) More code: more vulnerabilities
(51:44) AI?s impact on code security
(58:32) Common misconceptions of the security industry
(1:03:05) When is security ?good enough??
(1:05:40) Johannes?s favorite programming language
?
The Pragmatic Engineer deepdives relevant for this episode:
? What is Security Engineering?
?? Mishandled security vulnerability in Next.js
?? Okta Schooled on Its Security Practices
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. AI-accelerated development isn?t just about shipping faster: it?s about measuring whether, what you ship, actually delivers value. This is where modern experimentation with Statsig comes in. Check it out.
?? Linear ? ? ? The system for modern product development. I had a jaw-dropping experience when I dropped in for the weekly ?Quality Wednesdays? meeting at Linear. Every week, every dev fixes at least one quality isse, large or small. Even if it?s one pixel misalignment, like this one. I?ve yet to see a team obsess this much about quality. Read more about how Linear does Quality Wednesdays ? it?s fascinating!
?
Martin Fowler is one of the most influential people within software architecture, and the broader tech industry. He is the Chief Scientist at Thoughtworks and the author of Refactoring and Patterns of Enterprise Application Architecture, and several other books. He has spent decades shaping how engineers think about design, architecture, and process, and regularly publishes on his blog, MartinFowler.com.
In this episode, we discuss how AI is changing software development: the shift from deterministic to non-deterministic coding; where generative models help with legacy code; and the narrow but useful cases for vibe coding. Martin explains why LLM output must be tested rigorously, why refactoring is more important than ever, and how combining AI tools with deterministic techniques may be what engineering teams need.
We also revisit the origins of the Agile Manifesto and talk about why, despite rapid changes in tooling and workflows, the skills that make a great engineer remain largely unchanged.
?
Timestamps
(00:00) Intro
(01:50) How Martin got into software engineering
(07:48) Joining Thoughtworks
(10:07) The Thoughtworks Technology Radar
(16:45) From Assembly to high-level languages
(25:08) Non-determinism
(33:38) Vibe coding
(39:22) StackOverflow vs. coding with AI
(43:25) Importance of testing with LLMs
(50:45) LLMs for enterprise software
(56:38) Why Martin wrote Refactoring
(1:02:15) Why refactoring is so relevant today
(1:06:10) Using LLMs with deterministic tools
(1:07:36) Patterns of Enterprise Application Architecture
(1:18:26) The Agile Manifesto
(1:28:35) How Martin learns about AI
(1:34:58) Advice for junior engineers
(1:37:44) The state of the tech industry today
(1:42:40) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Vibe coding as a software engineer
? AI Engineering in the real world
? What changed in 50 years of computing
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Statsig enables two cultures at once: continuous shipping and experimentation. Companies like Notion went from single-digit experiments per quarter to over 300 experiments with Statsig. Start using Statsig with a generous free tier, and a $50K startup program.
?? Linear ? ? ? The system for modern product development. When most companies hit real scale, they start to slow down, and are faced with ?process debt.? This often hits software engineers the most. Companies switch to Linear to hit a hard reset on this process debt ? ones like Scale cut their bug resolution in half after the switch. Check out Linear?s migration guide for details.
?
What?s it like to work as a software engineer inside one of the world?s biggest streaming companies?
In this special episode recorded at Netflix?s headquarters in Los Gatos, I sit down with Elizabeth Stone, Netflix?s Chief Technology Officer. Before becoming CTO, Elizabeth led data and insights at Netflix and was VP of Science at Lyft. She brings a rare mix of technical depth, product thinking, and people leadership.
We discuss what it means to be ?unusually responsible? at Netflix, how engineers make decisions without layers of approval, and how the company balances autonomy with guardrails for high-stakes projects like Netflix Live. Elizabeth shares how teams self-reflect and learn from outages and failures, why Netflix doesn?t do formal performance reviews, and what new grads bring to a company known for hiring experienced engineers.
This episode offers a rare inside look at how Netflix engineers build, learn, and lead at a global scale.
?
Timestamps
(00:00) Intro
(01:44) The scale of Netflix
(03:31) Production software stack
(05:20) Engineering challenges in production
(06:38) How the Open Connect delivery network works
(08:30) From pitch to play
(11:31) How Netflix enables engineers to make decisions
(13:26) Building Netflix Live for global sports
(16:25) Learnings from Paul vs. Tyson for NFL Live
(17:47) Inside the control room
(20:35) What being unusually responsible looks like
(24:15) Balancing team autonomy with guardrails for Live
(30:55) The high talent bar and introduction of levels at Netflix
(36:01) The Keeper Test
(41:27) Why engineers leave or stay
(44:27) How AI tools are used at Netflix
(47:54) AI?s highest-impact use cases
(50:20) What new grads add and why senior talent still matters
(53:25) Open source at Netflix
(57:07) Elizabeth?s parting advice for new engineers to succeed at Netflix
?
The Pragmatic Engineer deepdives relevant for this episode:
? The end of the senior-only level at Netflix
? Netflix revamps its compensation philosophy
? Live streaming at world-record scale with Ashutosh Agrawal
? What is good software architecture?
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Companies like Graphite, Notion, and Brex rely on Statsig to measure the impact of the pace they ship. Get a 30-day enterprise trial here.
?? Linear ? The system for modern product development. Linear is a heavy user of Swift: they just redesigned their native iOS app using their own take on Apple?s Liquid Glass design language. The new app is about speed and performance ? just like Linear is. Check it out.
?
Chris Lattner is one of the most influential engineers of the past two decades. He created the LLVM compiler infrastructure and the Swift programming language ? and Swift opened iOS development to a broader group of engineers. With Mojo, he?s now aiming to do the same for AI, by lowering the barrier to programming AI applications.
I sat down with Chris in San Francisco, to talk language design, lessons on designing Swift and Mojo, and ? of course! ? compilers. It?s hard to find someone who is as enthusiastic and knowledgeable about compilers as Chris is!
We also discussed why experts often resist change even when current tools slow them down, what he learned about AI and hardware from his time across both large and small engineering teams, and why compiler engineering remains one of the best ways to understand how software really works.
?
Timestamps
(00:00) Intro
(02:35) Compilers in the early 2000s
(04:48) Why Chris built LLVM
(08:24) GCC vs. LLVM
(09:47) LLVM at Apple
(19:25) How Chris got support to go open source at Apple
(20:28) The story of Swift
(24:32) The process for designing a language
(31:00) Learnings from launching Swift
(35:48) Swift Playgrounds: making coding accessible
(40:23) What Swift solved and the technical debt it created
(47:28) AI learnings from Google and Tesla
(51:23) SiFive: learning about hardware engineering
(52:24) Mojo?s origin story
(57:15) Modular?s bet on a two-level stack
(1:01:49) Compiler shortcomings
(1:09:11) Getting started with Mojo
(1:15:44) How big is Modular, as a company?
(1:19:00) AI coding tools the Modular team uses
(1:22:59) What kind of software engineers Modular hires
(1:25:22) A programming language for LLMs? No thanks
(1:29:06) Why you should study and understand compilers
?
The Pragmatic Engineer deepdives relevant for this episode:
?? AI Engineering in the real world
? Uber's crazy YOLO app rewrite, from the front seat
? Python, Go, Rust, TypeScript and AI with Armin Ronacher
? Microsoft?s developer tools roots
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
?? Linear ? The system for modern product development.
?
Addy Osmani is Head of Chrome Developer Experience at Google, where he leads teams focused on improving performance, tooling, and the overall developer experience for building on the web. If you?ve ever opened Chrome?s Developer Tools bar, you?ve definitely used features Addy has built. He?s also the author of several books, including his latest, Beyond Vibe Coding, which explores how AI is changing software development.
In this episode of The Pragmatic Engineer, I sit down with Addy to discuss how AI is reshaping software engineering workflows, the tradeoffs between speed and quality, and why understanding generated code remains critical. We dive into his article The 70% Problem, which explains why AI tools accelerate development but struggle with the final 30% of software quality?and why this last 30% is tackled easily by software engineers who understand how the system actually works.
?
Timestamps
(00:00) Intro
(02:17) Vibe coding vs. AI-assisted engineering
(06:07) How Addy uses AI tools
(13:10) Addy?s learnings about applying AI for development
(18:47) Addy?s favorite tools
(22:15) The 70% Problem
(28:15) Tactics for efficient LLM usage
(32:58) How AI tools evolved
(34:29) The case for keeping expectations low and control high
(38:05) Autonomous agents and working with them
(42:49) How the EM and PM role changes with AI
(47:14) The rise of new roles and shifts in developer education
(48:11) The importance of critical thinking when working with AI
(54:08) LLMs as a tool for learning
(1:03:50) Rapid questions
?
The Pragmatic Engineer deepdives relevant for this episode:
?? Vibe Coding as a software engineer
?? How AI-assisted coding will change software engineering: hard truths
?? AI Engineering in the real world
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Something interesting is happening with the latest generation of tech giants. Rather than building advanced experimentation tools themselves, companies like Anthropic, Figma, Notion and a bunch of others? are just using Statsig. Statsig has rebuilt this entire suite of data tools that was available at maybe 10 or 15 giants until now. Check out Statsig.
?? Linear ? The system for modern product development. Linear is just so fast to use ? and it enables velocity in product workflows. Companies like Perplexity and OpenAI have already switched over, because simplicity scales. Go ahead and check out Linear and see why it feels like a breeze to use.
?
What is it really like to be an engineer at Google?
In this special deep dive episode, we unpack how engineering at Google actually works. We spent months researching the engineering culture of the search giant, and talked with 20+ current and former Googlers to bring you this deepdive with Elin Nilsson, tech industry researcher for The Pragmatic Engineer and a former Google intern.
Google has always been an engineering-driven organization. We talk about its custom stack and tools, the design-doc culture, and the performance and promotion systems that define career growth. We also explore the culture that feels built for engineers: generous perks, a surprisingly light on-call setup often considered the best in the industry, and a deep focus on solving technical problems at scale.
If you are thinking about applying to Google or are curious about how the company?s engineering culture has evolved, this episode takes a clear look at what it was like to work at Google in the past versus today, and who is a good fit for today?s Google.
Jump to interesting parts:
(13:50) Tech stack
(1:05:08) Performance reviews (GRAD)
(2:07:03) The culture of continuously rewriting things
?
Timestamps
(00:00) Intro
(01:44) Stats about Google
(11:41) The shared culture across Google
(13:50) Tech stack
(34:33) Internal developer tools and monorepo
(43:17) The downsides of having so many internal tools at Google
(45:29) Perks
(55:37) Engineering roles
(1:02:32) Levels at Google
(1:05:08) Performance reviews (GRAD)
(1:13:05) Readability
(1:16:18) Promotions
(1:25:46) Design docs
(1:32:30) OKRs
(1:44:43) Googlers, Nooglers, ReGooglers
(1:57:27) Google Cloud
(2:03:49) Internal transfers
(2:07:03) Rewrites
(2:10:19) Open source
(2:14:57) Culture shift
(2:31:10) Making the most of Google, as an engineer
(2:39:25) Landing a job at Google
?
The Pragmatic Engineer deepdives relevant for this episode:
?? Inside Google?s engineering culture
?? Performance calibrations at tech companies
?? Promotions and tooling at Google
?? The man behind the Big Tech comics: Google cartoonist Manu Cornet
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Most teams end up in this situation: ship a feature to 10% of users, wait a week, check three different tools, try to correlate the data, and you?re still unsure if it worked. The problem is that each tool has its own user identification and segmentation logic. Statsig solved this problem by building everything within a unified platform. Check out Statsig.
?? Linear ? The system for modern product development. In the episode, Armin talks about how he uses an army of ?AI interns? at his startup. With Linear, you can easily do the same: Linear?s Cursor integration lets you add Cursor as an agent to your workspace. This agent then works alongside you and your team to make code changes or answer questions. You?ve got to try it out: give Linear a spin and see how it integrates with Cursor.
?
Armin Ronacher is the creator of the Flask framework for Python, was one of the first engineers hired at Sentry, and now the co-founder of a new startup. He has spent his career thinking deeply about how tools shape the way we build software.
In this episode of The Pragmatic Engineer Podcast, he joins me to talk about how programming languages compare, why Rust may not be ideal for early-stage startups, and how AI tools are transforming the way engineers work. Armin shares his view on what continues to make certain languages worth learning, and how agentic coding is driving people to work more, sometimes to their own detriment.
We also discuss:
? Why the Python 2 to 3 migration was more challenging than expected
? How Python, Go, Rust, and TypeScript stack up for different kinds of work
? How AI tools are changing the need for unified codebases
? What Armin learned about error handling from his time at Sentry
? And much more
Jump to interesting parts:
? (06:53) How Python, Go, and Rust stack up and when to use each one
? (30:08) Why Armin has changed his mind about AI tools
? (50:32) How important are language choices from an error-handling perspective?
?
Timestamps
(00:00) Intro
(01:34) Why the Python 2 to 3 migration created so many challenges
(06:53) How Python, Go, and Rust stack up and when to use each one
(08:35) The friction points that make Rust a bad fit for startups
(12:28) How Armin thinks about choosing a language for building a startup
(22:33) How AI is impacting the need for unified code bases
(24:19) The use cases where AI coding tools excel
(30:08) Why Armin has changed his mind about AI tools
(38:04) Why different programming languages still matter but may not in an AI-driven future
(42:13) Why agentic coding is driving people to work more and why that?s not always good
(47:41) Armin?s error-handling takeaways from working at Sentry
(50:32) How important is language choice from an error-handling perspective
(56:02) Why the current SDLC still doesn?t prioritize error handling
(1:04:18) The challenges language designers face
(1:05:40) What Armin learned from working in startups and who thrives in that environment
(1:11:39) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Statsig built a complete set of data tools that allow engineering teams to measure the impact of their work. This toolkit is SO valuable to so many teams, that OpenAI - who was a huge user of Statsig - decided to acquire the company, the news announced last week. Talk about validation! Check out Statsig.
?? Linear ? The system for modern product development. Here?s an interesting story: OpenAI switched to Linear as a way to establish a shared vocabulary between teams. Every project now follows the same lifecycle, uses the same labels, and moves through the same states. Try Linear for yourself.
?
What does it take to do well at a hyper-growth company? In this episode of The Pragmatic Engineer, I sit down with Charles-Axel Dein, one of the first engineers at Uber, who later hired me there. Since then, he?s gone on to work at CloudKitchens. He?s also been maintaining the popular Professional programming reading list GitHub repo for 15 years, where he collects articles that made him a better programmer.
In our conversation, we dig into what it?s really like to work inside companies that grow rapidly in scale and headcount. Charles shares what he?s learned about personal productivity, project management, incidents, interviewing, plus how to build flexible skills that hold up in fast-moving environments.
Jump to interesting parts:
? 10:41 ? the reality of working inside a hyperscale company
? 41:10 ? the traits of high-performing engineers
? 1:03:31 ? Charles? advice for getting hired in today?s job market
We also discuss:
? How to spot the signs of hypergrowth (and when it?s slowing down)
? What sets high-performing engineers apart beyond shipping
? Charles?s personal productivity tips, favorite reads, and how he uses reading to uplevel his skills
? Strategic tips for building your resume and interviewing
? How imposter syndrome is normal, and how leaning into it helps you grow
? And much more!
If you?re at a fast-growing company, considering joining one, or looking to land your next role, you won?t want to miss this practical advice on hiring, interviewing, productivity, leadership, and career growth.
?
Timestamps
(00:00) Intro
(04:04) Early days at Uber as engineer #20
(08:12) CloudKitchens? similarities with Uber
(10:41) The reality of working at a hyperscale company
(19:05) Tenancies and how Uber deployed new features
(22:14) How CloudKitchens handles incidents
(26:57) Hiring during fast-growth
(34:09) Avoiding burnout
(38:55) The popular Professional programming reading list repo
(41:10) The traits of high-performing engineers
(53:22) Project management tactics
(1:03:31) How to get hired as a software engineer
(1:12:26) How AI is changing hiring
(1:19:26) Unexpected ways to thrive in fast-paced environments
(1:20:45) Dealing with imposter syndrome
(1:22:48) Book recommendations
(1:27:26) The problem with survival bias
(1:32:44) AI?s impact on software development
(1:42:28) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?? Software engineers leading projects
?? The Platform and Program split at Uber
?? Inside Uber?s move to the Cloud
?? How Uber built its observability platform
?? From Software Engineer to AI Engineer ? with Janvi Kalra
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more. Statsig built a complete set of data tools that allow engineering teams to measure the impact of their work. This toolkit is SO valuable to so many teams, that OpenAI - who was a huge user of Statsig - decided to acquire the company, the news announced last week. Talk about validation! Check out Statsig.
?? Linear ? The system for modern product development. Here?s an interesting story: OpenAI switched to Linear as a way to establish a shared vocabulary between teams. Every project now follows the same lifecycle, uses the same labels, and moves through the same states. Try Linear for yourself.
?
The Pragmatic Engineer Podcast is back with the Fall 2025 season. Expect new episodes to be published on most Wednesdays, looking ahead.
Code Complete is one of the most enduring books on software engineering. Steve McConnell wrote the 900-page handbook just five years into his career, capturing what he wished he?d known when starting out. Decades later, the lessons remain relevant, and Code Complete remains a best-seller.
In this episode, we talk about what has aged well, what needed updating in the second edition, and the broader career principles Steve has developed along the way. From his ?career pyramid? model to his critique of ?lily pad hopping,? and why periods of working in fast-paced, all-in environments can be so rewarding, the emphasis throughout is on taking ownership of your career and making deliberate choices.
We also discuss:
? Top-down vs. bottom-up design and why most engineers default to one approach
? Why rewriting code multiple times makes it better
? How taking a year off to write Code Complete crystallized key lessons
? The 3 areas software designers need to understand, and why focusing only on technology may be the most limiting
? And much more!
Steve rarely gives interviews, so I hope you enjoy this conversation, which we recorded in Seattle.
?
Timestamps
(00:00) Intro
(01:31) How and why Steve wrote Code Complete
(08:08) What code construction is and how it differs from software development
(11:12) Top-down vs. bottom-up design approach
(14:46) Why design documents frustrate some engineers
(16:50) The case for rewriting everything three times
(20:15) Steve?s career before and after Code Complete
(27:47) Steve?s career advice
(44:38) Three areas software designers need to understand
(48:07) Advice when becoming a manager, as a developer
(53:02) The importance of managing your energy
(57:07) Early Microsoft and why startups are a culture of intense focus
(1:04:14) What changed in the second edition of Code Complete
(1:10:50) AI?s impact on software development: Steve?s take
(1:17:45) Code reviews and GenAI
(1:19:58) Why engineers are becoming more full-stack
(1:21:40) Could AI be the exception to ?no silver bullets??
(1:26:31) Steve?s advice for engineers on building a meaningful career
?
The Pragmatic Engineer deepdives relevant for this episode:
? What changed in 50 years of computing
? The past and future of modern backend practices
? The Philosophy of Software Design ? with John Ousterhout
? AI tools for software engineers, but without the hype ? with Simon Willison (co-creator of Django)
? TDD, AI agents and coding ? with Kent Beck
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Brought to You By:
?? WorkOS ? The modern identity platform for B2B SaaS.
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
? Sonar ? Code quality and code security for ALL code.
?
In this episode of The Pragmatic Engineer, I sit down with Peter Walker, Head of Insights at Carta, to break down how venture capital and startups themselves are changing.
We go deep on the numbers: why fewer companies are getting funded despite record VC investment levels, how hiring has shifted dramatically since 2021, and why solo founders are on the rise even though most VCs still prefer teams. We also unpack the growing emphasis on ARR per FTE, what actually happens in bridge and down rounds, and why the time between fundraising rounds has stretched far beyond the old 18-month cycle.
We cover what all this means for engineers: what to ask before joining a startup, how to interpret valuation trends, and what kind of advisor roles startups are actually looking for.
If you work at a startup, are considering joining one, or just want a clearer picture of how venture-backed companies operate today, this episode is for you.
?
Timestamps
(00:00) Intro
(01:21) How venture capital works and the goal of VC-backed startups
(03:10) Venture vs. non-venture backed businesses
(05:59) Why venture-backed companies prioritize growth over profitability
(09:46) A look at the current health of venture capital
(13:19) The hiring slowdown at startups
(16:00) ARR per FTE: The new metric VCs care about
(21:50) Priced seed rounds vs. SAFEs
(24:48) Why some founders are incentivized to raise at high valuations
(29:31) What a bridge round is and why they can signal trouble
(33:15) Down rounds and how optics can make or break startups
(36:47) Why working at startups offers more ownership and learning
(37:47) What the data shows about raising money in the summer
(41:45) The length of time it takes to close a VC deal
(44:29) How AI is reshaping startup formation, team size, and funding trends
(48:11) Why VCs don?t like solo founders
(50:06) How employee equity (ESOPs) work
(53:50) Why acquisition payouts are often smaller than employees expect
(55:06) Deep tech vs. software startups:
(57:25) Startup advisors: What they do, how much equity they get
(1:02:08) Why time between rounds is increasing and what that means
(1:03:57) Why it?s getting harder to get from Seed to Series A
(1:06:47) A case for quitting (sometimes)
(1:11:40) How to evaluate a startup before joining as an engineer
(1:13:22) The skills engineers need to thrive in a startup environment
(1:16:04) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
? Graphite ? The AI developer productivity platform.
?
There?s no shortage of bold claims about AI and developer productivity, but how do you separate signal from noise?
In this episode of The Pragmatic Engineer, I?m joined by Laura Tacho, CTO at DX, to cut through the hype and share how well (or not) AI tools are actually working inside engineering orgs. Laura shares insights from DX?s research across 180+ companies, including surprising findings about where developers save the most time, why devs don?t use AI at all, and what kinds of rollouts lead to meaningful impact.
We also discuss:
? The problem with oversimplified AI headlines and how to think more critically about them
? An overview of the DX AI Measurement framework
? Learnings from Booking.com?s AI tool rollout
? Common reasons developers aren?t using AI tools
? Why using AI tools sometimes decreases developer satisfaction
? Surprising results from DX?s 180+ company study
? How AI-generated documentation differs from human-written docs
? Why measuring developer experience before rolling out AI is essential
? Why Laura thinks roadmaps are on their way out
? And much more!
?
Timestamps
(00:00) Intro
(01:23) Laura?s take on AI overhyped headlines
(10:46) Common questions Laura gets about AI implementation
(11:49) How to measure AI?s impact
(15:12) Why acceptance rate and lines of code are not sufficient measures of productivity
(18:03) The Booking.com case study
(20:37) Why some employees are not using AI
(24:20) What developers are actually saving time on
(29:14) What happens with the time savings
(31:10) The surprising results from the DORA report on AI in engineering
(33:44) A hypothesis around AI and flow state and the importance of talking to developers
(35:59) What?s working in AI architecture
(42:22) Learnings from WorkHuman?s adoption of Copilot
(47:00) Consumption-based pricing, and the difficulty of allocating resources to AI
(52:01) What DX Core 4 measures
(55:32) The best outcomes of implementing AI
(58:56) Why highly regulated industries are having the best results with AI rollout
(1:00:30) Indeed?s structured AI rollout
(1:04:22) Why migrations might be a good use case for AI (and a tip for doing it!)
(1:07:30) Advice for engineering leads looking to get better at AI tooling and implementation
(1:08:49) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? AI Engineering in the real world
? Measuring software engineering productivity
? A new way to measure developer productivity ? from the creators of DORA and SPACE
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? WorkOS ? The modern identity platform for B2B SaaS.
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
?? Sonar ? Code quality and code security for ALL code.
?
Steve Yegge? is known for his writing and ?rants?, including the famous ?Google Platforms Rant? and the evergreen ?Get that job at Google? post. He spent 7 years at Amazon and 13 at Google, as well as some time at Grab before briefly retiring from tech. Now out of retirement, he?s building AI developer tools at Sourcegraph?drawn back by the excitement of working with LLMs. He?s currently writing the book Vibe Coding: Building Production-Grade Software With GenAI, Chat, Agents, and Beyond.
In this episode of The Pragmatic Engineer, I sat down with Steve in Seattle to talk about why Google consistently failed at building platforms, why AI coding feels easy but is hard to master, and why a new role, the AI Fixer, is emerging. We also dig into why he?s so energized by today?s AI tools, and how they?re changing the way software gets built.
We also discuss:
? The ?interview anti-loop? at Google and the problems with interviews
? An inside look at how Amazon operated in the early days before microservices
? What Steve liked about working at Grab
? Reflecting on the Google platforms rant and why Steve thinks Google is still terrible at building platforms
? Why Steve came out of retirement
? The emerging role of the ?AI Fixer? in engineering teams
? How AI-assisted coding is deceptively simple, but extremely difficult to steer
? Steve?s advice for using AI coding tools and overcoming common challenges
? Predictions about the future of developer productivity
? A case for AI creating a real meritocracy
? And much more!
?
Timestamps
(00:00) Intro
(04:55) An explanation of the interview anti-loop at Google and the shortcomings of interviews
(07:44) Work trials and why entry-level jobs aren?t posted for big tech companies
(09:50) An overview of the difficult process of landing a job as a software engineer
(15:48) Steve?s thoughts on Grab and why he loved it
(20:22) Insights from the Google platforms rant that was picked up by TechCrunch
(27:44) The impact of the Google platforms rant
(29:40) What Steve discovered about print ads not working for Google
(31:48) What went wrong with Google+ and Wave
(35:04) How Amazon has changed and what Google is doing wrong
(42:50) Why Steve came out of retirement
(45:16) Insights from ?the death of the junior developer? and the impact of AI
(53:20) The new role Steve predicts will emerge
(54:52) Changing business cycles
(56:08) Steve?s new book about vibe coding and Gergely?s experience
(59:24) Reasons people struggle with AI tools
(1:02:36) What will developer productivity look like in the future
(1:05:10) The cost of using coding agents
(1:07:08) Steve?s advice for vibe coding
(1:09:42) How Steve used AI tools to work on his game Wyvern
(1:15:00) Why Steve thinks there will actually be more jobs for developers
(1:18:29) A comparison between game engines and AI tools
(1:21:13) Why you need to learn AI now
(1:30:08) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?? The full circle of developer productivity with Steve Yegge
?? Inside Amazon?s engineering culture
?? Vibe coding as a software engineer
?? AI engineering in the real world
?? Inside Sourcegraph?s engineering culture?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
? Graphite ? The AI developer productivity platform.
? Augment Code ? AI coding assistant that pro engineering teams love.
?
Steve Huynh spent 17 years at Amazon, including four as a Principal Engineer. In this episode of The Pragmatic Engineer, I join Steve in his studio for a deep dive into what the Principal role actually involves, why the path from Senior to Principal is so tough, and how even strong engineers can get stuck. Not because they?re unqualified, but because the bar is exceptionally high.
We discuss what?s expected at the Principal level, the kind of work that matters most, and the trade-offs that come with the title. Steve also shares how Amazon?s internal policies shaped his trajectory, and what made the Principal Engineer community one of the most rewarding parts of his time at the company.
We also go into:
? Why being promoted from Senior to Principal is one of the hardest jumps in tech
? How Amazon?s freedom of movement policy helped Steve work across multiple teams, from Kindle to Prime Video
? The scale of Amazon: handling 10k?100k+ requests per second and what that means for engineering
? Why latency became a company-wide obsession?and the research that tied it directly to revenue
? Why companies should start with a monolith, and what led Amazon to adopt microservices
? What makes the Principal Engineering community so special
? Amazon?s culture of learning from its mistakes, including COEs (correction of errors)
? The pros and cons of the Principal Engineer role
? What Steve loves about the leadership principles at Amazon
? Amazon?s intense writing culture and 6-pager format
? Why Amazon patents software and what that process looks like
? And much more!
?
Timestamps
(00:00) Intro
(01:11) What Steve worked on at Amazon, including Kindle, Prime Video, and payments
(04:38) How Steve was able to work on so many teams at Amazon
(09:12) An overview of the scale of Amazon and the dependency chain
(16:40) Amazon?s focus on latency and the tradeoffs they make to keep latency low at scale
(26:00) Why companies should start with a monolith
(26:44) The structure of engineering at Amazon and why Amazon?s Principal is so hard to reach
(30:44) The Principal Engineering community at Amazon
(36:06) The learning benefits of working for a tech giant
(38:44) Five challenges of being a Principal Engineer at Amazon
(49:50) The types of managing work you have to do as a Principal Engineer
(51:47) The pros and cons of the Principal Engineer role
(54:59) What Steve loves about Amazon?s leadership principles
(59:15) Amazon?s intense focus on writing
(1:01:11) Patents at Amazon
(1:07:58) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?? Inside Amazon?s engineering culture
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? WorkOS ? The modern identity platform for B2B SaaS.
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
? Sonar ? Code quality and code security for ALL code.
?
What happens when a company goes all in on AI?
At Shopify, engineers are expected to utilize AI tools, and they?ve been doing so for longer than most. Thanks to early access to models from GitHub Copilot, OpenAI, and Anthropic, the company has had a head start in figuring out what works.
In this live episode from LDX3 in London, I spoke with Farhan Thawar, VP of Engineering, about how Shopify is building with AI across the entire stack. We cover the company?s internal LLM proxy, its policy of unlimited token usage, and how interns help push the boundaries of what?s possible.
In this episode, we cover:
? How Shopify works closely with AI labs
? The story behind Shopify?s recent Code Red
? How non-engineering teams are using Cursor for vibecoding
? Tobi Lütke?s viral memo and Shopify?s expectations around AI
? A look inside Shopify?s LLM proxy?used for privacy, token tracking, and more
? Why Shopify places no limit on AI token spending
? Why AI-first isn?t about reducing headcount?and why Shopify is hiring 1,000 interns
? How Shopify?s engineering department operates and what?s changed since adopting AI tooling
? Farhan?s advice for integrating AI into your workflow
? And much more!
?
Timestamps
(00:00) Intro
(02:07) Shopify?s philosophy: ?hire smart people and pair with them on problems?
(06:22) How Shopify works with top AI labs
(08:50) The recent Code Red at Shopify
(10:47) How Shopify became early users of GitHub Copilot and their pivot to trying multiple tools
(12:49) The surprising ways non-engineering teams at Shopify are using Cursor
(14:53) Why you have to understand code to submit a PR at Shopify
(16:42) AI tools' impact on SaaS
(19:50) Tobi Lütke?s AI memo
(21:46) Shopify?s LLM proxy and how they protect their privacy
(23:00) How Shopify utilizes MCPs
(26:59) Why AI tools aren?t the place to pinch pennies
(30:02) Farhan?s projects and favorite AI tools
(32:50) Why AI-first isn?t about freezing headcount and the value of hiring interns
(36:20) How Shopify?s engineering department operates, including internal tools
(40:31) Why Shopify added coding interviews for director-level and above hires
(43:40) What has changed since Spotify added AI tooling
(44:40) Farhan?s advice for implementing AI tools
?
The Pragmatic Engineer deepdives relevant for this episode:
? How Shopify built its Live Globe for Black Friday
? Inside Shopify's leveling split
? Real-world engineering challenges: building Cursor
? How Anthropic built Artifacts
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
? Graphite ? The AI developer productivity platform.
? Augment Code ? AI coding assistant that pro engineering teams love
?
GitHub recently turned 17 years old?but how did it start, how has it evolved, and what does the future look like as AI reshapes developer workflows?
In this episode of The Pragmatic Engineer, I?m joined by Thomas Dohmke, CEO of GitHub. Thomas has been a GitHub user for 16 years and an employee for 7. We talk about GitHub?s early architecture, its remote-first operating model, and how the company is navigating AI?from Copilot to agents. We also discuss why GitHub hires junior engineers, how the company handled product-market fit early on, and why being a beloved tool can make shipping harder at times.
Other topics we discuss include:
? How GitHub?s architecture evolved beyond its original Rails monolith
? How GitHub runs as a remote-first company?and why they rarely use email
? GitHub?s rigorous approach to security
? Why GitHub hires junior engineers
? GitHub?s acquisition by Microsoft
? The launch of Copilot and how it?s reshaping software development
? Why GitHub sees AI agents as tools, not a replacement for engineers
? And much more!
?
Timestamps
(00:00) Intro
(02:25) GitHub?s modern tech stack
(08:11) From cloud-first to hybrid: How GitHub handles infrastructure
(13:08) How GitHub?s remote-first culture shapes its operations
(18:00) Former and current internal tools including Haystack
(21:12) GitHub?s approach to security
(24:30) The current size of GitHub, including security and engineering teams
(25:03) GitHub?s intern program, and why they are hiring junior engineers
(28:27) Why AI isn?t a replacement for junior engineers
(34:40) A mini-history of GitHub
(39:10) Why GitHub hit product market fit so quickly
(43:44) The invention of pull requests
(44:50) How GitHub enables offline work
(46:21) How monetization has changed at GitHub since the acquisition
(48:00) 2014 desktop application releases
(52:10) The Microsoft acquisition
(1:01:57) Behind the scenes of GitHub?s quiet period
(1:06:42) The release of Copilot and its impact
(1:14:14) Why GitHub decided to open-source Copilot extensions
(1:20:01) AI agents and the myth of disappearing engineering jobs
(1:26:36) Closing
?
The Pragmatic Engineer deepdives relevant for this episode:
? AI Engineering in the real world
? How Linux is built with Greg Kroah-Hartman
? Stacked Diffs (and why you should know about them)
? 50 Years of Microsoft and developer tools
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Sonar ? Code quality and code security for ALL code.
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
? Augment Code ? AI coding assistant that pro engineering teams love.
?
Kent Beck is one of the most influential figures in modern software development. Creator of Extreme Programming (XP), co-author of The Agile Manifesto, and a pioneer of Test-Driven Development (TDD), he?s shaped how teams write, test, and think about code.
Now, with over five decades of programming experience, Kent is still pushing boundaries?this time with AI coding tools. In this episode of Pragmatic Engineer, I sit down with him to talk about what?s changed, what hasn?t, and why he?s more excited than ever to code.
In our conversation, we cover:
? Why Kent calls AI tools an ?unpredictable genie??and how he?s using them
? Why Kent no longer has an emotional attachment to any specific programming language
? The backstory of The Agile Manifesto?and why Kent resisted the word ?agile?
? An overview of XP (Extreme Programming) and how Grady Booch played a role in the name
? Tape-to-tape experiments in Kent?s childhood that laid the groundwork for TDD
? Kent?s time at Facebook and how he adapted to its culture and use of feature flags
? And much more!
?
Timestamps
(00:00) Intro
(02:27) What Kent has been up to since writing Tidy First
(06:05) Why AI tools are making coding more fun for Kent and why he compares it to a genie
(13:41) Why Kent says languages don?t matter anymore
(16:56) Kent?s current project building a small talk server
(17:51) How Kent got involved with The Agile Manifesto
(23:46) Gergely?s time at JP Morgan, and why Kent didn?t like the word ?agile?
(26:25) An overview of ?extreme programming? (XP)
(35:41) Kent?s childhood tape-to-tape experiments that inspired TDD
(42:11) Kent?s response to Ousterhout?s criticism of TDD
(50:05) Why Kent still uses TDD with his AI stack
(54:26) How Facebook operated in 2011
(1:04:10) Facebook in 2011 vs. 2017
(1:12:24) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
?? Sinch? ? Connect with customers at every step of their journey.
?? Modal? ? The cloud platform for building AI applications.
?
How has Microsoft changed since its founding in 1975, especially in how it builds tools for developers?
In this episode of The Pragmatic Engineer, I sit down with Scott Guthrie, Executive Vice President of Cloud and AI at Microsoft. Scott has been with the company for 28 years. He built the first prototype of ASP.NET, led the Windows Phone team, led up Azure, and helped shape many of Microsoft?s most important developer platforms.
We talk about Microsoft?s journey from building early dev tools to becoming a top cloud provider?and how it actively worked to win back and grow its developer base.
In this episode, we cover:
? Microsoft?s early years building developer tools
? Why Visual Basic faced resistance from devs back in the day: even though it simplified development at the time
? How .NET helped bring a new generation of server-side developers into Microsoft?s ecosystem
? Why Windows Phone didn?t succeed
? The 90s Microsoft dev stack: docs, debuggers, and more
? How Microsoft Azure went from being the #7 cloud provider to the #2 spot today
? Why Microsoft created VS Code
? How VS Code and open source led to the acquisition of GitHub
? What Scott?s excited about in the future of developer tools and AI
? And much more!
?
Timestamps
(00:00) Intro
(02:25) Microsoft?s early years building developer tools
(06:15) How Microsoft?s developer tools helped Windows succeed
(08:00) Microsoft?s first tools were built to allow less technically savvy people to build things
(11:00) A case for embracing the technology that?s coming
(14:11) Why Microsoft built Visual Studio and .NET
(19:54) Steve Ballmer?s speech about .NET
(22:04) The origins of C# and Anders Hejlsberg?s impact on Microsoft
(25:29) The 90?s Microsoft stack, including documentation, debuggers, and more
(30:17) How productivity has changed over the past 10 years
(32:50) Why Gergely was a fan of Windows Phone?and Scott?s thoughts on why it didn?t last
(36:43) Lessons from working on (and fixing) Azure under Satya Nadella
(42:50) Codeplex and the acquisition of GitHub
(48:52) 2014: Three bold projects to win the hearts of developers
(55:40) What Scott?s excited about in new developer tools and cloud computing
(59:50) Why Scott thinks AI will enhance productivity but create more engineering jobs
?
The Pragmatic Engineer deepdives relevant for this episode:
? Microsoft is dogfooding AI dev tools? future
? Microsoft?s developer tools roots
? Why are Cloud Development Environments spiking in popularity, now?
? Engineering career paths at Big Tech and scaleups
? How Linux is built with Greg Kroah-Hartman
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? Statsig ? ? ? The unified platform for flags, analytics, experiments, and more.
?? Sinch? ? Connect with customers at every step of their journey.
?? Cortex? ? Your Portal to Engineering Excellence.
?
What does it take to land a job as an AI Engineer?and thrive in the role?
In this episode of Pragmatic Engineer, I?m joined by Janvi Kalra, currently an AI Engineer at OpenAI. Janvi shares how she broke into tech with internships at top companies, landed a full-time software engineering role at Coda, and later taught herself the skills to move into AI Engineering: by things like building projects in her free time, joining hackathons, and ultimately proving herself and earning a spot on Coda?s first AI Engineering team.
In our conversation, we dive into the world of AI Engineering and discuss three types of AI companies, how to assess them based on profitability and growth, and practical advice for landing your dream job in the field.
We also discuss the following:
? How Janvi landed internships at Google and Microsoft, and her tips for interview prepping
? A framework for evaluating AI startups
? An overview of what an AI Engineer does
? A mini curriculum for self-learning AI: practical tools that worked for Janvi
? The Coda project that impressed CEO Shishir Mehrotra and sparked Coda Brain
? Janvi?s role at OpenAI and how the safety team shapes responsible AI
? How OpenAI blends startup speed with big tech scale
? Why AI Engineers must be ready to scrap their work and start over
? Why today?s engineers need to be product-minded, design-aware, full-stack, and focused on driving business outcomes
? And much more!
?
Timestamps
(00:00) Intro
(02:31) How Janvi got her internships at Google and Microsoft
(03:35) How Janvi prepared for her coding interviews
(07:11) Janvi?s experience interning at Google
(08:59) What Janvi worked on at Microsoft
(11:35) Why Janvi chose to work for a startup after college
(15:00) How Janvi picked Coda
(16:58) Janvi?s criteria for picking a startup now
(18:20) How Janvi evaluates ?customer obsession?
(19:12) Fast?an example of the downside of not doing due diligence
(21:38) How Janvi made the jump to Coda?s AI team
(25:48) What an AI Engineer does
(27:30) How Janvi developed her AI Engineering skills through hackathons
(30:34) Janvi?s favorite AI project at Coda: Workspace Q&A
(37:40) Learnings from interviewing at 46 companies
(40:44) Why Janvi decided to get experience working for a model company
(43:17) Questions Janvi asks to determine growth and profitability
(45:28) How Janvi got an offer at OpenAI, and an overview of the interview process
(49:08) What Janvi does at OpenAI
(51:01) What makes OpenAI unique
(52:30) The shipping process at OpenAI
(55:41) Surprising learnings from AI Engineering
(57:50) How AI might impact new graduates
(1:02:19) The impact of AI tools on coding?what is changing, and what remains the same
(1:07:51) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?? AI Engineering in the real world
?? Building, launching, and scaling ChatGPT Images
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? WorkOS ? The modern identity platform for B2B SaaS.
?? Modal? ? The cloud platform for building AI applications.
?? Cortex? ? Your Portal to Engineering Excellence.
?
Kubernetes is the second-largest open-source project in the world. What does it actually do?and why is it so widely adopted?
In this episode of The Pragmatic Engineer, I?m joined by Kat Cosgrove, who has led several Kubernetes releases. Kat has been contributing to Kubernetes for several years, and originally got involved with the project through K3s (the lightweight Kubernetes distribution).
In our conversation, we discuss how Kubernetes is structured, how it scales, and how the project is managed to avoid contributor burnout.
We also go deep into:
? An overview of what Kubernetes is used for
? A breakdown of Kubernetes architecture: components, pods, and kubelets
? Why Google built Borg, and how it evolved into Kubernetes
? The benefits of large-scale open source projects?for companies, contributors, and the broader ecosystem
? The size and complexity of Kubernetes?and how it?s managed
? How the project protects contributors with anti-burnout policies
? The size and structure of the release team
? What KEPs are and how they shape Kubernetes features
? Kat?s views on GenAI, and why Kubernetes blocks using AI, at least for documentation
? Where Kat would like to see AI tools improve developer workflows
? Getting started as a contributor to Kubernetes?and the career and networking benefits that come with it
? And much more!
?
Timestamps
(00:00) Intro
(02:02) An overview of Kubernetes and who it?s for
(04:27) A quick glimpse at the architecture: Kubernetes components, pods, and cubelets
(07:00) Containers vs. virtual machines
(10:02) The origins of Kubernetes
(12:30) Why Google built Borg, and why they made it an open source project
(15:51) The benefits of open source projects
(17:25) The size of Kubernetes
(20:55) Cluster management solutions, including different Kubernetes services
(21:48) Why people contribute to Kubernetes
(25:47) The anti-burnout policies Kubernetes has in place
(29:07) Why Kubernetes is so popular
(33:34) Why documentation is a good place to get started contributing to an open-source project
(35:15) The structure of the Kubernetes release team
(40:55) How responsibilities shift as engineers grow into senior positions
(44:37) Using a KEP to propose a new feature?and what?s next
(48:20) Feature flags in Kubernetes
(52:04) Why Kat thinks most GenAI tools are scams?and why Kubernetes blocks their use
(55:04) The use cases Kat would like to have AI tools for
(58:20) When to use Kubernetes
(1:01:25) Getting started with Kubernetes
(1:04:24) How contributing to an open source project is a good way to build your network
(1:05:51) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?? Backstage: an open source developer portal
?? How Linux is built with Greg Kroah-Hartman
?? Software engineers leading projects
?? What TPMs do and what software engineers can learn from them
?? Engineering career paths at Big Tech and scaleups
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? Modal? ? The cloud platform for building AI applications
?? CodeRabbit?? ? Cut code review time and bugs in half. Use the code PRAGMATIC to get one month free.
?
What happens when LLMs meet real-world codebases? In this episode of The Pragmatic Engineer, I am joined by Varun Mohan, CEO and Co-Founder of Windsurf. Varun talks me through the technical challenges of building an AI-native IDE (Windsurf) ?and how these tools are changing the way software gets built.
We discuss:
? What building self-driving cars taught the Windsurf team about evaluating LLMs
? How LLMs for text are missing capabilities for coding like ?fill in the middle?
? How Windsurf optimizes for latency
? Windsurf?s culture of taking bets and learning from failure
? Breakthroughs that led to Cascade (agentic capabilities)
? Why the Windsurf teams build their LLMs
? How non-dev employees at Windsurf build custom SaaS apps ? with Windsurf!
? How Windsurf empowers engineers to focus on more interesting problems
? The skills that will remain valuable as AI takes over more of the codebase
? And much more!
?
Timestamps
(00:00) Intro
(01:37) How Windsurf tests new models
(08:25) Windsurf?s origin story
(13:03) The current size and scope of Windsurf
(16:04) The missing capabilities Windsurf uncovered in LLMs when used for coding
(20:40) Windsurf?s work with fine-tuning inside companies
(24:00) Challenges developers face with Windsurf and similar tools as codebases scale
(27:06) Windsurf?s stack and an explanation of FedRAMP compliance
(29:22) How Windsurf protects latency and the problems with local data that remain unsolved
(33:40) Windsurf?s processes for indexing code
(37:50) How Windsurf manages data
(40:00) The pros and cons of embedding databases
(42:15) ?The split brain situation??how Windsurf balances present and long-term
(44:10) Why Windsurf embraces failure and the learnings that come from it
(46:30) Breakthroughs that fueled Cascade
(48:43) The insider?s developer mode that allows Windsurf to dogfood easily
(50:00) Windsurf?s non-developer power user who routinely builds apps in Windsurf
(52:40) Which SaaS products won?t likely be replaced
(56:20) How engineering processes have changed at Windsurf
(1:00:01) The fatigue that goes along with being a software engineer, and how AI tools can help
(1:02:58) Why Windsurf chose to fork VS Code and built a plugin for JetBrains
(1:07:15) Windsurf?s language server
(1:08:30) The current use of MCP and its shortcomings
(1:12:50) How coding used to work in C#, and how MCP may evolve
(1:14:05) Varun?s thoughts on vibe coding and the problems non-developers encounter
(1:19:10) The types of engineers who will remain in demand
(1:21:10) How AI will impact the future of software development jobs and the software industry
(1:24:52) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? IDEs with GenAI features that Software Engineers love
? AI tooling for Software Engineers in 2024: reality check
? How AI-assisted coding will change software engineering: hard truths
? AI tools for software engineers, but without the hype
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? WorkOS ? The modern identity platform for B2B SaaS.
?? The Software Engineer?s Guidebook: Written by me (Gergely) ? now out in audio form as well.
?
How do you get product and engineering to truly operate as one team? Today, I?m joined by Ebi Atawodi, Director of Product Management at YouTube Studio, and a former product leader at Netflix and Uber.
Ebi was the first PM I partnered with after stepping into engineering management at Uber, and we both learned a lot together. We share lessons from our time at Uber and discuss how strong product-engineering partnerships drive better outcomes, grow teams, foster cultures of ownership, and unlock agency, innovation, and trust.
In this episode, we cover:
? Why you need to earn a new team's trust before trying to drive change
? How practices like the "business scorecard" and ?State of the Union? updates helped communicate business goals and impact to teams at Uber
? How understanding business impact leads to more ideas and collaboration
? A case for getting to know your team as people, not just employees
? Why junior employees should have a conversation with a recruiter every six months
? Ebi?s approach to solving small problems with the bet that they?ll unlock larger, more impactful solutions
? Why investing time in trust and connection isn't at odds with efficiency
? The qualities of the best engineers?and why they?re the same traits that make people successful in any role
? The three-pronged definition of product: business impact, feasibility, and customer experience
? Why you should treat your career as a project
? And more!
?
Timestamps
(00:00) Intro
(02:19) The product review where Gergely first met Ebi
(05:45) Ebi?s learning about earning trust before being direct
(08:01) The value of tying everything to business impact
(11:53) What meetings looked like at Uber before Ebi joined
(12:35) How Ebi?s influence created more of a start-up environment
(15:12) An overview of ?State of the Union?
(18:06) How Ebi helped the cash team secure headcount
(24:10) How a dinner out helped Ebi and Gergely work better together
(28:11) Why good leaders help their employees reach their full potential
(30:24) Product-minded engineers and the value of trust
(33:04) Ebi?s approach to passion in work: loving the problem, the work, and the people
(36:00) How Gergely and Ebi secretly bootstrapped a project then asked for headcount
(36:55) How a real problem led to a novel solution that also led to a policy change
(40:30) Ebi?s approach to solving problems and tying them to a bigger value unlock
(43:58) How Ebi developed her playbooks for vision setting, fundraising, and more
(45:59) Why Gergely prioritized meeting people on his trips to San Francisco
(46:50) A case for making in-person interactions more about connection
(50:44) The genius-jerk archetype vs. brilliant people who struggle with social skills
(52:48) The traits of the best engineers?and why they apply to other roles, too
(1:03:27) Why product leaders need to love the product and the business
(1:06:54) The value of a good PM
(1:08:05) Sponsorship vs. mentorship and treating your career like a project
(1:11:50) A case for playing the long game
?
The Pragmatic Engineer deepdives relevant for this episode:
? The product-minded software engineer
? Working with Product Managers as an Engineering Manager or Engineer
? Working with Product Managers: advice from PMs
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Graphite ? The AI developer productivity platform.
? Sentry ? Error and performance monitoring for developers.
?
Reddit?s native mobile apps are more complex than most of us would assume: both the iOS and Android apps are about 2.5 million lines of code, have 500+ screens, and a total of around 200 native iOS and Android engineers work on them.
But it wasn?t always like this.
In 2021, Reddit started to double down on hiring native mobile engineers, and they quietly rebuilt the Android and iOS apps from the ground up. The team introduced a new tech stack called the ?Core Stack? ? all the while users remained largely unaware of the changes. What drove this overhaul, and how did the team pull it off?
In this episode of The Pragmatic Engineer, I?m joined by three engineers from Reddit?s mobile platform team who led this work: Lauren Darcey (Head of Mobile Platform), Brandon Kobilansky (iOS Platform Lead), and Eric Kuck (Principal Android Engineer). We discuss how the team transitioned to a modern architecture, revamped their testing strategy, improved developer experience ? while they also greatly improved the app?s user experience.
We also get into:
? How Reddit structures its mobile teams?and why iOS and Android remain intentionally separate
? The scale of Reddit?s mobile codebase and how it affects compile time
? The shift from MVP to MVVM architecture
? Why Reddit took a bet on Jetpack Compose, but decided (initially) against using SwiftUI
? How automated testing evolved at Reddit
? Reddit?s approach to server-driven-mobile-UI
? What the mobile platforms team looks for in a new engineering hire
? Reddit?s platform team?s culture of experimentation and embracing failure
? And much more!
If you are interested in large-scale rewrites or native mobile engineering challenges: this episode is for you.
?
Timestamps
(00:00) Intro
(02:04) The scale of the Android code base
(02:42) The scale of the iOS code base
(03:26) What the compile time is for both Android and iOS
(05:33) The size of the mobile platform teams
(09:00) Why Reddit has so many mobile engineers
(11:28) The different types of testing done in the mobile platform
(13:20) The benefits and drawbacks of testing
(17:00) How Eric, Brandon, and Lauren use AI in their workflows
(20:50) Why Reddit grew its mobile teams in 2021
(26:50) Reddit?s modern tech stack, Corestack
(28:48) Why Reddit shifted from MVP architecture to MVVM
(30:22) The architecture on the iOS side
(32:08) The new design system
(30:55) The impact of migrating from Rust to GraphQL
(38:20) How the backend drove the GraphQL migration and why it was worth the pain
(43:17) Why the iOS team is replacing SliceKit with SwiftUI
(48:08) Why the Android team took a bet on Compose
(51:25) How teams experiment with server-driven UI?when it worked, and when it did not
(54:30) Why server-driven UI isn?t taking off, and why Lauren still thinks it could work
(59:25) The ways that Reddit?s modernization has paid off, both in DevX and UX
(1:07:15) The overall modernization philosophy; fixing pain points
(1:09:10) What the mobile platforms team looks for in a new engineering hire
(1:16:00) Why startups may be the best place to get experience
(1:17:00) Why platform teams need to feel safe to fail
(1:20:30) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? The platform and program split at Uber
? Why and how Notion went native on iOS and Android
? Cross-platform mobile development
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? WorkOS ? The modern identity platform for B2B SaaS.
?? Modal? ? The cloud platform for building AI applications
? Vanta ? Automate compliance and simplify security with Vanta.
?
What is it like to work at Amazon as a software engineer? Dave Anderson spent over 12 years at Amazon working closely with engineers on his teams: starting as an Engineering Manager (or, SDM in Amazon lingo) and eventually becoming a Director of Engineering. In this episode, he shares a candid look into Amazon?s engineering culture?from how promotions work to why teams often run like startups.
We get into the hiring process, the role of bar raisers, the pros and cons of extreme frugality, and what it takes to succeed inside one of the world?s most operationally intense companies.
We also look at how engineering actually works day to day at Amazon?from the tools teams choose to the way they organize and deliver work.
We also discuss:
? The levels at Amazon, from SDE L4 to Distinguished Engineer and VP
? Why engineering managers at Amazon need to write well
? The ?Bar Raiser? role in Amazon interview loops
? Why Amazon doesn?t care about what programming language you use in interviews
? Amazon?s oncall process
? The pros and cons of Amazon?s extreme frugality
? What to do if you're getting negative performance feedback
? The importance of having a strong relationship with your manager
? The surprising freedom Amazon teams have to choose their own stack, tools, and ways of working ? and how a team chose to use Lisp (!)
? Why startups love hiring former Amazon engineers
? Dave?s approach to financial independence and early retirement
? And more!
?
Timestamps
(00:00) Intro
(02:08) An overview of Amazon?s levels for devs and engineering managers
(07:04) How promotions work for developers at Amazon, and the scope of work at each level
(12:29) Why managers feel pressure to grow their teams
(13:36) A step-by-step, behind-the-scenes glimpse of the hiring process
(23:40) The wide variety of tools used at Amazon
(26:27) How oncall works at Amazon
(32:06) The general approach to handling outages (severity 1-5)
(34:40) A story from Uber illustrating the Amazon outage mindset
(37:30) How VPs assist with outages
(41:38) The culture of frugality at Amazon
(47:27) Amazon?s URA target?and why it?s mostly not a big deal
(53:37) How managers handle the ?least effective? employees
(58:58) Why other companies are also cutting lower performers
(59:55) Dave?s advice for engineers struggling with performance feedback
(1:04:20) Why good managers are expected to bring talent with them to a new org
(1:06:21) Why startups love former Amazon engineers
(1:16:09) How Dave planned for an early retirement
(1:18:10) How a LinkedIn post turned into Scarlet Ink
?
The Pragmatic Engineer deepdives relevant for this episode:
? Inside Amazon?s engineering culture
? A day in the life of a senior manager at Amazon
? Amazon?s Operational Plan process with OP1 and OP2
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
?? CodeRabbit?? ? Cut code review time and bugs in half. Use the code PRAGMATIC to get one month free.
?? Modal? ? The cloud platform for building AI applications.
?
How will AI tools change software engineering? Tools like Cursor, Windsurf and Copilot are getting better at autocomplete, generating tests and documentation. But what is changing, when it comes to software design?
Stanford professor John Ousterhout thinks not much. In fact, he believes that great software design is becoming even more important as AI tools become more capable in generating code.
In this episode of The Pragmatic Engineer, John joins me to talk about why design still matters and how most teams struggle to get it right. We dive into his book A Philosophy of Software Design, unpack the difference between top-down and bottom-up approaches, and explore why some popular advice, like writing short methods or relying heavily on TDD, does not hold up, according to John.
We also explore:
? The differences between working in industry vs. academia
? Why John believes software design will become more important as AI capabilities expand
? The top-down and bottoms-up design approaches ? and why you should use both
? John?s ?design it twice? principle
? Why deep modules are essential for good software design
? Best practices for special cases and exceptions
? The undervalued trait of empathy in design thinking
? Why John advocates for doing some design upfront
? John?s criticisms of the single-responsibility principle, TDD, and why he?s a fan of well-written comments
? And much more!
As a fun fact: when we recorded this podcast, John was busy contributing to the Linux kernel: adding support to the Homa Transport Protocol ? a protocol invented by one of his PhD students. John wanted to make this protocol available more widely, and is putting in the work to do so. What a legend! (We previously covered how Linux is built and how to contribute to the Linux kernel)
?
Timestamps
(00:00) Intro
(02:00) Why John transitioned back to academia
(03:47) Working in academia vs. industry
(07:20) Tactical tornadoes vs. 10x engineers
(11:59) Long-term impact of AI-assisted coding
(14:24) An overview of software design
(15:28) Why TDD and Design Patterns are less popular now
(17:04) Two general approaches to designing software
(18:56) Two ways to deal with complexity
(19:56) A case for not going with your first idea
(23:24) How Uber used design docs
(26:44) Deep modules vs. shallow modules
(28:25) Best practices for error handling
(33:31) The role of empathy in the design process
(36:15) How John uses design reviews
(38:10) The value of in-person planning and using old-school whiteboards
(39:50) Leading a planning argument session and the places it works best
(42:20) The value of doing some design upfront
(46:12) Why John wrote A Philosophy of Software of Design
(48:40) An overview of John?s class at Stanford
(52:20) A tough learning from early in Gergely?s career
(55:48) Why John disagrees with Robert Martin on short methods
(1:10:40) John?s current coding project in the Linux Kernel
(1:14:13) Updates to A Philosophy of Software Design in the second edition
(1:19:12) Rapid fire round
(1:01:08) John?s criticisms of TDD and what he favors instead
(1:05:30) Why John supports the use of comments and how to use them correctly
(1:09:20) How John uses ChatGPT to help explain code in the Linux Kernel
?
The Pragmatic Engineer deepdives relevant for this episode:
? Engineering Planning with RFCs, Design Documents and ADRs
? Software architect archetypes
? Building Bluesky: a distributed social network
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Swarmia ? The engineering intelligence platform for modern software organizations.
? Sentry ? Error and performance monitoring for developers.
?
Why did Meta build its own internal developer tooling instead of using industry-standard solutions like GitHub? Tomas Reimers, former Meta engineer and co-founder of Graphite, joins the show to talk about Meta's custom developer tools ? many of which were years ahead of the industry.
From Phababricator to Sandcastle and Butterflybot, Tomas shares examples of Meta?s internal tools that transformed developer productivity at the tech giant. Why did working with stacked diffs and using monorepos become best practices at Meta? How are these practices influencing the broader industry? Why are code reviews and testing looking to become even more critical as AI transforms how we write software? We answer these, and also discuss:
? Meta's custom internal developer tools
? Why more tech companies are transitioning from polyrepos to monorepos
? A case for different engineering constraints within the same organization
? How stacked diffs solve the code review bottleneck
? Graphite?s origin story and pivot to their current product
? Why code reviews will become a lot more important, the more we use AI coding tools
? Tomas?s favorite engineering metric
? And much more!
?
Timestamps
(00:00) Intro
(02:00) An introduction to Meta?s in-house tooling
(05:07) How Meta?s integrated tools work and who built the tools
(10:20) An overview of the rules engine, Herald
(12:20) The stages of code ownership at Facebook and code ownership at Google and GitHub
(14:39) Tomas?s approach to code ownership
(16:15) A case for different constraints within different parts of an organization
(18:42) The problem that stacked diffs solve for
(25:01) How larger companies drive innovation, and who stacking diffs not for
(30:25) Monorepos vs. polyrepos and why Facebook is transitioning to a monorepo
(35:31) The advantages of monorepos and why GitHub does not support them
(39:55) AI?s impact on software development
(42:15) The problems that AI creates, and possible solutions
(45:25) How testing might change and the testing AI coding tools are already capable of
(48:15) How developer accountability might be a way to solve bugs and bad AI code
(53:20) Why stacking hasn?t caught on and Graphite?s work
(57:10) Graphite?s origin story
(1:01:20) Engineering metrics that matter
(1:06:07) Learnings from building a company for developers
(1:08:41) Rapid fire round
(1:12:41) Closing
?
The Pragmatic Engineer deepdives relevant for this episode:
? Stacked Diffs (and why you should know about them)
? Inside Meta?s engineering culture
? How Uber is measuring engineering productivity
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Graphite ? The AI developer productivity platform.
? Sonar ? Code quality and code security for ALL code.
? Chronosphere ? The observability platform built for control.
?
How do you take a new product idea, and turn it into a successful product? Figma Slides started as a hackathon project a year and a half ago ? and today it?s a full-on product, with more than 4.5M slide decks created by users. I?m joined by two founding engineers on this project: Jonathan Kaufman and Noah Finer.
In our chat, Jonathan and Noah pull back the curtain on what it took to build Figma Slides. They share engineering challenges faced, interesting engineering practices utilized, and what it's like working on a product used by millions of designers worldwide.
We talk about:
? An overview of Figma Slides
? The tech stack behind Figma Slides
? Why the engineering team built grid view before single slide view
? How Figma ensures that all Figma files look the same across browsers
? Figma?s "vibe testing" approach
? How beta testing helped experiment more
? The ?all flags on?, ?all flags off? testing approach
? Engineering crits at Figma
? And much more!
?
Timestamps
(00:00) Intro
(01:45) An overview of Figma Slides and the first steps in building it
(06:41) Why Figma built grid view before single slide view
(10:00) The next steps of building UI after grid view
(12:10) The team structure and size of the Figma Slides team
(14:14) The tech stack behind Figma Slides
(15:31) How Figma uses C++ with bindings
(17:43) The Chrome debugging extension used for C++ and WebAssembly
(21:02) An example of how Noah used the debugging tool
(22:18) Challenges in building Figma Slides
(23:15) An explanation of multiplayer cursors
(26:15) Figma?s philosophy of building interconnected products?and the code behind them
(28:22) An example of a different mouse behavior in Figma
(33:00) Technical challenges in developing single slide view
(35:10) Challenges faced in single-slide view while maintaining multiplayer compatibility
(40:00) The types of testing used on Figma Slides
(43:42) Figma?s zero bug policy
(45:30) The release process, and how engineering uses feature flags
(48:40) How Figma tests Slides with feature flags enabled and then disabled
(51:35) An explanation of eng crits at Figma
(54:53) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Inside Figma?s engineering culture
? Quality Assurance across the tech industry
? Design-first software engineering
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? WorkOS ? The modern identity platform for B2B SaaS.
? Vanta ? Automate compliance and simplify security with Vanta.
?
Linux is the most widespread operating system, globally ? but how is it built? Few people are better to answer this than Greg Kroah-Hartman: a Linux kernel maintainer for 25 years, and one of the 3 Linux Kernel Foundation Fellows (the other two are Linus Torvalds and Shuah Khan). Greg manages the Linux kernel?s stable releases, and is a maintainer of multiple kernel subsystems.
We cover the inner workings of Linux kernel development, exploring everything from how changes get implemented to why its community-driven approach produces such reliable software. Greg shares insights about the kernel's unique trust model and makes a case for why engineers should contribute to open-source projects. We go into:
? How widespread is Linux?
? What is the Linux kernel responsible for ? and why is it a monolith?
? How does a kernel change get merged? A walkthrough
? The 9-week development cycle for the Linux kernel
? Testing the Linux kernel
? Why is Linux so widespread?
? The career benefits of open-source contribution
? And much more!
?
Timestamps
(00:00) Intro
(02:23) How widespread is Linux?
(06:00) The difference in complexity in different devices powered by Linux
(09:20) What is the Linux kernel?
(14:00) Why trust is so important with the Linux kernel development
(16:02) A walk-through of a kernel change
(23:20) How Linux kernel development cycles work
(29:55) The testing process at Kernel and Kernel CI
(31:55) A case for the open source development process
(35:44) Linux kernel branches: Stable vs. development
(38:32) Challenges of maintaining older Linux code
(40:30) How Linux handles bug fixes
(44:40) The range of work Linux kernel engineers do
(48:33) Greg?s review process and its parallels with Uber?s RFC process
(51:48) Linux kernel within companies like IBM
(53:52) Why Linux is so widespread
(56:50) How Linux Kernel Institute runs without product managers
(1:02:01) The pros and cons of using Rust in Linux kernel
(1:09:55) How LLMs are utilized in bug fixes and coding in Linux
(1:12:13) The value of contributing to the Linux kernel or any open-source project
(1:16:40) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
What TPMs do and what software engineers can learn from them
The past and future of modern backend practices
Backstage: an open-source developer portal
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Sentry ? Error and performance monitoring for developers.
? The Software Engineer?s Guidebook: Written by me (Gergely) ? now out in audio form as well.
?
In today?s episode of The Pragmatic Engineer, I am joined by former Uber colleague, Gautam Korlam. Gautam is the Co-Founder of Gitar, an agentic AI startup that automates code maintenance. Gautam was mobile engineer no. 9 at Uber and founding engineer for the mobile platform team ? and so he learned a few things about scaling up engineering teams.
We talk about:
? How Gautam accidentally deleted Uber?s Java monorepo ? really!
? Uber's unique engineering stack and why custom solutions like SubmitQueue were built in-house
? Monorepo: the benefits and downsides of this approach
? From Engineer II to Principal Engineer at Uber: Gautam?s career trajectory
? Practical strategies for building trust and gaining social capital
? How the platform team at Uber operated with a product-focused mindset
? Vibe coding: why it helps with quick prototyping
? How AI tools are changing developer experience and productivity
? Important skills for devs to pick up to remain valuable as AI tools spread
? And more!
?
Timestamps
(00:00) Intro
(02:11) How Gautam accidentally deleted Uber?s Java Monorepo
(05:40) The impact of Gautam?s mistake
(06:35) Uber?s unique engineering stack
(10:15) Uber?s SubmitQueue
(12:44) Why Uber moved to a monorepo
(16:30) The downsides of a monorepo
(18:35) Measurement products built in-house
(20:20) Measuring developer productivity and happiness
(22:52) How Devpods improved developer productivity
(27:37) The challenges with cloud development environments
(29:10) Gautam?s journey from Eng II to Principal Engineer
(32:00) Building trust and gaining social capital
(36:17) An explanation of Principal Engineer at Uber?and the archetypes at Uber
(45:07) The platform and program split at Uber
(48:15) How Gautam and his team supported their internal users
(52:50) Gautam?s thoughts on developer productivity
(59:10) How AI enhances productivity, its limitations, and the rise of agentic AI
(1:04:00) An explanation of Vibe coding
(1:07:34) An overview of Gitar and all it can help developers with
(1:10:44) Top skills to cultivate to add value and stay relevant
(1:17:00) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? The Platform and Program split at Uber
? How Uber is measuring engineering productivity
? Inside Uber?s move to the Cloud
? How Uber built its observability platform
? Software Architect Archetypes
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? WorkOS ? The modern identity platform for B2B SaaS.
? The Software Engineer?s Guidebook: Written by me (Gergely) ? now out in audio form as well
? Augment Code ? AI coding assistant that pro engineering teams love
?
Not many people know that I have a brother: Balint Orosz. Balint is also in tech, but in many ways, is the opposite of me. While I prefer working on backend and business logic, he always thrived in designing and building UIs. While I opted to work at more established companies, he struck out on his own and started his startup, Distinction. And yet, our professional paths have crossed several times: at one point in time I accepted an offer to join Skyscanner as a Principal iOS Engineer ? and as part of the negotiation, I added a clause to my contrac that I will not report directly or indirectly to the Head of Mobile: who happened to be my brother, thanks to Skyscanner acquiring his startup the same month that Skyscanner made an offer to hire me.
Today, Balint is the founder and CEO of Craft, a beloved text editor known for its user-friendly interface and sleek design ? an app that Apple awarded the prestigious Mac App of the Year in 2021.
In our conversation, we explore how Balint approaches building opinionated software with an intense focus on user experience. We discuss the lessons he learned from his time building Distinction and working at Skyscanner that have shaped his approach to Craft and its development.
In this episode, we discuss:
? Balint?s first startup, Distinction, and his time working for Skyscanner after they acquired it
? A case for a balanced engineering culture with both backend and frontend priorities
? Why Balint doesn?t use iOS Auto Layout
? The impact of Craft being personal software on front-end and back-end development
? The balance between customization and engineering fear in frontend work
? The resurgence of local-first software and its role in modern computing
? The value of building a physical prototype
? How Balint uses GenAI to assist with complicated coding projects
? And much more!
?
Timestamps
(00:00) Intro
(02:13) What it?s like being a UX-focused founder
(09:00) Why it was hard to gain recognition at Skyscanner
(13:12) Takeaways from Skyscanner that Balint brought to Craft
(16:50) How frameworks work and why they aren?t always a good fit
(20:35) An explanation of iOS Auto Layout and its pros and cons
(23:13) Why Balint doesn?t use Auto Layout
(24:23) Why Craft has one code base
(27:46) Craft?s unique toolbar features and a behind the scenes peek at the code
(33:15) Why frontend engineers have fear around customization
(37:11) How Craft?s design system differs from most companies
(42:33) Behaviors and elements Craft uses rather than having a system for everything
(44:12) The back and frontend architecture in building personal software
(48:11) Shifting beliefs in personal computing
(50:15) The challenges faced with operating system updates
(50:48) The resurgence of local-first software
(52:31) The value of opinionated software for consumers
(55:30) Why Craft?s focus is on the user?s emotional experience
(56:50) The size of Craft?s engineering department and platform teams
(59:20) Why Craft moves faster with smaller teams
(1:01:26) Balint?s advice for frontend engineers looking to demonstrate value
(1:04:35) Balint?s breakthroughs using GenAI
(1:07:50) Why Balint still writes code
(1:09:44) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? The AI hackathon at Craft Docs
? Engineering career paths at Big Tech and scaleups
? Thriving as a Founding Engineer: lessons from the trenches
? The past and future of modern backend practices
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? WorkOS ? The modern identity platform for B2B SaaS.
? Graphite ? The AI developer productivity platform.
? Formation ? Level up your career and compensation with Formation.
?
In today?s episode of The Pragmatic Engineer, I am joined by a senior software engineer and cartoonist, Manu Cornet. Manu spent over a decade at Google, doing both backend and frontend development. He also spent a year and a half at Twitter before Elon Musk purchased it and rebranded it to X. But what Manu is most known for are his hilarious internet comics about the tech world, including his famous org chart comic from 2011 about Facebook, Apple, Amazon, and Microsoft.
In today?s conversation, we explore many of his comics, discuss the meaning behind them, and talk about the following topics:
? The viral org chart comic that captured the structure of Big Tech companies
? Why Google is notorious for confusing product names
? The comic that ended up on every door at Google
? How Google?s 20% time fostered innovation?and what projects came from it
? How one of Manu?s comics predicted Google Stadia?s failure?and the reasons behind it
? The value of connecting to users directly
? Twitter?s climate before and after Elon Musk?s acquisition and the mass layoffs that followed
? And more!
?
Timestamps
(00:00) Intro
(02:01) Manu?s org structure comic
(07:10) Manu?s ?Who Sues Who? comic
(09:15) Google vs. Amazon comic
(14:10) Confusing names at Google
(20:00) Different approaches to sharing information within companies
(22:20) The two ways of doing things at Google
(25:15) Manu?s code reviews comic
(27:45) The comic that was printed on every single door of Google
(30:55) An explanation of 20% at Google
(36:00) Gmail Labs and Google Stadia
(41:36) Manu?s time at Twitter and the threat of Elon Musk buying
(47:07) How Manu helped Gergely with a bug on Twitter
(49:05) Musk?s acquirement of Twitter and the resulting layoffs
(59:00) Manu?s comic about his disillusionment with Twitter and Google
(1:02:37) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Is Big Tech becoming more cutthroat?
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? WorkOS ? The modern identity platform for B2B SaaS
? CodeRabbit ? Cut code review time and bugs in half
? Augment Code ? AI coding assistant that pro engineering teams love
?
How do you architect a live streaming system to deal with more load than it?s ever been done before? Today, we hear from an architect of such a system: Ashutosh Agrawal, formerly Chief Architect of JioCinema (and currently Staff Software Engineer at Google DeepMind.)
We take a deep dive into video streaming architecture, tackling the complexities of live streaming at scale (at tens of millions of parallel streams) and the challenges engineers face in delivering seamless experiences. We talk about the following topics:
? How large-scale live streaming architectures are designed
? Tradeoffs in optimizing performance
? Early warning signs of streaming failures and how to detect them
? Why capacity planning for streaming is SO difficult
? The technical hurdles of streaming in APAC regions
? Why Ashutosh hates APMs (Application Performance Management systems)
? Ashutosh?s advice for those looking to improve their systems design expertise
? And much more!
?
Timestamps
(00:00) Intro
(01:28) The world record-breaking live stream and how support works with live events
(05:57) An overview of streaming architecture
(21:48) The differences between internet streaming and traditional television.l
(22:26) How adaptive bitrate streaming works
(25:30) How throttling works on the mobile tower side
(27:46) Leading indicators of streaming problems and the data visualization needed
(31:03) How metrics are set
(33:38) Best practices for capacity planning
(35:50) Which resources are planned for in capacity planning
(37:10) How streaming services plan for future live events with vendors
(41:01) APAC specific challenges
(44:48) Horizontal scaling vs. vertical scaling
(46:10) Why auto-scaling doesn?t work
(47:30) Concurrency: the golden metric to scale against
(48:17) User journeys that cause problems
(49:59) Recommendations for learning more about video streaming
(51:11) How Ashutosh learned on the job
(55:21) Advice for engineers who would like to get better at systems
(1:00:10) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Software architect archetypes https://newsletter.pragmaticengineer.com/p/software-architect-archetypes
? Engineering leadership skill set overlaps https://newsletter.pragmaticengineer.com/p/engineering-leadership-skillset-overlaps
? Software architecture with Grady Booch https://newsletter.pragmaticengineer.com/p/software-architecture-with-grady-booch
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? WorkOS ? The modern identity platform for B2B SaaS
? CodeRabbit ? Cut code review time and bugs in half
? Augment Code ? AI coding assistant that pro engineering teams love
?
How do you architect a live streaming system to deal with more load than it?s ever been done before? Today, we hear from an architect of such a system: Ashutosh Agrawal, formerly Chief Architect of JioCinema (and currently Staff Software Engineer at Google DeepMind.)
We take a deep dive into video streaming architecture, tackling the complexities of live streaming at scale (at tens of millions of parallel streams) and the challenges engineers face in delivering seamless experiences. We talk about the following topics:
? How large-scale live streaming architectures are designed
? Tradeoffs in optimizing performance
? Early warning signs of streaming failures and how to detect them
? Why capacity planning for streaming is SO difficult
? The technical hurdles of streaming in APAC regions
? Why Ashutosh hates APMs (Application Performance Management systems)
? Ashutosh?s advice for those looking to improve their systems design expertise
? And much more!
?
Timestamps
(00:00) Intro
(01:28) The world record-breaking live stream and how support works with live events
(05:57) An overview of streaming architecture
(21:48) The differences between internet streaming and traditional television.l
(22:26) How adaptive bitrate streaming works
(25:30) How throttling works on the mobile tower side
(27:46) Leading indicators of streaming problems and the data visualization needed
(31:03) How metrics are set
(33:38) Best practices for capacity planning
(35:50) Which resources are planned for in capacity planning
(37:10) How streaming services plan for future live events with vendors
(41:01) APAC specific challenges
(44:48) Horizontal scaling vs. vertical scaling
(46:10) Why auto-scaling doesn?t work
(47:30) Concurrency: the golden metric to scale against
(48:17) User journeys that cause problems
(49:59) Recommendations for learning more about video streaming
(51:11) How Ashutosh learned on the job
(55:21) Advice for engineers who would like to get better at systems
(1:00:10) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Software architect archetypes https://newsletter.pragmaticengineer.com/p/software-architect-archetypes
? Engineering leadership skill set overlaps https://newsletter.pragmaticengineer.com/p/engineering-leadership-skillset-overlaps
? Software architecture with Grady Booch https://newsletter.pragmaticengineer.com/p/software-architecture-with-grady-booch
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Swarmia ? The engineering intelligence platform for modern software organizations.
? Graphite ? The AI developer productivity platform.
? Vanta ? Automate compliance and simplify security with Vanta.
?
On today?s episode of The Pragmatic Engineer, I?m joined by Chip Huyen, a computer scientist, author of the freshly published O?Reilly book AI Engineering, and an expert in applied machine learning. Chip has worked as a researcher at Netflix, was a core developer at NVIDIA (building NeMo, NVIDIA?s GenAI framework), and co-founded Claypot AI. She also taught Machine Learning at Stanford University.
In this conversation, we dive into the evolving field of AI Engineering and explore key insights from Chip?s book, including:
? How AI Engineering differs from Machine Learning Engineering
? Why fine-tuning is usually not a tactic you?ll want (or need) to use
? The spectrum of solutions to customer support problems ? some not even involving AI!
? The challenges of LLM evals (evaluations)
? Why project-based learning is valuable?but even better when paired with structured learning
? Exciting potential use cases for AI in education and entertainment
? And more!
?
Timestamps
(00:00) Intro
(01:31) A quick overview of AI Engineering
(05:00) How Chip ensured her book stays current amidst the rapid advancements in AI
(09:50) A definition of AI Engineering and how it differs from Machine Learning Engineering
(16:30) Simple first steps in building AI applications
(22:53) An explanation of BM25 (retrieval system)
(23:43) The problems associated with fine-tuning
(27:55) Simple customer support solutions for rolling out AI thoughtfully
(33:44) Chip?s thoughts on staying focused on the problem
(35:19) The challenge in evaluating AI systems
(38:18) Use cases in evaluating AI
(41:24) The importance of prioritizing users? needs and experience
(46:24) Common mistakes made with Gen AI
(52:12) A case for systematic problem solving
(53:13) Project-based learning vs. structured learning
(58:32) Why AI is not the end of engineering
(1:03:11) How AI is helping education and the future use cases we might see
(1:07:13) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Applied AI Software Engineering: RAG https://newsletter.pragmaticengineer.com/p/rag
? How do AI software engineering agents work? https://newsletter.pragmaticengineer.com/p/ai-coding-agents
? AI Tooling for Software Engineers in 2024: Reality Check https://newsletter.pragmaticengineer.com/p/ai-tooling-2024
? IDEs with GenAI features that Software Engineers love https://newsletter.pragmaticengineer.com/p/ide-that-software-engineers-love
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Formation ? Level up your career and compensation with Formation.
? WorkOS ? The modern identity platform for B2B SaaS
? Vanta ? Automate compliance and simplify security with Vanta.
?
In today?s episode of The Pragmatic Engineer, I?m joined by Jonas Tyroller, one of the developers behind Thronefall, a minimalist indie strategy game that blends tower defense and kingdom-building, now available on Steam.
Jonas takes us through the journey of creating Thronefall from start to finish, offering insights into the world of indie game development. We explore:
? Why indie developers often skip traditional testing and how they find bugs
? The developer workflow using Unity, C# and Blender
? The two types of prototypes game developers build
? Why Jonas spent months building game prototypes in 1-2 days
? How Jonas uses ChatGPT to build games
? Jonas?s tips on making games that sell
? And more!
?
Timestamps
(00:00) Intro
(02:07) Building in Unity
(04:05) What the shader tool is used for
(08:44) How a Unity build is structured
(11:01) How game developers write and debug code
(16:21) Jonas?s Unity workflow
(18:13) Importing assets from Blender
(21:06) The size of Thronefall and how it can be so small
(24:04) Jonas?s thoughts on code review
(26:42) Why practices like code review and source control might not be relevant for all contexts
(30:40) How Jonas and Paul ensure the game is fun
(32:25) How Jonas and Paul used beta testing feedback to improve their game
(35:14) The mini-games in Thronefall and why they are so difficult
(38:14) The struggle to find the right level of difficulty for the game
(41:43) Porting to Nintendo Switch
(45:11) The prototypes Jonas and Paul made to get to Thronefall
(46:59) The challenge of finding something you want to build that will sell
(47:20) Jonas?s ideation process and how they figure out what to build
(49:35) How Thronefall evolved from a mini-game prototype
(51:50) How long you spend on prototyping
(52:30) A lesson in failing fast
(53:50) The gameplay prototype vs. the art prototype
(55:53) How Jonas and Paul distribute work
(57:35) Next steps after having the play prototype and art prototype
(59:36) How a launch on Steam works
(1:01:18) Why pathfinding was the most challenging part of building Thronefall
(1:08:40) Gen AI tools for building indie games
(1:09:50) How Jonas uses ChatGPT for editing code and as a translator
(1:13:25) The pros and cons of being an indie developer
(1:15:32) Jonas?s advice for software engineers looking to get into indie game development
(1:19:32) What to look for in a game design school
(1:22:46) How luck figures into success and Jonas?s tips for building a game that sells
(1:26:32) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Game development basics https://newsletter.pragmaticengineer.com/p/game-development-basics
? Building a simple game using Unity https://newsletter.pragmaticengineer.com/p/building-a-simple-game
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Sonar ? Trust your developers ? verify your AI-generated code.
? Vanta ?Automate compliance and simplify security with Vanta.
?
In today's episode of The Pragmatic Engineer, I'm joined by Charity Majors, a well-known observability expert ? as well as someone with strong and grounded opinions. Charity is the co-author of "Observability Engineering" and brings extensive experience as an operations and database engineer and an engineering manager. She is the cofounder and CTO of observability scaleup Honeycomb.
Our conversation explores the ever-changing world of observability, covering these topics:
? What is observability? Charity?s take
? What is ?Observability 2.0??
? Why Charity is a fan of platform teams
? Why DevOps is an overloaded term: and probably no longer relevant
? What is cardinality? And why does it impact the cost of observability so much?
? How OpenTelemetry solves for vendor lock-in
? Why Honeycomb wrote its own database
? Why having good observability should be a prerequisite to adding AI code or using AI agents
? And more!
?
Timestamps
(00:00) Intro
(04:20) Charity?s inspiration for writing Observability Engineering
(08:20) An overview of Scuba at Facebook
(09:16) A software engineer?s definition of observability
(13:15) Observability basics
(15:10) The three pillars model
(17:09) Observability 2.0 and the shift to unified storage
(22:50) Who owns observability and the advantage of platform teams
(25:05) Why DevOps is becoming unnecessary
(27:01) The difficulty of observability
(29:01) Why observability is so expensive
(30:49) An explanation of cardinality and its impact on cost
(34:26) How to manage cost with tools that use structured data
(38:35) The common worry of vendor lock-in
(40:01) An explanation of OpenTelemetry
(43:45) What developers get wrong about observability
(45:40) A case for using SLOs and how they help you avoid micromanagement
(48:25) Why Honeycomb had to write their database
(51:56) Companies who have thrived despite ignoring conventional wisdom
(53:35) Observability and AI
(59:20) Vendors vs. open source
(1:00:45) What metrics are good for
(1:02:31) RUM (Real User Monitoring)
(1:03:40) The challenges of mobile observability
(1:05:51) When to implement observability at your startup
(1:07:49) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? How Uber Built its Observability Platform https://newsletter.pragmaticengineer.com/p/how-uber-built-its-observability-platform
? Building an Observability Startup https://newsletter.pragmaticengineer.com/p/chronosphere
? How to debug large distributed systems https://newsletter.pragmaticengineer.com/p/antithesis
? Shipping to production https://newsletter.pragmaticengineer.com/p/shipping-to-production
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? Vanta ? Automate compliance and simplify security with Vanta.
? WorkOS ? The modern identity platform for B2B SaaS.
?
In today?s episode of The Pragmatic Engineer, I?m joined by Michael Novati, Co-founder and CTO of Formation. Before launching Formation, Michael spent eight years at Meta, where he was recognized as the top code committer company-wide for several years. The ?Coding Machine? archetype was modeled after Michael at the company.
In our conversation, we talk about what it was like working at Meta and dive into its engineering culture. Michael shares his journey of quickly climbing the ranks from intern to principal-level and gives level-headed advice on leveling up your career. Plus, we discuss his work at Formation, where he helps engineers grow and land roles at top tech companies.
In this episode, we cover:
? An overview of software architect archetypes at Meta, including ?the coding machine?
? Meta?s org structure, levels of engineers, and career trajectories
? The importance of maintaining a ?brag list? to showcase your achievements and impact
? Meta?s engineering culture and focus on building internal tools
? How beating Mark Zuckerberg in a game of Risk led to him accepting Michael?s friend request
? An inside look at Meta?s hiring process
? Tips for software engineers on the job market on how to do better in technical interviews
? And more!
?
Timestamps
(00:00) Intro
(01:45) An explanation of archetypes at Meta, including ?the coding machine?
(09:14) The organizational structure and levels of software engineers at Meta
(10:05) Michael?s first project re-writing the org chart as an intern at Meta
(12:42) A brief overview of Michael?s work at Meta
(15:29) Meta?s engineering first culture and how Michael pushed for even more for ICs
(20:03) How tenure at Meta correlated with impact
(23:47) How Michael rose through the ranks at Meta so quickly
(29:30) The engineering culture at Meta, including how they value internal tools
(34:00) Companies that began at Meta or founded by former employees
(36:11) Facebook?s internal tool for scheduling meetings
(37:45) The product problems that came with scaling Facebook
(39:25) How Michael became Facebook friends with Mark Zuckerberg
(42:05) The ?Zuck review? process
(44:30) How the French attacks crashed Michael?s photo inlay prototype
(51:15) How the photo inlay bug was fixed
(52:58) Meta?s hiring process
(1:03:40) Insights from Michael?s work at Formation
(1:09:08) Michael?s advice for experienced engineers currently searching for a job
(1:11:15) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Inside Meta?s engineering culture: https://newsletter.pragmaticengineer.com/p/facebook
? Stacked diffs (and why you should know about them) https://newsletter.pragmaticengineer.com/p/stacked-diffs
? Engineering career paths at Big Tech and scaleups: https://newsletter.pragmaticengineer.com/p/engineering-career-paths
? Inside the story of how Meta built the Threads app: https://newsletter.pragmaticengineer.com/p/building-the-threads-app
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partners
? DX ? DX is an engineering intelligence platform designed by leading researchers.
? Vanta ? Automate compliance and simplify security with Vanta.
?
In today?s episode of The Pragmatic Engineer, I catch up with one of the best tech recruiters I?ve had the opportunity to work with: Blake Stockman, a former colleague of mine from Uber. Blake built a strong reputation in the recruiting world, working at tech giants like Google, Meta, and Uber. He also spent time with Y Combinator and founded his agency, where he helped both large tech companies and early-stage startups find and secure top talent. A few months ago, Blake did a career pivot: he is now studying to become a lawyer. I pounced on this perfect opportunity to have him share all that he?s seen behind-the-scenes in tech recruitment: sharing his observations unfiltered.
In our conversation, Blake shares recruitment insights from his time at Facebook, Google, and Uber and his experience running his own tech recruitment agency. We discuss topics such as:
? A step-by-step breakdown of hiring processes at Big Tech and startups? How to get the most out of your tech recruiter, as a candidate? Best practices for hiring managers to work with their recruiter? Why you shouldn?t disclose salary expectations upfront, plus tips for negotiating? Where to find the best startup opportunities and how to evaluate them?including understanding startup compensation? And much more!
?
Timestamps
(00:00) Intro
(01:40) Tips for working with recruiters
(06:11) Why hiring managers should have more conversations with recruiters
(09:48) A behind-the-scenes look at the hiring process at big tech companies
(13:38) How hiring worked at Uber when Gergely and Blake were there
(16:46) An explanation of calibration in the recruitment process
(18:11) A case for partnering with recruitment
(20:49) The different approaches to recruitment Blake experienced at different organizations
(25:30) How hiring decisions are made
(31:34) The differences between hiring at startups vs. large, established companies
(33:21) Reasons desperate decisions are made and problems that may arise
(36:30) The problem of hiring solely to fill a seat
(38:55) The process of the closing call
(40:24) The importance of understanding equity
(43:27) Tips for negotiating
(48:38) How to find the best startup opportunities, and how to evaluate if it?s a good fit
(53:58) What to include on your LinkedIn profile
(55:48) A story from Uber and why you should remember to thank your recruiter
(1:00:09) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? How GenAI is reshaping tech hiring https://newsletter.pragmaticengineer.com/p/how-genai-changes-tech-hiring
? Hiring software engineers https://newsletter.pragmaticengineer.com/p/hiring-software-engineers
? Hiring an Engineering Manager https://newsletter.pragmaticengineer.com/p/hiring-engineering-managers
? Hiring Junior Software Engineers https://newsletter.pragmaticengineer.com/p/hiring-junior-engineers
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partner
DX? ? DX is an engineering intelligence platform designed by leading researchers
?
In today?s episode of The Pragmatic Engineer, I?m joined by Sean Goedecke, Staff Software Engineer at GitHub. Sean is widely known for his viral blog post, ?How I ship projects at big tech companies.? In our conversation, he shares how to successfully deliver projects in large tech companies.
Drawing from his experiences at GitHub and Zendesk, Sean reflects on key lessons learned, and we discuss the following topics:
? Why shipping cannot exclude keeping management happy
? How to work on stuff the company actually values
? Why you should take on extra responsibility to get projects done
? Why technical skills are still more important than soft skills
? Soft skills you should learn: including learning the ?management lingo?
? First-hand remote work learnings: advantages, disadvantages, and how to thrive in this setup
? ? and much more!
?
Timestamps
(00:00) Intro
(01:50) An explanation of shipping
(05:35) Reasons management may choose to ship something customers don?t love
(09:20) A humbling learning from Sean?s time at Zendesk
(13:27) The importance of learning which rules need to be broken for good business outcomes
(15:28) Common obstacles to shipping
(18:13) DRI: Directly responsible individual
(23:06) The value of strong technical skills and why moving fast is imperative
(28:44) How to leverage your technical skills the right way
(32:16) Advice on earning the trust of leadership
(36:10) A time Gergely shipped a product for a political reason
(38:30) What GenAI helps software engineers do more easily
(41:08) Sean?s thoughts on GenAI making engineers more ambitious
(43:20) The difficulty of building AI tools
(46:10) Advantages of working remotely and strategies for making it work
(52:34) Who is best suited to remote work
(54:48) How the pandemic provided a remote work trial for Sean
(56:45) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? Software Engineers Leading Projects ?https://newsletter.pragmaticengineer.com/p/engineers-leading-projects?
? Shipping to production ?https://newsletter.pragmaticengineer.com/p/shipping-to-production?
? Paying down tech debt ?https://newsletter.pragmaticengineer.com/p/paying-down-tech-debt?
?
See the transcript and other references from the episode at ??https://newsletter.pragmaticengineer.com/podcast??
?
Production and marketing by ????????https://penname.co/????????. For inquiries about sponsoring the podcast, email [email protected].
Supported by Our Partner
DX? ? DX is an engineering intelligence platform designed by leading researchers
?
In today?s exciting episode of The Pragmatic Engineer, I am joined by two members of the Notion mobile apps team, Austin Louden and Karn Saheb. Austin and Karn joined Notion in 2019 when Notion was revamping its mobile apps.
Notion is a versatile productivity and collaboration platform that combines note-taking, task management, and knowledge organization into a single workspace. It is available as a web app, as well as iOS and Android apps for mobile use.
In our conversation today, we take a deep dive into how the Notion mobile team operates and discuss the following:
? What the engineering culture is like at Notion
? Why the mobile team focuses so much on app performance
? The incremental shift from Cordova to Native
? Notion?s tech stack and frameworks they rely on
? How the mobile team maintains consistency across iOS and Android
? Unique features of the development process, including a public beta, using modules, and practices around feature flags
? ? and much more!
?
Timestamps
(00:00) Intro
(02:03) The RFC process at Notion
(06:00) How Notion uses internal channels to share RFCs
(07:57) Some of the unique ways the mobile team works
(11:07) Why they don?t do sprint planning at Notion?and what they do instead
(12:57) An overview of the size of Notion and teams at Notion
(13:15) The beginning of mobile at Notion
(14:40) A simple explanation of Cordova
(15:40) Why Notion decided to revamp mobile in 2019 and shift to Native
(18:30) How the mobile team evaluated performance as they made the shift to Native
(22:00) Scaling mobile and iterations of moving to Native
(26:04) Why the home tab project was so complex
(30:59) Why the mobile team saved the editor for last and other future problems
(34:35) How mobile works with other teams
(36:50) How iOS and Android teams work together
(38:28) The tech stack at Notion
(39:30) How frameworks are used
(41:57) Pros and cons of different frameworks and why Swift was the right choice
(45:16) How code reviews work at Notion
(48:23) Notion?s mobile team?s testing philosophy
(50:18) How the mobile team keeps compile time so fast
(52:36) Modules in the iOS app
(54:50) Modules in the Android app
(56:44) Behind the scenes of an app release and the public beta
(1:00:34) Practices around feature flags
(1:03:00) The four dev environments at Notion
(1:04:48) How development apps work
(1:07:40) How and why you can work offline in Notion mobile
(1:10:24) Austin and Karn?s thoughts on the future of mobile engineering
(1:12:47) Advice for junior engineers
(1:16:29) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
?
Where to find Austin Louden:
? GitHub: https://github.com/austinlouden
? LinkedIn: https://www.linkedin.com/in/austinlouden
? Website: https://austinlouden.com/
Where to find Karn Saheb:
? GitHub: https://github.com/Karn
? LinkedIn: https://github.com/Karn
? Website: https://karn.io
Where to find Gergely:
? Newsletter: https://www.pragmaticengineer.com/
? YouTube: https://www.youtube.com/c/mrgergelyorosz
? LinkedIn: https://www.linkedin.com/in/gergelyorosz/
? X: https://x.com/GergelyOrosz
?
References and Transcripts:
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
Brought to you by:
? WorkOS ? The modern identity platform for B2B SaaS.
? Sevalla ? Deploy anything from preview environments to Docker images.
? Chronosphere ? The observability platform built for control.
?
Welcome to The Pragmatic Engineer! Today, I?m thrilled to be joined by Grady Booch, a true legend in software development. Grady is the Chief Scientist for Software Engineering at IBM, where he leads groundbreaking research in embodied cognition.
He?s the mind behind several object-oriented design concepts, a co-author of the Unified Modeling Language, and a founding member of the Agile Alliance and the Hillside Group.
Grady has authored six books, hundreds of articles, and holds prestigious titles as an IBM, ACM, and IEEE Fellow, as well as a recipient of the Lovelace Medal (an award for those with outstanding contributions to the advancement of computing). In this episode, we discuss:
? What it means to be an IBM Fellow
? The evolution of the field of software development
? How UML was created, what its goals were, and why Grady disagrees with the direction of later versions of UML
? Pivotal moments in software development history
? How the software architect role changed over the last 50 years
? Why Grady declined to be the Chief Architect of Microsoft ? saying no to Bill Gates!
? Grady?s take on large language models (LLMs)
? Advice to less experienced software engineers
? ? and much more!
?
Timestamps
(00:00) Intro
(01:56) What it means to be a Fellow at IBM
(03:27) Grady?s work with legacy systems
(09:25) Some examples of domains Grady has contributed to
(11:27) The evolution of the field of software development
(16:23) An overview of the Booch method
(20:00) Software development prior to the Booch method
(22:40) Forming Rational Machines with Paul and Mike
(25:35) Grady?s work with Bjarne Stroustrup
(26:41) ROSE and working with the commercial sector
(30:19) How Grady built UML with Ibar Jacobson and James Rumbaugh
(36:08) An explanation of UML and why it was a mistake to turn it into a programming language
(40:25) The IBM acquisition and why Grady declined Bill Gates?s job offer
(43:38) Why UML is no longer used in industry
(52:04) Grady?s thoughts on formal methods
(53:33) How the software architect role changed over time
(1:01:46) Disruptive changes and major leaps in software development
(1:07:26) Grady?s early work in AI
(1:12:47) Grady?s work with Johnson Space Center
(1:16:41) Grady?s thoughts on LLMs
(1:19:47) Why Grady thinks we are a long way off from sentient AI
(1:25:18) Grady?s advice to less experienced software engineers
(1:27:20) What?s next for Grady
(1:29:39) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? The Past and Future of Modern Backend Practices https://newsletter.pragmaticengineer.com/p/the-past-and-future-of-backend-practices
? What Changed in 50 Years of Computing https://newsletter.pragmaticengineer.com/p/what-changed-in-50-years-of-computing
? AI Tooling for Software Engineers: Reality Check https://newsletter.pragmaticengineer.com/p/ai-tooling-2024
?
Where to find Grady Booch:
? X: https://x.com/grady_booch
? LinkedIn: https://www.linkedin.com/in/gradybooch
? Website: https://computingthehumanexperience.com
Where to find Gergely:
? Newsletter: https://www.pragmaticengineer.com/
? YouTube: https://www.youtube.com/c/mrgergelyorosz
? LinkedIn: https://www.linkedin.com/in/gergelyorosz/
? X: https://x.com/GergelyOrosz
?
References and Transcripts:
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
Brought to you by:
? Launch Darkly ? a platform for high-velocity engineering teams to release, monitor, and optimize great software.
? Sevalla ? Deploy anything from preview environments to Docker images.
? WorkOS ? The modern identity platform for B2B SaaS.
?
On today?s episode of The Pragmatic Engineer, I?m joined by fellow Uber alum, Sabin Roman, now the first Engineering Manager at Linear. Linear, known for its powerful project and issue-tracking system, streamlines workflows throughout the product development process.
In our conversation today, Sabin and I compare building projects at Linear versus our experiences at Uber. He shares insights into Linear?s unique approaches, including:
? How Linear handles internal communications
? The ?goalie? program to address customer concerns and Linear?s zero bug policy
? How Linear keeps teams connected despite working entirely remotely
? An in-depth, step-by-step walkthrough of a project at Linear
? Linear?s focus on quality and creativity over fash shipping
? Titles at Linear, Sabin?s learnings from Uber, and much more!
Timestamps
(00:00) Intro
(01:41) Sabin?s background
(02:45) Why Linear rarely uses e-mail internally
(07:32) An overview of Linear's company profile
(08:03) Linear?s tech stack
(08:20) How Linear operated without product people
(09:40) How Linear stays close to customers
(11:27) The shortcomings of Support Engineers at Uber and why Linear?s ?goalies? work better
(16:35) Focusing on bugs vs. new features
(18:55) Linear?s hiring process
(21:57) An overview of a typical call with a hiring manager at Linear
(24:13) The pros and cons of Linear?s remote work culture
(29:30) The challenge of managing teams remotely
(31:44) A step-by-step walkthrough of how Sabin built a project at Linear
(45:47) Why Linear?s unique working process works
(49:57) The Helix project at Uber and differences in operations working at a large company
(57:47) How senior engineers operate at Linear vs. at a large company
(1:01:30) Why Linear has no levels for engineers
(1:07:13) Less experienced engineers at Linear
(1:08:56) Sabin?s big learnings from Uber
(1:09:47) Rapid fire round
?
The Pragmatic Engineer deepdives relevant for this episode:
? The story of Linear, as told by its CTO
? An update on Linear, after their $35M fundraise
? Software engineers leading projects
? Netflix?s historic introduction of levels for software engineers
?
Where to find Sabin Roman:
? X: https://x.com/sabin_roman
? LinkedIn: https://www.linkedin.com/in/sabinroman/
Where to find Gergely:
? Newsletter: https://www.pragmaticengineer.com/
? YouTube: https://www.youtube.com/c/mrgergelyorosz
? LinkedIn: https://www.linkedin.com/in/gergelyorosz/
? X: https://x.com/GergelyOrosz
?
References and Transcripts:
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
Brought to you by:
? WorkOS ? The modern identity platform for B2B SaaS.
? Sonar ? Trust your developers ? verify your AI-generated code.
?
In today?s episode of The Pragmatic Engineer, I?m joined by Irina Stanescu, a seasoned engineer with over 14 years in software engineering and engineering leadership roles at tech companies like Google and Uber. Now an engineering leadership coach, Irina helps tech professionals build impactful careers, teaches a course on influence, and shares insights through her newsletter, The Caring Techie. In our conversation today, Irina shares her journey of rising through the ranks at Google and Uber. We dive into the following topics:
? An inside look at Google?s unique working processes
? How to build credibility as a new engineer
? Tactical tips for getting promoted
? The importance of having a career plan and guidance in designing one
? Having influence vs. influencing?and how to become more influential
? Essential leadership skills to develop
? And so much more
?
In this episode, we cover:
(01:34) Irina?s time at Google
(03:10) An overview of ?design docs? at Google
(08:27) The readiness review at Google
(10:40) Why Irina uses spreadsheets
(11:44) Irina?s favorite tools and how she uses them
(13:46) How Google certifies readability
(15:40) Google?s meme generator
(17:36) Advice for engineers thinking about working for an organization like Google
(20:14) How promotions work at Google
(23:15) How Irina worked towards getting promoted
(27:50) How Irina got her first mentor
(30:44) Organizational shifts at Uber while Irina and Gergely were there
(35:50) Why you should prioritize growth over promotion
(36:50) What a career plan is and how to build one
(40:40) Irina?s current role coaching engineers
(42:23) A simple explanation of influence and influencing
(51:54) Why saying no is necessary at times
(54:30) The importance of building leadership skills
?
The Pragmatic Engineer deepdives relevant for this episode:
? Preparing for promotions ahead of time: https://newsletter.pragmaticengineer.com/p/preparing-for-promotions
? Engineering career paths at Big Tech and scaleups: https://newsletter.pragmaticengineer.com/p/engineering-career-paths
? Getting an Engineering Executive Job: https://newsletter.pragmaticengineer.com/p/getting-an-engineering-executive
? The Seniority Rollercoaster: https://newsletter.pragmaticengineer.com/p/the-seniority-rollercoaster
?
Where to find Irina Stanescu:
? X: https://x.com/thecaringtechie
? LinkedIn: https://www.linkedin.com/in/irinastanescu/
? Website: https://www.thecaringtechie.com/
? Maven course: Impact through Influence in Engineering Teams: https://maven.com/irina-stanescu/influence-swe
Where to find Gergely:
? Newsletter: https://www.pragmaticengineer.com/
? YouTube: https://www.youtube.com/c/mrgergelyorosz
? LinkedIn: https://www.linkedin.com/in/gergelyorosz/
? X: https://x.com/GergelyOrosz
?
References and Transcripts:
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
Brought to you by:
? The Enterprise Ready Conference on October 30th ? For B2B leaders building enterprise SaaS.
? DX ? DX is an engineering intelligence platform designed by leading researchers.
? ByteByteGo ? Ace your next system design interview.
?
You may not be familiar with Bending Spoons, but I guarantee you?ve encountered some of their well-known products, like Evernote and Meetup. In today?s episode of The Pragmatic Engineer, we sit down with three key figures from the Italy-based startup: cofounder and CEO Luca Ferrari, CTO Francesco Mancone, and Evernote product lead Federico Simionato. Bending Spoons has been profitable from day one, and there's plenty we can learn from their unique culture, organizational structure, engineering processes, and hiring practices. In today?s conversation, we cover the following topics:
? The controversial acquisitions approach of Bending Spoons
? How Bending Spoons spent more than $1 billion in buying tech companies
? How the Evernote acquisition happened
? How Bending Spoons operates and how it organizes product and platform teams
? Why engineering processes are different across different products
? How ?radical simplicity? is baked into everything from engineering processes to pay structure.
? And much more!
?
The Pragmatic Engineer deepdives relevant for this episode:
? Good attrition, bad attrition for software engineers: https://newsletter.pragmaticengineer.com/p/attrition
? Healthy oncall practices: https://newsletter.pragmaticengineer.com/p/healthy-oncall-practices ? Shipping to production: https://newsletter.pragmaticengineer.com/p/shipping-to-production
? QA across the tech industry: https://newsletter.pragmaticengineer.com/p/qa-across-tech
?
In this episode, we cover:
(2:09) Welcome, Luca, Francesco, and Federico from Bending Spoons
(03:15) An overview of the well-known apps and products owned by Bending Spoons
(06:38) The elephant in the room: how Bending Spoons really acquires companies
(09:46) Layoffs: Bending Spoons? philosophy on this
(14:10) Controversial principles
(17:16) Revenue, team size, and products
(19:35) How Bending Spoons runs AI products and allocates GPUs
(23:05) History of the company
(27:04) The Evernote acquisition
(29:50) Modernizing Evernote?s infrastructure
(32:44) ?Radical simplicity? and why they try for zero on calls
(36:13) More on changes made to the Evernote systems
(41:13) How Bending Spoons prioritizes and ships fast
(49:40) What?s new and what?s coming for Bending Spoons
(51:08) Organizational structure at the company
(54:07) Engineering practices
(57:03) Testing approaches
(58:53) Platform teams
(1:01:52) Bending Spoons tech stack and popular frameworks
(1:05:55) Why Bending Spoons hires new grads and less experienced engineers
(1:08:09) The structure of careers and titles at Bending Spoons
(1:09:50) Traits they look for when hiring
(1:12:50) Why there aren?t many companies doing what Bending Spoons does
?
Where to find Luca Ferrari:
? X: https://x.com/luke10ferrari
? LinkedIn: https://www.linkedin.com/in/luca-ferrari-12418318
Where to find Francesco Mancone:
? LinkedIn: https://www.linkedin.com/in/francesco-mancone
Where to find Federico Simionato:
? LinkedIn: https://www.linkedin.com/in/federicosimionato
Where to find Gergely:
? Newsletter: https://www.pragmaticengineer.com/
? YouTube: https://www.youtube.com/c/mrgergelyorosz
? LinkedIn: https://www.linkedin.com/in/gergelyorosz/
? X: https://x.com/GergelyOrosz
?
References and Transcripts:
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
Brought to you by:
? Paragon: ??Build native, customer-facing SaaS integrations 7x faster.
? WorkOS: For B2B leaders building enterprise SaaS
?
On today?s episode of The Pragmatic Engineer, I?m joined by Quinn Slack, CEO and co-founder of Sourcegraph, a leading code search and intelligence platform. Quinn holds a degree in Computer Science from Stanford and is deeply passionate about coding: to the point that he still codes every day! He also serves on the board of Hack Club, a national nonprofit dedicated to bringing coding clubs to high schools nationwide. In this insightful conversation, we discuss:
? How Sourcegraph's operations have evolved since 2021
? Why more software engineers should focus on delivering business value
? Why Quinn continues to code every day, even as a CEO
? Practical AI and LLM use cases and a phased approach to their adoption
? The story behind Job Fairs at Sourcegraph and why it?s no longer in use
? Quinn?s leadership style and his focus on customers and product excellence
? The shift from location-independent pay to zone-based pay at Sourcegraph
? And much more!
?
Where to find Quinn Slack:
? X: https://x.com/sqs
? LinkedIn: https://www.linkedin.com/in/quinnslack/
? Website: https://slack.org/
Where to find Gergely:
? Newsletter: https://www.pragmaticengineer.com/
? YouTube: https://www.youtube.com/c/mrgergelyorosz
? LinkedIn: https://www.linkedin.com/in/gergelyorosz/
? X: https://x.com/GergelyOrosz
?
In this episode, we cover:
(01:35) How Sourcegraph started and how it has evolved over the past 11 years
(04:14) How scale-ups have changed
(08:27) Learnings from 2021 and how Sourcegraph?s operations have streamlined
(15:22) Why Quinn is for gradual increases in automation and other thoughts on AI
(18:10) The importance of changelogs
(19:14) Keeping AI accountable and possible future use cases
(22:29) Current limitations of AI
(25:08) Why early adopters of AI coding tools have an advantage
(27:38) Why AI is not yet capable of understanding existing codebases
(31:53) Changes at Sourcegraph since the deep dive on The Pragmatic Engineer blog
(40:14) The importance of transparency and understanding the different forms of compensation
(40:22) Why Sourcegraph shifted to zone-based pay
(47:15) The journey from engineer to CEO
(53:28) A comparison of a typical week 11 years ago vs. now
(59:20) Rapid fire round
The Pragmatic Engineer deepdives relevant for this episode:
? Inside Sourcegraph?s engineering culture: Part 1 https://newsletter.pragmaticengineer.com/p/inside-sourcegraphs-engineering-culture? Inside Sourcegraph?s engineering culture: Part 2 https://newsletter.pragmaticengineer.com/p/inside-sourcegraphs-engineering-culture-part-2
?
References and Transcript:
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
The first episode of The Pragmatic Engineer Podcast is out. Expect similar episodes every other Wednesday. You can add the podcast in your favorite podcast player, and have future episodes downloaded automatically.
Listen now on Apple, Spotify, and YouTube.
Brought to you by:
? Codeium: ??Join the 700K+ developers using the IT-approved AI-powered code assistant.
? TLDR: Keep up with tech in 5 minutes
?
On the first episode of the Pragmatic Engineer Podcast, I am joined by Simon Willison.
Simon is one of the best-known software engineers experimenting with LLMs to boost his own productivity: he?s been doing this for more than three years, blogging about it in the open.
Simon is the creator of Datasette, an open-source tool for exploring and publishing data. He works full-time developing open-source tools for data journalism, centered on Datasette and SQLite. Previously, he was an engineering director at Eventbrite, joining through the acquisition of Lanyrd, a Y Combinator startup he co-founded in 2010. Simon is also a co-creator of the Django Web Framework. He has been blogging about web development since the early 2000s.
In today?s conversation, we dive deep into the realm of Gen AI and talk about the following:
? Simon?s initial experiments with LLMs and coding tools
? Why fine-tuning is generally a waste of time?and when it?s not
? RAG: an overview
? Interacting with GPTs voice mode
? Simon?s day-to-day LLM stack
? Common misconceptions about LLMs and ethical gray areas
? How Simon?s productivity has increased and his generally optimistic view on these tools
? Tips, tricks, and hacks for interacting with GenAI tools
? And more!
I hope you enjoy this episode.
?
In this episode, we cover:
(02:15) Welcome
(05:28) Simon?s ?scary? experience with ChatGPT
(10:58) Simon?s initial experiments with LLMs and coding tools
(12:21) The languages that LLMs excel at
(14:50) To start LLMs by understanding the theory, or by playing around?
(16:35) Fine-tuning: what it is, and why it?s mostly a waste of time
(18:03) Where fine-tuning works
(18:31) RAG: an explanation
(21:34) The expense of running testing on AI
(23:15) Simon?s current AI stack
(29:55) Common misconceptions about using LLM tools
(30:09) Simon?s stack ? continued
(32:51) Learnings from running local models
(33:56) The impact of Firebug and the introduction of open-source
(39:42) How Simon?s productivity has increased using LLM tools
(41:55) Why most people should limit themselves to 3-4 programming languages
(45:18) Addressing ethical issues and resistance to using generative AI
(49:11) Are LLMs are plateauing? Is AGI overhyped?
(55:45) Coding vs. professional coding, looking ahead
(57:27) The importance of systems thinking for software engineers
(1:01:00) Simon?s advice for experienced engineers
(1:06:29) Rapid-fire questions
?
Where to find Simon Willison:
? X: https://x.com/simonw
? LinkedIn: https://www.linkedin.com/in/simonwillison/
? Website: https://simonwillison.net/
? Mastodon: https://fedi.simonwillison.net/@simon
?
Referenced:
? Simon?s LLM project: https://github.com/simonw/llm
? Jeremy Howard?s Fast Ai: https://www.fast.ai/
? jq programming language: https://en.wikipedia.org/wiki/Jq_(programming_language)
? Datasette: https://datasette.io/
? GPT Code Interpreter: https://platform.openai.com/docs/assistants/tools/code-interpreter
? Open Ai Playground: https://platform.openai.com/playground/chat
? Advent of Code: https://adventofcode.com/
? Rust programming language: https://www.rust-lang.org/
? Applied AI Software Engineering: RAG: https://newsletter.pragmaticengineer.com/p/rag
? Claude: https://claude.ai/
? Claude 3.5 sonnet: https://www.anthropic.com/news/claude-3-5-sonnet
? ChatGPT can now see, hear, and speak: https://openai.com/index/chatgpt-can-now-see-hear-and-speak/
? GitHub Copilot: https://github.com/features/copilot
? What are Artifacts and how do I use them?: https://support.anthropic.com/en/articles/9487310-what-are-artifacts-and-how-do-i-use-them
? Large Language Models on the command line: https://simonwillison.net/2024/Jun/17/cli-language-models/
? Llama: https://www.llama.com/
? MLC chat on the app store: https://apps.apple.com/us/app/mlc-chat/id6448482937
? Firebug: https://en.wikipedia.org/wiki/Firebug_(software)#
? NPM: https://www.npmjs.com/
? Django: https://www.djangoproject.com/
? Sourceforge: https://sourceforge.net/
? CPAN: https://www.cpan.org/
? OOP: https://en.wikipedia.org/wiki/Object-oriented_programming
? Prolog: https://en.wikipedia.org/wiki/Prolog
? SML: https://en.wikipedia.org/wiki/Standard_ML
? Stabile Diffusion: https://stability.ai/
? Chain of thought prompting: https://www.promptingguide.ai/techniques/cot
? Cognition AI: https://www.cognition.ai/
? In the Race to Artificial General Intelligence, Where?s the Finish Line?: https://www.scientificamerican.com/article/what-does-artificial-general-intelligence-actually-mean/
? Black swan theory: https://en.wikipedia.org/wiki/Black_swan_theory
? Copilot workspace: https://githubnext.com/projects/copilot-workspace
? Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems: https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321
? Bluesky Global: https://www.blueskyglobal.org/
? The Atrocity Archives (Laundry Files #1): https://www.amazon.com/Atrocity-Archives-Laundry-Files/dp/0441013651
? Rivers of London: https://www.amazon.com/Rivers-London-Ben-Aaronovitch/dp/1625676158/
? Vanilla JavaScript: http://vanilla-js.com/
? jQuery: https://jquery.com/
? Fly.io: https://fly.io/
?
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email [email protected].
Welcome to The Pragmatic Engineer Podcast, hosted by Gergely Orosz, the author of The Pragmatic Engineer newsletter. In each episode, we dive deep into the world of software engineering, offering practical insights on scaling teams, engineering leadership, and navigating the evolving tech landscape. With industry veterans and successful engineers as guests, this podcast is perfect for anyone looking to level up their engineering career with real-world advice.
Subscribe to the podcast on YouTube, on Spotify, or Apple.
You can also subscribe to the newsletter here.