Hard
DiscordZoomTwitch
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. Target Architecture (Mermaid)
The high-level architecture required to scale this system involves decoupling stateful components and utilizing specialized databases. Below is the reference architecture:
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
- 1Transport Protocol (UDP vs TCP)
- 2Media Server (SFU vs MCU)
- 3Jitter Buffers
- 4Geographic Routing
- 5Voice Activity Detection (VAD)
Want interactive feedback?
Reading architectures is not enough. Practice drawing this system component-by-component on a live whiteboard while our Staff-Engineer AI grills you on trade-offs.
Start InterviewCore Concepts
System DesignReal-time MediaUDP/RTP
