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.
Foundation
Caching Strategies
A 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.
Database Fundamentals
Learn database fundamentals: indexing, B-trees, normalization, query optimization, replication, partitioning, and sharding. Practical lessons for system design interviews and production work.
Core Fundamentals
Master 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.
Load Balancing and Proxies
A 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.
Intermediate
Observability and Monitoring
A 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.
Security Architecture
A complete guide to security architecture: authentication, authorization, encryption, TLS, OAuth, JWT, zero trust, key management, and the design patterns that keep real systems safe.
Cloud Infrastructure
A 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.
Messaging and Event Systems
A 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.
Database Types and Storage
A 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.
DevOps and CI/CD
A 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.
Microservices Architecture
A senior engineer's guide to microservices architecture: how to split a monolith, design patterns, resilience, service discovery, data ownership, and service mesh.
Data Replication and Distribution
A senior engineer's guide to data replication and distribution: sync vs async replication, replication topologies, consistent hashing, partitioning, CDC, and multi-region design.
Web Content Delivery
A 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.
API Design and Protocols
A 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.
Data Governance and Compliance
Learn data governance and compliance for system design: validation, schema checks, data quality, PII handling, masking, anonymization, audit logging, retention, and GDPR.
Kubernetes and Containers
A senior engineer's guide to containers and Kubernetes: images and registries, orchestration, controllers and reconciliation, scaling, storage, networking, and security.
Advanced
Reliability and Resilience
A complete guide to reliability and resilience engineering: failover, backups, disaster recovery, circuit breakers, retries, chaos engineering, SLOs, and incident response.
Stream and Batch Processing
A senior engineer's guide to stream and batch processing: ETL vs ELT, windowing, watermarks, exactly-once semantics, Lambda vs Kappa, and how to choose.
Distributed Systems Core
Learn the core of distributed systems: CAP theorem, consensus, quorum, leader election, distributed locks, two-phase commit, sagas, event sourcing, vector clocks, and more.
Consistency Models
A 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.
Security Testing and Operations
A 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.