ML

Maude Lemaire

Things Maude Says on Podcasts

Where to Find Them

Maude Lemaire has been a guest on The Pragmatic Engineer .

Recently: “Scaling Slack and GitHub with Maude Lemaire” on The Pragmatic Engineer (November 2026).

What They Said

“We always had to fight against spaghetti code, right? But now we're at this point where the spaghetti has a life of its own and actively wants to spill out of the plate. Before, people were like, okay, I've got to kind of keep it on the plate. No, no, no. The spaghetti wants out, and we have to almost red-team our own situation.” — Maude Lemaire, The Pragmatic Engineer

Discussing platform work in a world where AI lets product teams ship very fast, Lemaire says codebase mess now grows on its own and platform engineers must build stronger guardrails than ever.

The Pragmatic Engineer · 2026-11-05 Permalink → Listen →
The Pragmatic Engineer
Maude Lemaire

no, no, I know. And I mean, like,

Gergely Orosz

we can stop it or we can actually build better software, hopefully.

Maude Lemaire

Yeah, yeah, I think so. I think it's it is really similar to for folks who are familiar with like the embedded SRE model, like there's a reason why that's really, really effective. And I think that there's real parallels with product platform as well. I kept talking to my team about like, I mean, we always had to fight against spaghetti code, right? It's so easy. But now we're at this point where like the spaghetti has like a life of its own and it like actively wants to spill out of the plate. Whereas before people were like, okay, like I got to kind of keep it on the plate. No, no, no. The spaghetti like wants out and we have to almost like red team our own situation.

Gergely Orosz

We do. Well, Moat, thank you so much for this conversation. Thank you

Maude Lemaire

so much for having me.

Gergely Orosz

It was nice to get an insider look of what scaling up looks like inside of products we all know and use like Slack, GitHub, and Cursor. Until now, I'll admit, I never thought much about custom emojis causing a kind of scale problem, but Moat's example of the CEO sending out a everyone gets a Friday…

Speaker names come from our own diarization. The position is estimated from where the line sits in the episode.
“The GitHub page loaded over a hundred MySQL queries across at least three different MySQL clusters. … Almost every single count you see on a GitHub page is live calculated. None of those are cached. … Once it gets to 99, just don't show anything. Just say 99 plus. Don't bother counting it. Why are we counting this?” — Maude Lemaire, The Pragmatic Engineer

Lemaire describes GitHub's admin view, which shows the SQL queries behind a page, and what she found behind the repo home page. It ties to her argument that scaling work means questioning precision nobody needs.

The Pragmatic Engineer · 2026-11-05 Permalink → Listen →
The Pragmatic Engineer
Maude Lemaire

…clusters they hit um how fast they all were totals around all sorts of the entire employee view yeah yeah and the what's called the files disambiguate page which is sort of like the repo home page that you land on with the readme that page last last i checked you know before before i left before

Gergely Orosz

you left like a year ago

Maude Lemaire

actually less than that but yeah yeah so some some amount of time ago um was it was a hundred over a hundred Hundred MySQL queries to populate that page across at least three different MySQL clusters. And the thing with ActiveRecord is that it only caches the output automatically if the query is exactly the same. And so, if, say, you're fetching user information, like full, like blanket, like select star from users where user ID equals blank, and you have that full user, but then later on you do select star from users where user ID equals blank and something else, it's not going to reach back into the results that it cached for that first query because they are not exact same queries. Every single count, or at least when I last left, almost every single count on you see on a GitHub page is live calculated. None of those are cached. There's a lot of reasons why that is. Mostly product reasons, actually. But that's one of the first things that I was like, but why? And to go back to like my sort of silly emoji example of like the 10,000 and one emoji, no one cares. Why does anyone care? Right. And if…

Gergely Orosz

Really interesting that so far we talked about you did an interesting thing at Slack. I get how you also worked at Copilot Code Review. Afterwards, you worked at Cursor. Again, they've really pushed how we're coding with AI tools. But so far, we've not really talked about AI. It just didn't come up…

Maude Lemaire

Oh, gosh. Yeah. It has not helped me with performance optimizations basically at all. At least the investigation part. Maybe the implementation part is a little bit faster. What

Gergely Orosz

once you know what you want to do?

Speaker names come from our own diarization. The position is estimated from where the line sits in the episode.

Collections They Appear In