System design interview questionHardMessaging & Realtime

Design a Video Conferencing System like Zoom

Design Zoom-style video conferencing: users join a meeting and exchange realtime audio/video with low latency.

Interview scope

Client → Realtime Gateway for media/signaling. Client → Gateway/LB → App → Cache + DB for meeting control/presence. Object Storage for recordings. No Client → DB.

Functional requirements

  • Create/join a meeting.
  • Exchange realtime media / presence among participants.
  • Store meeting metadata (optional recording pointer at high level).

Scale and quality goals

  • Realtime Gateway is core for live sessions.
  • Control APIs via Gateway/LB → App → Cache + DB.
  • Recordings go to Object Storage — not SQL BLOBs as the main path.

Capacity assumption

Design for this scale

Assume ~10M meeting-minutes/day peak concurrent rooms; signaling/control is chatty, media path must stay realtime.

Practice more than a diagram

Place components on the Froquiz canvas, connect the data flow, and see which decisions the scenario-specific review finds missing. The full exercise and review unlock with Premium.

Explore Premium