Articles
Worth reading
A short take on pieces worth your time — architecture, AI, system design, and engineering careers — each one linked back to its original source.
3 articles
Scaling beyond one: How Airbnb evolved its data architecture for a multi-product world
Airbnb's data engineers walking through what happens to a decade-old data model when the product stops being "one thing" — Homes — and becomes three (Homes, Experiences, Services) at once: the consistent, flexible modeling framework they built so the same metrics and pipelines don't fork three ways. It's a useful case study in designing for extensibility in a data platform, not just a services layer, which is the part of "architecture" that gets talked about far less than it should. Relevant well beyond travel and marketplace companies — anyone with a growing product surface will recognize the problem.
How Discord Stores Trillions of Messages
Bo Ingram's account of Discord's migration off vanilla Cassandra to a Rust-based data service layer is one of the more honest scaling stories out there — no rewrite-everything triumphalism, just a clear-eyed walk through where their original design started to show cracks at trillion-row scale and what they changed. The details on data modeling for a chat workload (message ordering, hot partitions, compaction pressure) are transferable to basically any high-write-volume, append-heavy system. One of the better "how it actually broke and what we did about it" posts I've read.
Online migrations at scale
Stripe's playbook for the unglamorous but high-stakes work of migrating a live, heavily-used data model — hundreds of millions of Subscriptions objects, no downtime, no data loss allowed — without ever pausing the business to do it. The dual-write-then-backfill-then-cutover pattern they describe is the one I reach for on every schema migration of consequence, because it's the only approach I've seen actually survive production edge cases. Read this before your next "just add a migration" turns into an incident.