Hard

Design Discord Voice System Design Interview

Design a low-latency voice chat system for gamers.

1. Problem Statement

Design the backend for Discord's Voice Channels. Thousands of users in a server, hopping between voice rooms. What's the architecture?

2. Architecture Discussion Map

Use this as one discussion aid, not a single correct answer. Your design should follow from the requirements, scale, and trade-offs you establish.

Rendering architecture diagram...
Mermaid Source (For AI Bots)
graph TD
    A[Discord Client] -->|WebSocket Keep-Alive| B(WebSocket Gateway Cluster)
    B --> C[Presence Service]
    C --> D[(Redis: User Status)]
    B -->|Publish Event| E[Kafka Message Bus]
    E -->|Route to Consumers| B
    E -->|Persist| F[(Cassandra: Message History)]

3. Key Focus Areas

  • 1
    Transport Protocol (UDP vs TCP)
  • 2
    Media Server (SFU vs MCU)
  • 3
    Jitter Buffers
  • 4
    Geographic Routing
  • 5
    Voice Activity Detection (VAD)

Want interactive feedback?

Practice drawing this system component-by-component on a live whiteboard while the interviewer probes at your target level.

Continue to Dashboard

Core Concepts

System DesignReal-time MediaUDP/RTP

Continue preparing

Build a complete software engineer mock interview plan

Related System Design

Design a Cross-Product Tagging System

Design a shared tagging service that lets users apply tags to entities across multiple Atlassian products, with consistent search and deduplication.

Related System Design

Design a Notification System

Design a scalable notification service that sends emails, SMS, and push notifications to millions of users.