A structured, self-paced roadmap for mastering system design end to end, from interview framing and low-level design to distributed systems, frontend architecture, cloud scalability, AI/ML systems, and complete case studies.
Most system design resources focus only on backend architecture. This repo treats every layer of the stack as a first-class design surface: APIs, databases, browsers, rendering, infrastructure, observability, ML serving, and trade-off communication.
Each topic lives in its own markdown file inside the relevant phase folder. Start with Phase 0 if you are preparing for interviews, Phase 1 if you want to strengthen object-oriented design, or jump directly to the phase that matches your current gaps.
system-design/
├── phase-0-interview-primer/
├── phase-1-low-level-design/
├── phase-2-foundations/
├── phase-3-backend/
├── phase-4-distributed-systems/
├── phase-5-frontend/
├── phase-6-cloud-and-scalability/
├── phase-7-ai-and-ml-systems/
└── phase-8-case-studies/
| Phase | Folder | Focus | Topics |
|---|---|---|---|
| Phase 0 | Interview Primer | Interview framing, requirements, estimation, diagrams, trade-offs | 8 |
| Phase 1 | Low Level Design | SOLID, design patterns, UML, LLD case studies | 6 |
| Phase 2 | Foundations | Networking, protocols, APIs, auth, caching, databases | 19 |
| Phase 3 | Backend | Backend & data architecture, databases, queues, messaging reliability, search, storage | 38 |
| Phase 4 | Distributed Systems | Consistency, consensus, transactions, clocks, event/stream patterns, resilience, distributed data structures | 32 |
| Phase 5 | Frontend | Browser internals, rendering, state, data fetching, performance, observability, frontend architecture | 29 |
| Phase 6 | Cloud and Scalability | Containers, cloud, delivery, observability, reliability engineering (SLOs, chaos, autoscaling), platform & security | 28 |
| Phase 7 | AI and ML Systems | ML infrastructure, LLMs, RAG, agents, guardrails, AI observability | 15 |
| Phase 8 | Case Studies | End-to-end system design examples | 17 |
How to approach system design interviews with structure, numbers, diagrams, and clear trade-off communication.
Object-oriented design foundations for building maintainable systems and discussing component-level architecture.
| # | Topic |
|---|---|
| 1 | SOLID Principles |
| 2 | Design Patterns: Creational |
| 3 | Design Patterns: Structural |
| 4 | Design Patterns: Behavioral |
| 5 | UML and Class Diagrams |
| 6 | LLD Case Studies |
The protocol, networking, API, authentication, caching, and database basics every system design discussion builds on.
Core patterns for building reliable, scalable server-side systems, plus data-layer internals, backend architecture discipline, and messaging reliability.
New in this revision (topics 26–38): backend architecture discipline (DDD, hexagonal, multi-tenancy, BFF), data-layer depth (storage engines, query optimization, partitioning/hot partitions, secondary indexes, data lifecycle), and messaging reliability (DLQ/retries, outbox/inbox, delivery semantics, choreography vs orchestration). See
ROADMAP-REVIEW.mdfor the full rationale.
The hard problems that emerge when systems are split across machines, regions, and failure domains.
Browser, rendering, performance, and application architecture topics that matter in modern frontend system design.
New in this revision (topics 26–29): client data fetching & caching (server-state libraries), React architecture at scale (RSC), frontend observability & RUM, and frontend CI/CD & deployment.
Production readiness: deployment, cloud infrastructure, observability, resilience, security, and operating cost.
New in this revision (topics 21–28): the reliability-engineering layer (SLOs/SLIs/error budgets, chaos engineering, load testing, autoscaling, capacity planning), explicit deployment strategies (blue-green & canary), and platform/security (internal developer platforms, secrets management). Note: Time-Series DBs (15) and Geospatial Indexing (16) are data topics that pair with Phase 3; Data Pipelines (17) anchors the data-engineering material — see ROADMAP-REVIEW.md.
Designing production ML and LLM systems, from data pipelines and serving to RAG, agents, guardrails, feedback loops, and observability.
Full system design walkthroughs that combine requirements, architecture, data modeling, scaling, reliability, and trade-offs.
- Frontend engineers who want to go deep on browser internals, rendering strategies, performance, and micro frontends
- Backend engineers who want to go deep on distributed systems, database internals, scalability patterns, and resilience
- Full-stack engineers who want a single structured reference across the entire stack
- Engineers preparing for system design interviews, frontend, backend, low-level design, or AI/ML systems
- Anyone building production systems who wants to understand every layer, not just their own
Contributions are welcome. If you are adding a new topic:
- Place the file in the correct phase folder.
- Follow the existing doc format: concept, problem it solves, trade-offs, and examples.
- Keep the topic number sequential within that phase.
- Update this README so the roadmap stays aligned with the project structure.
If this roadmap saves you hours of scattered searching, a star goes a long way.