External sources that the repository links to. Grouped by use.
Start here
- Scalability lecture at Harvard: video. Vertical scaling, horizontal scaling, caching, load balancing, replication, partitioning.
- Scalability (Le Cloud): four-part article: clones, databases, caches, asynchronism.
Design method references
- How to structure a system design discussion
- System design overview (Hired in tech)
- Introduction to architecture and system design
- System design template (LeetCode)
Key references by topic
- CAP theorem revisited
- A plain english introduction to CAP theorem
- Scalability, availability, stability, patterns
- Scaling up to your first 10 million users: video, walks the whole scaling journey.
- Scalable system design patterns
- Intro to architecting systems for scale
- From cache to in-memory data grid
- Consistent hashing
- Roy Fielding's REST dissertation: the original paper that named REST. Companion to rest theory.
Latency and numbers
Concurrency & operating systems
- Operating Systems: Three Easy Pieces: the book for threads, schedulers, and context switches. Companion to concurrency vs parallelism.
Company engineering blogs
The repository lists ~40 engineering blogs (Airbnb, AWS, Netflix, Stripe, Uber, and more). Read a few for the companies you target. The full list is in appendix.
Flashcard decks (Anki)
- Architecture notes
Study cards cue system-design concepts.
- Recall
Attempt an explanation before checking the notes.
- Review
Use gaps in the explanation to guide the next study session.
Use the deck as a prompt to explain decisions, constraints, and failure modes.
How to read this model
A study-card dispenser with a review holder. The object is a teaching analogy. Inspecting a part highlights its role; it does not execute or simulate the software. Cabinet trays are records, workpieces are data, and latches are checks. Unless an explanation states a quantity, compartments and sample workpieces do not denote data counts. Part dimensions are not a quantitative scale.
Binary .apkg files in the repository, not part of these notes:
- System Design deck
- System Design Exercises deck
- Object Oriented Design Exercises deck
The sister repo adds a coding deck:
- Coding prompt
Read the practice problem.
- Solve
Work through an implementation and its edge cases.
- Review
Compare the result with the practice notes and revisit missed reasoning.
The cards support practice; the implementation and explanation still need your reasoning.
How to read this model
A coding-card dispenser with a working-notes holder. The object is a teaching analogy. Inspecting a part highlights its role; it does not execute or simulate the software. Cabinet trays are records, workpieces are data, and latches are checks. Unless an explanation states a quantity, compartments and sample workpieces do not denote data counts. Part dimensions are not a quantitative scale.
Security
- PortSwigger Academy: free, hands-on labs for most web vulnerabilities. Companion to security mindset.
- OWASP Top 10: the current list of top web application risks.
- OWASP Cheat Sheet Series: best-practice sheets per topic.