Skip to content

Learn · System Design

Designing systems that survive their own dependencies.

A track on the parts of system design that AI cannot do for you — and the parts that AI changes the shape of.

Modules

Six modules.

01

Designing for failure

Timeouts, retries, idempotency, backpressure, blast radius. The boring foundations that AI cannot design for you.

02

Observability as a design input

Tracing, structured logs, metrics, and SLOs treated as first-class design choices — not afterthoughts.

03

Migration cost

Designing systems you can actually migrate. Why most systems can't be evolved later, and what to do about it now.

04

Systems with a model in the hot path

Latency, cost, caching, deterministic fallbacks, eval-in-prod. How to design a system whose key dependency is a generative model.

05

Tool-using agent architectures

Boundaries between the planner, the tools, and the executor. Where state lives. Where authorization is enforced.

06

The design interview, redrawn

What good answers look like when the interviewer expects you to discuss model dependencies, eval surfaces, and AI-specific failure modes.