PracHub
QuestionsPremiumLearningGuidesInterview PrepCoaches
|Home/System Design/Roblox

Design real-time game matchmaking service

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's competence in designing scalable, low-latency distributed systems and matchmaking algorithms, including skills in queue management, skill-based matching, regional sharding, SLO-driven latency targets, consistency models, failure handling, and monitoring.

  • hard
  • Roblox
  • System Design
  • Software Engineer

Design real-time game matchmaking service

Company: Roblox

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

Design a real-time game matchmaking service for an online multiplayer game. Specify goals (latency targets, fairness/skill balance, regional constraints), APIs (join, leave, heartbeat), data model, match formation algorithm (e.g., skill bands/ELO, queueing, timeouts, backfilling), scaling and sharding strategy, consistency model, and how you will handle failures, hotspots, and monitoring/metrics. Provide capacity estimates and discuss trade-offs.

Quick Answer: This question evaluates a candidate's competence in designing scalable, low-latency distributed systems and matchmaking algorithms, including skills in queue management, skill-based matching, regional sharding, SLO-driven latency targets, consistency models, failure handling, and monitoring.

Related Interview Questions

  • Design Multi-Dimensional Request Rate Limiting - Roblox (easy)
  • Design a Scalable Likes System - Roblox (medium)
  • Design favorites and social game recommendations - Roblox (medium)
  • Design a rate limiter - Roblox (medium)
  • Design a Scalable Like Counter - Roblox (medium)
Roblox logo
Roblox
Sep 6, 2025, 12:00 AM
Software Engineer
Onsite
System Design
29
0

Design a Real-Time Game Matchmaking Service

Context

You are designing the matchmaking subsystem for an online multiplayer game that supports multiple regions, game modes (e.g., 1v1, 3v3, 5v5), and both solo and party queues. The service must form balanced matches quickly while respecting latency and regional constraints. It must scale to millions of daily users and handle failures gracefully.

Goals and Requirements

  • Goals
    • Latency: Time-to-match (TTM) p50 ≤ 3s, p95 ≤ 10s for casual; p95 ≤ 30s for ranked/high-MMR.
    • Fairness/Skill Balance: Minimize team MMR deltas; keep within bands that widen over time in queue.
    • Regional Constraints: Prefer local region; allow cross-region fallback with explicit user opt-in or time-based expansion.
    • Party Integrity: Parties matched together; preserve role preferences if applicable.
    • Backfilling: Fill empty slots when players drop, with minimal disruption.
  • APIs to define
    1. join_queue
    2. leave_queue
    3. heartbeat (client, game server)
    4. allocate_server / assign_match
    5. match_status
  • Design aspects to cover
    • Data model
    • Match formation algorithm (skill bands/ELO, queueing, timeouts, backfilling)
    • Scaling and sharding strategy
    • Consistency model
    • Failure handling and hotspots
    • Monitoring/metrics and SLOs
    • Capacity estimates
    • Trade-offs

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Roblox•More Software Engineer•Roblox Software Engineer•Roblox System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.