A free, open source guide for engineers who want to understand how large-scale systems are built, and for people preparing for system design interviews. It is a collection of study material rather than a single textbook, so readers can go straight to the topics they need.
It starts with core trade-offs, such as performance versus scalability and consistency versus availability, then covers building blocks like DNS, CDNs, load balancers, caches, databases, asynchronous processing and communication. It also works through interview questions with sample solutions and diagrams, includes object-oriented design exercises, and provides Anki flashcard decks for spaced review.
Categories
Similar apps
Python implementations of classic algorithms, built for learning rather than production
JavaScript implementations of classic data structures and algorithms, with explanations
Free, condensed interview prep for busy engineers, from resume to offer