System design module
The mechanisms every design is built from, taught as trade-offs with numbers, plus classic and AI-era design exercises and the real-world practice of design docs, postmortems and migrations. Shared by every engineering pathway.
Part A. Foundations (17 lessons)
- Latency, throughput and back-of-envelope numbers
sd-numbersplanned - Networking for designers
sd-networkingplanned - Storage engines and indexes
sd-storage-enginesplanned - Replication and partitioning
sd-replication-partitioningplanned - Consistency models, transactions and consensus in plain words
sd-consistency-consensusplanned - Caching
sd-cachingplanned - Queues, streams and delivery guarantees
sd-queues-streamsplanned - Load balancing and service discovery
sd-load-balancingplanned - API design
sd-api-designplanned - Data modelling across stores
sd-data-modellingplanned - Timeouts, retries and idempotency
sd-idempotency-retriesplanned - Rate limiting, overload and resilience patterns
sd-rate-limiting-overloadplanned - Observability for designers
sd-observabilityplanned - Capacity planning and performance
sd-capacityplanned - Reliability, SLOs and failure modes
sd-reliability-slosplanned - Security basics in designs
sd-security-basicsplanned - Cost as a design constraint
sd-costplanned
Part B. Patterns (7 lessons)
- CQRS and event sourcing
sd-cqrs-event-sourcingplanned - Sagas and distributed transactions
sd-sagasplanned - Outbox and change data capture
sd-outbox-cdcplanned - Fan-out, pub/sub and feeds
sd-fan-outplanned - Multi-tenancy
sd-multi-tenancyplanned - Cells, stamps and shuffle sharding
sd-cells-shuffle-shardingplanned - Geo distribution and multi-region
sd-geo-distributionplanned
Part C. Design exercises (13 lessons)
- URL shortener and key-value service
sd-ex-url-shortenerpublished - News feed
sd-ex-news-feedpublished - Chat and presence
sd-ex-chatpublished - Notifications
sd-ex-notificationspublished - API rate limiter
sd-ex-rate-limiterpublished - Search autocomplete
sd-ex-autocompletepublished - File storage and sync
sd-ex-file-storagepublished - Payments ledger
sd-ex-payments-ledgerpublished - Metrics and time series pipeline
sd-ex-metrics-pipelinepublished - Ride matching and location
sd-ex-ride-matchingpublished - RAG service (retrieval-augmented generation)
sd-ex-rag-servicepublished - LLM gateway
sd-ex-llm-gatewaypublished - Vector search service
sd-ex-vector-searchpublished
Part D. Real-world practice (3 lessons)
- Design docs, ADRs and trade-off reviews
sd-design-docs-adrsplanned - Incident postmortems
sd-ex-postmortemsplanned - Migration plans
sd-ex-migrationsplanned