Phase 3 — TypeScript
An HR department receives 500+ applications per month across 15 open positions. They're drowning in spreadsheets and email. They need a system where recruiters post jobs, applicants apply through a public form, and the hiring team moves candidates through stages with notes and ratings.
A real SaaS product category. Greenhouse, Lever, and Workable make millions from this. Public career page plus internal hiring dashboard. TypeScript catches bugs in your configurable pipeline logic, complex evaluation models, and role-based permissions before they reach production.
How to type the configurable pipeline (each job can have different stages — how do you define a type for a pipeline that varies per job?). How to type evaluations (different evaluators, stages, all linked to one candidate). How to use discriminated unions for application states. Whether to use Zod for runtime validation alongside TypeScript's compile-time checks. How to type your routes or resolvers end-to-end so a backend change breaks the frontend at compile time, not production.