Skip to content

ORIGINAL SYSTEM DESIGN QUESTION

Reliable chat delivery

Support one-to-one chat, offline delivery and per-conversation ordering.

Open practice workspace

Original exercise · intermediate. Editorial role relevance does not imply a company has asked this question.

Requirements and constraints

  • 100,000 connected clients; 10,000 messages/second at peak.
  • Messages can retry and arrive out of order; retain history for 90 days.
  • State assumptions and justify security, cost, operational ownership and data retention.

Pressure round

A client reconnects after missing a day of messages.

Build and explain the design

Requirements & scope

Who uses it? What must it do? What is explicitly out of scope? State latency, durability and privacy goals.

Self-review guidance

Define the actors, required operations and out-of-scope behavior. Explicit requirement: Messages can retry and arrive out of order; retain history for 90 days.

Capacity estimates

State assumptions, peak requests/second, data volume and retention. Show your arithmetic and units.

Self-review guidance

Use this workload: 100,000 connected clients; 10,000 messages/second at peak. Convert rates and payload sizes into peak compute/storage assumptions; show units, headroom and what remains unmeasured.

APIs & data model

Describe endpoints/events, entity keys, indexes, authorization, and idempotency.

Self-review guidance

Define message IDs, conversation membership and reconnect cursors.

Architecture & data flow

Describe components and request/event paths. Use plain text arrows to sketch your design; explain each responsibility.

Self-review guidance

Describe gateway connections, durable message log and asynchronous fan-out.

Failures & observability

What happens on overload, duplicate events, partial failures or lost dependencies? Discuss monitoring and recovery.

Self-review guidance

Pressure-test: A client reconnects after missing a day of messages. Describe bounded recovery, deduplication, observability and a user-visible failure state.

Tradeoffs & alternatives

Compare two plausible approaches. State the costs, consistency model and what would make you change the design.

Self-review guidance

Compare server sequence ordering with client clocks and delivery acknowledgments.

Design guidance describes assumptions and tradeoffs; no architecture has been simulated or benchmarked.

Practice this question

Save your work privately, explain decisions and return to your revision queue.

Open practice workspaceBrowse the question library →