System design (HLD, LLD and architecture)
System Design (High-Level Design)
The planned outline of 30 modules. Lessons are written, run and reviewed before they are published.
Planned outline
- Module 1
Start here: how system design works
Coming soon - Module 2
Back-of-the-envelope estimation
Coming soon - Module 3
Performance and reliability fundamentals
Coming soon - Module 4
Networking for system designers
Coming soon - Module 5
APIs and communication patterns
Coming soon - Module 6
Data modelling and storage engines
Coming soon - Module 7
Caching
Coming soon - Module 8
Replication
Coming soon - Module 9
Partitioning and sharding
Coming soon - Module 10
Consistency, time and coordination
Coming soon - Module 11
Distributed transactions and workflows
Coming soon - Module 12
Messaging and stream processing
Coming soon - Module 13
Architecture styles at scale
Coming soon - Module 14
Search, geospatial and probabilistic data structures
Coming soon - Module 15
Files, objects and media
Coming soon - Module 16
Observability, incidents and lessons from outages
Coming soon - Module 17
Security, privacy and compliance
Coming soon - Module 18
Delivery, multi-region, disaster recovery and cost
Coming soon - Module 19
Building blocks: traffic, storage and messaging
Coming soon - Module 20
Building blocks: control, safety and platform services
Coming soon - Module 21
Recurring problems and the moves that solve them
Coming soon - Module 22
Case studies: links, files and media
Coming soon - Module 23
Case studies: social, feeds and search
Coming soon - Module 24
Case studies: messaging, real time and collaboration
Coming soon - Module 25
Case studies: location, mobility and logistics
Coming soon - Module 26
Case studies: booking, commerce and contention
Coming soon - Module 27
Case studies: payments, money and markets
Coming soon - Module 28
Case studies: India's digital public infrastructure
India-specific Coming soon - Module 29
Case studies: platforms, analytics and developer tools
Coming soon - Module 30
Interview practice and study plans
Coming soon
Related tools
UUID Generator Random v4 and time-ordered v7 UUIDs, in bulk — plus a UUID inspector. NanoID, ULID & Snowflake ID Generator Every popular ID format in bulk — and the creation time inside the ones you already have. HTTP Status Codes Reference Every HTTP status code explained: what it means, why you got it and how to fix it. DNS Lookup Every DNS record type, straight from a public DNS resolver, explained in plain words. REST API Tester (Online API Client) A Postman-style API client in this tab — requests go straight from you to the API.
Official documentation
- www.rfc-editor.org/rfc/rfc9110.html (rfc-editor.org)
- jepsen.io/consistency (jepsen.io)
- learn.microsoft.com/en-us/azure/architecture/patterns (learn.microsoft.com)
- www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf (allthingsdistributed.com)
More in System design (HLD, LLD and architecture)
- Low-Level Design (Object-Oriented Design) (coming soon)
- Design Patterns (GoF and modern) (coming soon)
- Concurrency & Multithreading (coming soon)
- API Design (REST, gRPC, GraphQL, Webhooks) (coming soon)
- All System design tracks
- How we make lessons