Reqflow
← All learning paths
Learning path
Intermediate~68 min·3 systems

Real-Time Systems

Persistent connections, presence, pub/sub fanout, geo-indexed dispatch: designs where seconds matter.

After this path you will be able to

Design systems requiring live updates — chat, tracking, collaborative tools — and articulate the trade-offs between WebSockets, SSE, and long-polling at each scale tier.

Interview approach for this path
  1. 1.Clarify the data direction first: is it server-to-client only (SSE is enough) or bidirectional (WebSocket)?
  2. 2.Pick the right protocol and explain why: WebSocket for chat, SSE for notifications, long-polling for legacy environments.
  3. 3.Address connection scale: millions of persistent connections require a dedicated connection tier, not your app servers.
  4. 4.Explain pub/sub fan-out: when a message arrives, how do you push it to all connected clients on different boxes?
  5. 5.Handle presence and heartbeats: how do you know a user is still connected, and how quickly do you detect disconnections?
  6. 6.Discuss geo-distribution: for global users, how do you minimize round-trip time to the WebSocket server?

Systems in this path

3 total
  1. 1
    Chat (Slack-style)
    Intermediate·18 min

    Room-based pub/sub fanout across gateway instances.

  2. 2
    WhatsApp
    Advanced·25 min

    Persistent connections, message queues, delivery.

  3. 3
    Uber (Driver Matching)
    Advanced·25 min

    Geo-indexing, dispatch, real-time location streams.

Concepts reinforced throughout

Up next

FAANG Interview Fast Track

The five systems that appear most in senior engineering loops — from a warm-up URL shortener to a full fan-out social feed and a payment system that cannot double-charge.