system-design
8 free lessons tagged system-design across AI, Business, Programming. Each one is a short sequence of focused steps with narration and a five-question quiz at the end — take them in any order, no signup required.
The Options Nobody Compares, and Changing Your Mind
The fine-tuning versus retrieval framing hides several options that are often better than either. This lesson covers long context and why it does not replace retrieval, prompt caching as a cost lever, agentic retrieval, continued pretraining, and how to revisit a decision that was right when you made it.
What Each Technique Actually Changes
Fine-tuning and retrieval are usually presented as alternatives when they change different things. This lesson separates them precisely: fine-tuning adjusts weights and teaches behaviour, retrieval supplies context and teaches nothing, and the question that decides between them is whether your problem is knowledge or form.
Building the Control Layer: Rails, Classifiers, and Containment
Guardrails are a layered control system around a model that cannot police itself. This lesson covers the rail types, rules versus classifiers versus model-based judges, the tools that implement them, the latency and false-positive budget that constrains every design, and why architectural containment beats filtering.
What a Solution Architect Actually Does
A solution architect sits between a business problem and a technical solution, and is accountable for whether the solution fits. This lesson defines the role, separates it from enterprise and technical architects, explains why the job is about judgment and trade-offs rather than coding, and shows how engineers grow into it.
Database Sharding and Replication
Go beyond a single database: learn how read replicas offload query load, how range and hash sharding partition data, why consistent hashing makes rebalancing tractable, and how to pick a shard key that avoids the celebrity problem and cross-shard pain.
Scaling and Load Balancing
Master the mechanics of scaling distributed systems: when to scale up versus out, why statelessness is the prerequisite for horizontal scale, how L4 and L7 load balancers differ, which balancing algorithm fits which workload, and how to avoid turning your load balancer into the next single point of failure.
Queues, Async, and Microservices
Learn how message queues and pub/sub decouple services, why at-least-once delivery demands idempotent consumers, how backpressure and dead-letter queues protect the system, and when microservices are worth the complexity — with a sequenceDiagram of async order processing.
Caching Strategies
Understand where caches live, how cache-aside, read-through, write-through, and write-back differ, how to choose eviction policies, and how to prevent cache stampedes — with hit ratio math and a concrete cache-aside code snippet.

