← Back to Stage 4
Stage 4#401Architecture · Senior~8 min read

Design a typed transfer API client

Testing + Tooling Drills · API + Mock Boundaries

Define request IDs, idempotency keys, typed errors, retry policy, auth/network handling, and runtime validation.

Prompt

Design a typed transfer API client

This is a whiteboard rep. Start by naming ownership boundaries, then walk from requirements to state, API shape, UI behavior, testing, and rollout risk.

💡
Tip

Keep transport concerns out of React components.

Foundation

What to ground before answering

Define request IDs, idempotency keys, typed errors, retry policy, auth/network handling, and runtime validation.

Focus vocabulary: API client, typing, idempotency.

The useful mental model is not to memorize a perfect answer. It is to explain what owns the data, what can fail, what the user sees, and what test would prove the behavior.

System design

Interview explanation prompt

  • What problem is this practice item really testing?
  • What state or contract boundary must be explicit?
  • What edge case would cause a production regression?
  • What would you test first?
  • How would you explain the tradeoff in two minutes?
Self-grade

Self-grade

  • Strong answer starts with ownership boundaries and user risk.
  • Strong answer names failure modes and test strategy.
  • Weak answer jumps to components before clarifying data flow and source of truth.

Model Answer

A strong answer for this prompt should cover:

  • Interview target: Define request IDs, idempotency keys, typed errors, retry policy, auth/network handling, and runtime validation.
  • Production nuance: Keep transport concerns out of React components.
  • Focus vocabulary: API client, typing, idempotency.
  • Execution shape: Lead with ownership boundaries, then describe state, contracts, edge cases, tests, and rollout risk.

Use this answer spine:

  1. Open with the user or team risk behind "Design a typed transfer API client".
  2. Name the source of truth, API boundary, UI state, or ownership boundary that controls the design.
  3. Give one concrete example from PR TIMES editor work, React/TypeScript migration, performance work, or systems/blockchain practice.
  4. Close with the smallest test, artifact, or rollout guard that proves you would ship it safely.
Review

Recall before moving on

  • What is the one-sentence answer for "Design a typed transfer API client"?
  • Which real experience from PR TIMES, React/TypeScript migration, or systems work supports it?
  • What edge case would you volunteer before the interviewer asks?
  • What is the smallest test or artifact that proves the design works?