Skip to main content

Module 1: System Design Methodology: Guided Labs

Lab 1: Forty-Five-Minute Design

Design a notification, feed, file-sharing, or reservation system. Time-box requirements, estimates, API/data model, high-level design, two deep dives, and failure review. Record what you deliberately did not design.

Lab 2: Assumption Sensitivity

Change traffic by 10x, object size by 100x, and freshness from minutes to seconds. Identify which components and decisions change; revise only those parts.

Lab 3: Trace and Failure Walkthrough

Trace one write and read across protocols, storage, caches, queues, and consistency boundaries. Inject timeout, dependency loss, hot key, and regional failure.

Lab 4: Review-Ready Design Document

Package scope, assumptions, estimates, views, data ownership, security, operability, alternatives, risks, and open questions for peer review.

Evidence: calculations, diagrams, failure matrix, review comments, and revisions.