If You Remember One Thing
Use this frontend system design interview checklist in the last few minutes of a mock or real round. It catches missing evidence before the interviewer has to ask: requirements, rendering, state, contracts, UI states, accessibility, performance, observability, trade-offs, and the close.
This page is the final pass. Use the rubric to score your answer, the pitfalls guide to repair weak signals, and this checklist to verify coverage before you stop.
10-Minute Final Review Runbook
| Time | Review area | What to confirm out loud |
|---|---|---|
| 1 min | Scope and success metrics | Primary user, v1 flow, non-goals, success metric, and the constraint that changes the design. |
| 2 min | Architecture and rendering | Route shape, rendering choice, ownership boundary, and why this is not over-built for v1. |
| 2 min | State, data, and API contracts | Server state, UI state, URL state, cache keys, mutations, API shape, and component contracts. |
| 2 min | UI states, accessibility, and performance | Loading, empty, error, stale, partial states, focus behavior, and the top performance budget. |
| 2 min | Trade-offs, risks, and validation | Biggest trade-off, rollback or rollout trigger, observability, and how you know the design works. |
| 1 min | Closing script | Summarize the selected path, risk, validation plan, and what you would deepen next. |
Pass / Warn / Fail Checklist
| Axis | Pass | Warn | Fail |
|---|---|---|---|
| Requirements and non-goals | User, v1 scope, non-goals, scale, constraints, and success metric are explicit. | Scope is mostly clear, but success metric or non-goals are vague. | You started drawing before the problem was shaped. |
| Rendering and architecture choice | SSR, SSG, CSR, hybrid, or microfrontend choice is tied to product constraints. | The architecture works, but the rendering trade-off is not justified. | You named tools or boxes without explaining why they fit. |
| State ownership and cache invalidation | Server state, local UI state, URL state, cache keys, freshness, and invalidation are separated. | State types are named, but stale data or writes are under-specified. | Everything goes into one vague global store. |
| API and component contracts | API response shape, component responsibility, props/events, auth, pagination, and errors are clear. | Components are named, but contracts or transitions are incomplete. | The diagram has no testable interface boundaries. |
| Loading, empty, error, stale, partial states | Each user-visible state has a UI behavior and recovery path. | Happy path and errors are covered, but stale or partial behavior is missing. | The answer assumes everything succeeds. |
| Accessibility and responsive behavior | Focus, keyboard, labels, announcements, reduced motion, and responsive constraints are covered where relevant. | Accessibility is mentioned, but not tied to the interaction. | The answer only describes visual layout. |
| Performance, reliability, and observability | Top bottleneck, budget, Core Web Vitals or route metric, degraded UX, logging, and alert signal are named. | Performance tactics are listed, but measurement or reliability is vague. | Optimizations are random and unvalidated. |
| Trade-offs, rollout, and closing summary | Alternatives, chosen trade-off, rollout risk, rollback trigger, and final summary are clear. | Trade-offs are mentioned, but the close does not tie the answer together. | The answer ends abruptly or sounds like every choice is pure upside. |
Final Checks by Area
Rendering and architecture
- Public, SEO-heavy route: Did you justify SSR or SSG and explain hydration cost?
- Authenticated app: Did you explain why CSR or a hybrid shell is enough?
- Large organization: Did you separate team ownership from runtime complexity before choosing microfrontends?
State, data, and contracts
- State split: Did you separate server cache, local UI state, URL state, and persisted drafts?
- Fetching: Did you name request timing, pagination, prefetch, refresh, cancellation, and stale response behavior?
- Contracts: Did you define API shape, component props/events, validation, auth, and failure transitions?
Performance and reliability
- Load path: Did you name the route budget, bundle split, image/font strategy, and fallback UI?
- Interaction path: Did you mention INP risk, main-thread work, debounce/throttle, virtualization, or worker boundaries where relevant?
- Observability: Did you name the event, metric, log, or alert that proves the design works in production?
Scenario-Specific Final Checks
- Typeahead final review: request ordering, stale suggestions, keyboard navigation, latency budget, and no-result state.
- Infinite scroll final review: cursor state, virtualization, scroll restoration, partial failure, and screen-reader access.
- Dashboard widgets final review: layout ownership, resize/drag cost, persistence, panel isolation, and degraded loading.
- Live chart final review: sampling, backpressure, render loop, memory bounds, dropped updates, and alerting.
- Multi-step form final review: draft ownership, validation timing, autosave conflict, interaction latency, and recovery after failed saves.
- Design system final review: token governance, API stability, accessibility contracts, versioning, adoption, and bundle cost.
30-Second Closing Script
"I scoped the primary user path, chose the rendering and architecture around that path, separated state and API contracts, covered loading, error, accessibility, and performance behavior, and named the biggest trade-off. I would validate this with [metric] and revisit [risk] if [trigger] happens."
Last-Minute Phrases That Score
- "For v1, I will optimize for the primary task and keep the expansion path explicit."
- "This belongs in server state because freshness matters; this stays local because it only drives the component."
- "The contract should make loading, empty, error, stale, and partial states explicit."
- "The trade-off is faster first content versus more server work, so I would validate it per route."
- "I will pause here: do you want me to go deeper on data ownership, interface states, or performance?"
What To Review Next
- Frontend system design interview rubric: score the strength of your answer.
- Frontend system design mistakes to avoid: repair weak signals during the answer.
- Frontend system design performance guide: deepen metrics, budgets, and validation.
- RADIO framework answer structure: rebuild the full answer flow.