Back to problems
Matchmaking System Design (Mock Interview + Low-Latency Pairing)
Design a matchmaking system for online multiplayer games that matches players together based on skill level, region, latency, and other factors. The system should support millions of concurrent players and provide fair, balanced matches.
Constraints
Functional
Match into teams/games by criteria, skill rating (MMR/ELO), modes (ranked/casual/tournament), team balancing, region matching, queue with estimated wait, party matching, optional role selection
Non-functional
Match in < 30s for most, fair balanced matches, millions of concurrent, real-time queue status, high availability, accurate ratings
Scale
50M players, 5M concurrent; 10M matches/day, peak ~80/s; 100K–500K in queue; 10M rating updates/day (~120/s); ~10 GB ratings, ~10 GB/day matches (~3.6 TB/year)
Stages ahead
1Requirement Analysis
2API Design
3High-Level Design
4HLD Extensions
5Trade-offs