Resources
System Design
Curated books, repositories, blogs, courses, and papers for learning system design and distributed systems.
Resources for moving from "I can code" to "I can design systems that don't fall over." Mix of interview prep and the deeper distributed-systems foundations.
My own notes and case studies live in the System Design section.
Books
- Designing Data-Intensive Applications — Martin Kleppmann. The single best starting point; covers storage, replication, partitioning, and consensus with rare clarity. (dataintensive.net)
- System Design Interview, Vol. 1 & 2 — Alex Xu. Interview-focused, with worked examples and clear diagrams.
- Understanding Distributed Systems — Roberto Vitillo. A concise, modern tour of the fundamentals.
- Database Internals — Alex Petrov. How storage engines and distributed databases actually work under the hood.
Repositories & guides
- System Design Primer - The canonical open-source study guide; start here
- ByteByteGo - Alex Xu's diagrams, newsletter, and courses
Blogs & references
- High Scalability - Real-world architecture breakdowns of large systems
- Martin Fowler - Patterns and essays on architecture and design
- AWS Architecture Center - Reference architectures and well-architected guidance
- Google SRE Books - Free books on running reliable production systems
- The Architecture of Open Source Applications - How real open-source systems are built
Lectures & Videos
- MIT 6.824 - MIT's course on distributed systems
- Hello Interview - A YouTube channel with resources about system design
Papers
- Papers We Love — Papers from the computer science community
- MapReduce — A paper on Google's large-scale data processing model
- The Google File System — A paper on Google's distributed file system
- Spanner — A paper on Google's globally-distributed database
- Raft — A paper on a consensus algorithm for managing a replicated log
- Worth reading directly: MapReduce, The Google File System, Bigtable, Dynamo, and Spanner, plus Raft for an understandable take on consensus.
Last updated on