Lesson 2 / 32

Gathering Requirements

Clarify scope, actors, and constraints before designing.

Questions to ask

Who are the users? What are the core features (MVP)? Read-heavy or write-heavy? How many daily active users? What is acceptable latency and downtime?

Define the API

Turn features into endpoints early. POST /orders, GET /orders/{id}. The API shape forces you to name the data and the access patterns.

State assumptions out loud

If you can't get an answer, assume a number and say so: "I'll assume 1M DAU and 10:1 read:write." It keeps the design concrete.