System design, topic by topic
Every area of system design, each written as a complete guide. Start with the fundamentals, then go as deep as you want. Each topic links to every lesson inside it, so you always know what to learn next.
start at the top, go down one shelf at a time
Foundation
Caching StrategiesA practical guide to caching strategies: where to put a cache, read and write patterns, eviction and invalidation, TTLs, and tools like Redis, Memcached, Varnish, and Caffeine.36lessons insideopen the guide Database FundamentalsLearn database fundamentals: indexing, B-trees, normalization, query optimization, replication, partitioning, and sharding. Practical lessons for system design interviews and production work.31lessons insideopen the guide Core FundamentalsMaster the core fundamentals of system design: latency, throughput, scaling, caching, statelessness, idempotency, ACID vs BASE, and SQL vs NoSQL. The 26 building blocks every engineer needs before tackling distributed systems.26lessons insideopen the guide Load Balancing and ProxiesA complete guide to load balancing and proxies: DNS, routing strategies, load balancer algorithms, reverse and forward proxies, API gateways, GSLB, and CDNs, with real trade-offs.26lessons insideopen the guide
Intermediate
Observability and MonitoringA complete guide to observability and monitoring: logs, metrics, and traces, the golden signals, SLIs/SLOs/SLAs, error budgets, and tools like Prometheus, Grafana, OpenTelemetry, Jaeger, and Datadog.60lessons insideopen the guide Security ArchitectureA complete guide to security architecture: authentication, authorization, encryption, TLS, OAuth, JWT, zero trust, key management, and the design patterns that keep real systems safe.57lessons insideopen the guide Cloud InfrastructureA senior engineer's guide to cloud infrastructure: VPCs, subnets, CIDR, NAT, VPNs, regions and availability zones, IaaS vs PaaS vs SaaS, serverless and cold starts, and private connectivity. Learn what to use, the trade-offs, and how real companies run it.45lessons insideopen the guide Messaging and Event SystemsA senior engineer's guide to messaging and event systems: queues, pub/sub, delivery guarantees, WebSockets, event-driven architecture, and the integration patterns that keep distributed systems reliable.41lessons insideopen the guide Database Types and StorageA senior engineer's guide to database types and storage systems: object, key-value, document, columnar, graph, time-series, vector, and the indexes and storage engines underneath them.39lessons insideopen the guide DevOps and CI/CDA complete guide to DevOps and CI/CD: version control, build and test automation, deployment strategies like blue-green and canary, infrastructure as code, and GitOps. Learn what each piece does, when to use it, and how teams ship safely.36lessons insideopen the guide Microservices ArchitectureA senior engineer's guide to microservices architecture: how to split a monolith, design patterns, resilience, service discovery, data ownership, and service mesh.36lessons insideopen the guide Data Replication and DistributionA senior engineer's guide to data replication and distribution: sync vs async replication, replication topologies, consistent hashing, partitioning, CDC, and multi-region design.31lessons insideopen the guide Web Content DeliveryA complete guide to web content delivery: rendering strategies (CSR, SSR, SSG, ISR), image and asset optimization, compression, caching, offline-first PWAs, and video streaming. Learn what to use when and why.31lessons insideopen the guide API Design and ProtocolsA practical guide to API design and protocols: REST, GraphQL, gRPC, SOAP, rate limiting, idempotency, versioning, and the binary formats and HTTP transports that move data between services.28lessons insideopen the guide Data Governance and ComplianceLearn data governance and compliance for system design: validation, schema checks, data quality, PII handling, masking, anonymization, audit logging, retention, and GDPR.23lessons insideopen the guide Kubernetes and ContainersA senior engineer's guide to containers and Kubernetes: images and registries, orchestration, controllers and reconciliation, scaling, storage, networking, and security.22lessons insideopen the guide
Advanced
Reliability and ResilienceA complete guide to reliability and resilience engineering: failover, backups, disaster recovery, circuit breakers, retries, chaos engineering, SLOs, and incident response.85lessons insideopen the guide Stream and Batch ProcessingA senior engineer's guide to stream and batch processing: ETL vs ELT, windowing, watermarks, exactly-once semantics, Lambda vs Kappa, and how to choose.36lessons insideopen the guide Distributed Systems CoreLearn the core of distributed systems: CAP theorem, consensus, quorum, leader election, distributed locks, two-phase commit, sagas, event sourcing, vector clocks, and more.24lessons insideopen the guide Consistency ModelsA senior engineer's guide to consistency models in distributed systems: linearizability, sequential and causal consistency, read-your-writes, snapshot isolation, serializability, CRDTs, and how to pick the right guarantee.21lessons insideopen the guide Security Testing and OperationsA practical guide to security testing and operations for system designers: code reviews, SAST, SCA, DAST, vulnerability scanning, penetration testing, red and blue team exercises, bug bounties, SIEM, IDS, and IPS.12lessons insideopen the guide Data EngineeringData engineering in plain English: warehouses, lakes and lakehouses, the Delta Lake, Iceberg and Hudi table formats, two writers on one table, and data catalogs like Unity Catalog, tested on millions of real taxi trips.4lessons insideopen the guide