Cianplan

Level 1: Foundations · L1.5 Design method, requirements & non-functional requirements

High-level design, then deep dives

Build a working design quickly and pick the right deep dives.

13 min · Free

What you take away

  • A high-level design is the write path and the read path for the main flow, in about seven boxes, each justified by a requirement.
  • Label every arrow with what it carries and whether it is synchronous — an unlabelled arrow hides the decision.
  • Deep-dive candidates: the number your estimate flagged, the component with the widest blast radius, the hardest requirement.
  • Offer your own deep dive rather than waiting; finding your design's weakest point is the senior signal.

How the class is laid out

  1. The problem
  2. The simple version
  3. Fifteen minutes of design
  4. Choosing the deep dive
  5. Check your understanding