SOFTWARE ENGINEERING

SWE System Design

Core distributed-systems ideas for software engineers

CURRICULUM

A visual course on the concepts behind reliable large-scale software systems: availability, consistency, partition tolerance, replication, sharding, caching, queues, consensus, failure modes, and the tradeoffs engineers must choose explicitly.

  1. 01A Method for Designing SystemsA repeatable way to approach any design problem, and how to sketch it clearly.Published 09 Jul 202614 sections
  2. 02Scalable System Design PatternsCore patterns for growing a system from one server to a distributed architecture.Published 09 Jul 202617 sections
  3. 03Different Types of Data StorageChoosing storage by access pattern, consistency, scale, and query shape.Published 09 Jul 202620 sections
  4. 04Caching, In DepthHow caches actually work: strategies, eviction, invalidation, and the failure modes.Published 09 Jul 202616 sections
  5. 05Queues and Messaging, In DepthDecoupling with queues and logs: delivery guarantees, ordering, and failure handling.Published 09 Jul 202614 sections
  6. 06Event-Driven ArchitectureReacting to events instead of calling services directly: notification, state transfer, and event sourcing.Published 09 Jul 202611 sections
  7. 07Sharding and Partitioning, In DepthSplitting data across nodes: partition strategies, rebalancing, and the hard queries.Published 09 Jul 202616 sections
  8. 08Replication and Consensus, In DepthKeeping copies in sync: leader-follower, quorums, and how nodes agree.Published 09 Jul 202615 sections
  9. 09Managing Shared StateKeeping data correct when many servers, workers, and clients touch it at once.Published 09 Jul 202623 sections
  10. 10CAP TheoremWhen a distributed system is cut in half by a network partition, it must choose between answering and risking disagreement, or stopping until agreement is safe.Published 09 Jul 202626 sections
  11. 11The OSI Model (and why TCP/IP won)A first-principles tour of the seven layers, a real packet's journey, and where switches, routers, and load balancers actually sit.Published 09 Jul 20269 sections
  12. 12HTTP/1.1 vs HTTP/2 vs HTTP/3How the web's core protocol evolved to kill head-of-line blocking — and when each version actually matters for your design.Published 09 Jul 20267 sections
  13. 13Content Delivery Networks (CDN)A first-principles tour of edge PoPs, anycast routing, the cache hierarchy, and the headers that control it all.Published 09 Jul 202610 sections
  14. 14How SSH Really WorksA first-principles walk through the SSH handshake: key exchange, host verification, authentication, and the encrypted channel — and why it uses two different kinds of cryptography.Published 09 Jul 20269 sections
  15. 15gRPCContract-first RPC over HTTP/2: Protocol Buffers, streaming, deadlines, and when it beats REST.Published 09 Jul 202610 sections
  16. 16GraphQLOne endpoint, client-specified queries: solving over/under-fetching, and paying for it with resolver and caching complexity.Published 09 Jul 202610 sections
  17. 17The API Gateway PatternOne front door for many services: routing, auth, rate limiting, and the cross-cutting concerns you pull off the services.Published 09 Jul 202611 sections
  18. 18Data-Plane Proxies: Envoy & KongThe proxies that run the traffic: Envoy's sidecar mesh, Kong's centralized gateway, and the control-plane/data-plane split.Published 09 Jul 202610 sections
  19. 19WAF & Edge SecurityThe outer wall: filtering malicious traffic at the edge before it ever reaches your servers.Published 09 Jul 202611 sections
  20. 20Security in System DesignBuilding systems that stay safe even when one layer fails: defense in depth, least privilege, and trust boundaries.Published 09 Jul 202613 sections
  21. 21OAuth 2.0 & OpenID ConnectLetting an app act on your behalf without ever handing it your password — and telling authorization apart from authentication.Published 09 Jul 202611 sections
  22. 22LLM GatewaysOne unified proxy in front of many model providers: routing, fallback, cost, caching, and observability.Published 09 Jul 202612 sections
  23. 23Agentic System ArchitectureFrom a single prompt to an LLM in a loop that observes, decides, calls tools, and acts toward a goal.Published 09 Jul 202610 sections
  24. 24Agentic Patterns & ReliabilityThe building-block patterns for composing agents, and the guardrails that make them safe to run in production.Published 09 Jul 202612 sections
  25. 25Distributed System Patterns I: ResilienceThe handful of patterns that keep a distributed system standing when one of its parts misbehaves.Published 09 Jul 202613 sections
  26. 26Distributed System Patterns II: Data & CoordinationThe patterns for moving, storing, and agreeing on data once a single database is no longer enough.Published 09 Jul 202613 sections
  27. 27Design Principles: KISS, SOLID, CAP, BASEThe short list of acronyms that quietly shape almost every system-design decision.Published 09 Jul 20269 sections
  28. 28ACID Properties in DatabasesThe four guarantees that let a database survive crashes, concurrency, and half-finished work.Published 09 Jul 202611 sections
  29. 29Apache Airflow (Workflow Orchestration)Scheduling and dependency-managing batch data pipelines with a DAG as the core abstraction.Published 09 Jul 20268 sections
  30. 30Snowflake (Cloud Data Warehouse)Separating storage from compute so analytics can scale elastically over huge datasets.Published 09 Jul 20269 sections
  31. 31The Data LakehouseCheap lake storage plus warehouse-grade table management, unified in one architecture.Published 09 Jul 20267 sections
  32. 32Concurrency vs ParallelismDealing with many things at once versus doing many things at once — and why they're not the same.Published 09 Jul 20269 sections
  33. 33DevOps vs SRE vs Platform EngineeringThree overlapping disciplines that all attack the dev↔ops wall — a culture, an engineering practice, and a product — and when an org needs each.Published 09 Jul 20268 sections
  34. 34Data PipelinesThe automated plumbing that moves and reshapes data from where it is produced to where it is used — stages, ETL vs ELT, batch vs streaming, and why it exploded in popularity.Published 09 Jul 202610 sections
  35. 40Two Planes of Authorization: Who/What vs Where/HowWhen a workload reaches out to a customer's database or connector, two very different systems must both say "yes" — an **auth service** that decides *who* the user is and *what* they may do, and an **egress proxy** that decides *where* the workload may connect and *how*. Why these are separate jobs, why collapsing them into one is a security bug, and how the four authorization layers combine as an AND.Published 20 Jul 20269 sections