Editor's top System Design books
3Designing Data-Intensive Applications
Martin Kleppmann · O'Reilly · 662 pages · ~17 hrs to read
The most respected book in modern backend engineering — replication, partitioning, transactions, and stream processing explained from first principles. Referenced in virtually every senior system design interview and cited by engineers at every major tech company.
System Design Interview — An Insider's Guide (Vol 1 & 2)
Alex Xu · ByteByteGo
The de facto interview prep standard — walks through 25+ classic design questions (rate limiter, news feed, chat system, YouTube) with diagrams and structured trade-off discussion. Volume 2 covers harder problems like payment systems and distributed message queues.
Building Microservices, 2nd Edition
Sam Newman · O'Reilly · 284 pages · ~7 hrs to read
The definitive book on service decomposition — when to split a monolith, how to draw service boundaries around business capabilities rather than technical layers, and the operational cost each new service actually adds. A full rewrite for the 2nd edition, not a refresh.
All System Design Books
10Designing Data-Intensive Applications
Martin Kleppmann · O'Reilly · 662 pages · ~17 hrs to read
The most respected book in modern backend engineering — replication, partitioning, transactions, and stream processing explained from first principles. Referenced in virtually every senior system design interview and cited by engineers at every major tech company.
System Design Interview — An Insider's Guide (Vol 1 & 2)
Alex Xu · ByteByteGo
The de facto interview prep standard — walks through 25+ classic design questions (rate limiter, news feed, chat system, YouTube) with diagrams and structured trade-off discussion. Volume 2 covers harder problems like payment systems and distributed message queues.
Building Microservices, 2nd Edition
Sam Newman · O'Reilly · 284 pages · ~7 hrs to read
The definitive book on service decomposition — when to split a monolith, how to draw service boundaries around business capabilities rather than technical layers, and the operational cost each new service actually adds. A full rewrite for the 2nd edition, not a refresh.
Release It!, 2nd Edition
Michael Nygard · Pragmatic Bookshelf0
The book that named circuit breakers, bulkheads, and the stability patterns every distributed system interview question eventually touches. War-story driven — teaches what actually takes production systems down and how to design so a single failure doesn't cascade.
Site Reliability Engineering
Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy · O'Reilly · 529 pages · ~13 hrs to read
How Google actually runs production systems at scale — error budgets, toil reduction, capacity planning, and on-call practices. Free to read online, but the print edition is the one referenced in nearly every staff-level system design and reliability interview.
Designing Distributed Systems
Brendan Burns · O'Reilly · 220 pages · ~6 hrs to read
A Kubernetes co-founder's catalogue of reusable distributed system patterns (sidecars, ambassadors, work queues) — shorter and more pattern-focused than DDIA, useful for translating system design whiteboard answers into concrete container-based implementations.
The Art of Scalability, 2nd Edition
Martin Abbott, Michael Fisher · Addison-Wesley · 1148 pages · ~29 hrs to read
From the AKF Partners founders, drawing on 30+ years scaling eBay, Visa, and Salesforce — treats scalability as an organizational and process problem as much as an architectural one. A useful counterweight to books that only cover the technical layer.
Web Scalability for Startup Engineers
Artur Ejsmont · McGraw-Hill · 417 pages · ~10 hrs to read
A holistic, pragmatic walkthrough of scaling HTTP-based systems written for engineers at small companies rather than FAANG-scale teams — load balancing, caching, and database scaling explained with the constraints a startup actually has.
Understanding Distributed Systems, 2nd Edition
Roberto Vitillo · 344 pages · ~9 hrs to read
A dense, well-organized primer covering the network stack, consistency models, and reliability patterns with just enough depth plus external references to go deeper. Often recommended as the fastest single book to get interview-ready on distributed systems fundamentals.
Fundamentals of Software Architecture: An Engineering Approach
Mark Richards, Neal Ford · O'Reilly · 427 pages · ~11 hrs to read
Treats architecture as an engineering discipline with measurable trade-offs (the "-ilities") rather than a matter of taste — covers architectural styles, component design, and how to defend a decision with characteristics instead of opinions. Widely used as an architect-track reference.
System Design resources