Designing the Systems Around Machine-Learned Models
A self-study course for working professionals who can train models in a notebook but want to design production ML systems end-to-end.
The model is not the product — the system is. This course teaches you to treat the system around the model as the primary engineering artifact: data & feature pipelines, experimentation, evaluation, serving, monitoring, and governance — with every decision made deliberately and recorded as a tradeoff.
- Design-first, not algorithm-first. The emphasis is on architecture, requirements, and trade-offs — not on re-deriving ML math.
- End-to-end. It covers the full production ML lifecycle, including MLOps (CI/CD), deployment, observability, drift, and governance.
- Failure-driven. Every module exists to prevent a specific production failure mode (leakage, skew, drift, feedback loops, silent degradation).
- Vendor-neutral Python. scikit-learn + PyTorch, Pandera/Great Expectations, MLflow, FastAPI + Docker, Prometheus/Grafana. No single-cloud assumption.
- No labs — full coded demos are deferred to a second pass (
💻 CODED DEMO (Pass 2)placeholders mark where they'll go). - No assessment — deferred.
- No capstone decision — deferred (see M18).
18 modules in 6 parts, following the production ML lifecycle.
| Part | Modules | Theme |
|---|---|---|
| 0 | M1 · M2 · M3 | Foundations — the lifecycle, failure science, architecture & stack |
| 1 | M4 · M5 · M6 | The Data & Feature Layer |
| 2 | M7 · M8 · M9 | The Modeling Layer |
| 3 | M10 · M11 | The Verification Layer |
| 4 | M12 · M13 · M14 | The Serving Layer |
| 5 | M15 · M16 · M17 | The Operational Layer |
| 6 | M18 | Synthesis — a complete worked design |
- Read the modules in order — each builds on the last, and the failure-class → layer map recurs throughout.
- Do the design exercise at the end of every module. They're paper-based; the point is the thinking, not the code.
- Track your decisions in the tradeoff ledger discipline (and ADR format) introduced in M3.
- When a module marks
💻 CODED DEMO (Pass 2), note the concept — the code comes in the second pass.
- scikit-learn
- PyTorch
- Pandera / Great Expectations
- MLflow
- FastAPI
- Docker
- ONNX / TorchScript
- Prometheus
- Grafana
- alibi-detect (drift detection)
- Prefect (orchestration)
Specs, versions, requirements, and setup for the tools behind the stack — the reference shelf module lessons link out to. Working demos that exercise them land in each module's code/ folder during Pass 2.
- Airflow — promotion pipeline (M13) & retraining loop (M16), infra path
- Kubeflow Pipelines — same concepts, Kubernetes path
- TFX — same concepts, canonical component graph
- Prefect — orchestration concept, no-infra path
- alibi-detect — drift detection (M15, M16)
All 18 modules are written. See syllabus.md for the full blueprint and conventions. The capstone decision (M18) is deferred, and full coded demos remain a second pass (💻 CODED DEMO (Pass 2)).