Skip to content
Artwork for The Pragmatic Engineer
The Pragmatic Engineer · Thursday · 1 hr 18 min

Scaling Slack and GitHub with Maude Lemaire

Brought to You By: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable. • Entire – The Git forge for agent-human collaboration. Built for the scale and throughput of agentic coding. — What is involved in scaling up large, popular products at places like Slack and GitHub? We get an insider’s view on this from Maude Lemaire, a principal engineer and author of ‘Refactoring at Scale: Regaining Control of Your Codebase.’ She spent nearly eight years at Slack, where she led the backend performance infrastructure team, before joining GitHub to tackle database scaling challenges. Most recently, she worked on improving performance at Cursor – including time to first token. In this episode of The Pragmatic Engineer, Maude and I dig into the challenges of scaling some of the world's largest software products. We explore how Slack handled growing numbers of enterprise customers, how it evolved its approach to load testing, and the lessons Maude learned during nearly eight years of scaling Slack's infrastructure. She also tells us what it was like joining GitHub in 2024 when Copilot was taking off, the challenges of working with GitHub's gigantic Rails monolith, and how Maude uses AI in her work – while keeping judgment calls and decision-making firmly in her own hands. Timestamps 00:00 Intro 03:15 Early years and path to software engineering 07:32 First job at Rent the Runway 09:17 The HipChat data leak 10:54 Joining Slack and the challenges of scaling 26:30 Load testing and thundering herds 32:29 Event floods 38:30 Evolving load testing at Slack 48:38 Joining GitHub in 2024 56:52 The challenges of the Rails monolith 1:02:26 How Maude uses AI 1:12:40 Advice for engineers interested in product/platform work — The Pragmatic Engineer deepdives relevant for this episode: • Real-world engineering challenges: building Cursor • Pushing software engineering limits with “napkin math” • What is happening with code reviews? • Why reliability is hard at scale: learnings from infrastructure outages • What is Reliability Engineering? • Migrations Done Well • Shipping to Production • The Platform and Program Split at Uber • The present, past and future of GitHub • Why performant code matters (but gets widely ignored), with Casey Muratori • Designing Data-intensive Applications with Martin Kleppmann — Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

0:00-1:18:33

transcript

No transcript — this publisher did not publish one.

show notes

Brought to You By:

• Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages.

• turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable.

• Entire – The Git forge for agent-human collaboration. Built for the scale and throughput of agentic coding.

—

What is involved in scaling up large, popular products at places like Slack and GitHub? 

We get an insider’s view on this from Maude Lemaire, a principal engineer and author of ‘Refactoring at Scale: Regaining Control of Your Codebase.’ She spent nearly eight years at Slack, where she led the backend performance infrastructure team, before joining GitHub to tackle database scaling challenges. Most recently, she worked on improving performance at Cursor – including time to first token.

In this episode of The Pragmatic Engineer, Maude and I dig into the challenges of scaling some of the world's largest software products. We explore how Slack handled growing numbers of enterprise customers, how it evolved its approach to load testing, and the lessons Maude learned during nearly eight years of scaling Slack's infrastructure.

She also tells us what it was like joining GitHub in 2024 when Copilot was taking off, the challenges of working with GitHub's gigantic Rails monolith, and how Maude uses AI in her work – while keeping judgment calls and decision-making firmly in her own hands.

Timestamps

00:00 Intro

03:15 Early years and path to software engineering

07:32 First job at Rent the Runway

09:17 The HipChat data leak

10:54 Joining Slack and the challenges of scaling

26:30 Load testing and thundering herds

32:29 Event floods

38:30 Evolving load testing at Slack

48:38 Joining GitHub in 2024

56:52 The challenges of the Rails monolith

1:02:26 How Maude uses AI

1:12:40 Advice for engineers interested in product/platform work

—

The Pragmatic Engineer deepdives relevant for this episode:

• Real-world engineering challenges: building Cursor

• Pushing software engineering limits with “napkin math”

• What is happening with code reviews?

• Why reliability is hard at scale: learnings from infrastructure outages 

• What is Reliability Engineering? 

• Migrations Done Well 

• Shipping to Production 

• The Platform and Program Split at Uber

• The present, past and future of GitHub

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

• Designing Data-intensive Applications with Martin Kleppmann

—

Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com.



Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
links19