Back to Guides
🏗️

System Design

Master the art of designing scalable, resilient, and high-performance systems.

51 Guides9 Phases
Growing collection: Core foundations are ready. More guides being added as per the system design roadmap.Share feedback
📚
Phase 1

Foundations

5 guidesNetworking BasicsClient-Server ArchitectureDatabases — SQL FundamentalsDatabases — NoSQL OverviewBasic System Concepts
🧱
Phase 2

Core Building Blocks

5 guidesLoad Balancing StrategiesCaching PatternsMessage QueuesAPI GatewaysData Replication
🌐
Phase 3

Distributed Systems

6 guidesThe 8 Fallacies of Distributed ComputingDistributed Transactions & SagasService Discovery & Configuration Management in Distributed SystemsDistributed Caching & CDNsDistributed Data StoresFault Tolerance & Resilience
🧮
Phase 4

Core Algorithms

10 guidesConsistent HashingBloom FiltersWrite-Ahead Log (WAL)Raft Consensus AlgorithmPaxos, Two-Phase Commit, and Distributed Consensus ProtocolsMerkle Trees and Anti-EntropyVector Clocks and VersioningLRU, LFU, and TinyLFUSnowflake ID and Distributed ID GenerationQuorum-Based Reads and Writes
🏛️
Phase 5

Architecture Patterns

6 guidesMicroservices ArchitectureEvent-Driven ArchitectureServerless and FaaSService Mesh and Sidecar PatternDomain-Driven DesignHexagonal and Clean Architecture
🤖
Phase 6

Gen AI Systems

9 guidesGenerative AI SystemsEmbeddings and Vector DatabasesRAG ArchitectureLLM Gateway and RoutingPrompt Caching and Semantic CachingAgentic Patterns and Tool UseStreaming and Latency OptimizationGuardrails and Output ValidationLLM Observability and Evaluation
📈
Phase 7

Scalability & Performance

6 guidesPerformance OptimizationScaling StrategiesDatabase Scaling PatternsRate Limiting and ThrottlingObservability and MonitoringContent Delivery and Edge Computing
🔒
Phase 8

Security & Reliability

2 guidesSystem SecurityReliability Patterns
🎯
Phase 9

Expert Case Studies

2 guidesDesigning InstagramDesigning Netflix