Roblox Game Detail Page System Design – Optimize Friend & Player Count Display

18 Views
No Comments
// Roblox has many games, and many players. We have a friends feature.
// You're the tech lead of the Game Detail Page team.

Your friends, Tuo, Jerry, Tom and other 17 friends, as well as 1.73 Million players had played this game.

Roblox has approx 100 Million users.
Peak concurrent users are only 10 Million.

This question focuses on system design and scalability within the context of Roblox’s Game Detail Page.
You’re asked to design how to efficiently display:

  • Which of your friends have played a specific game
  • The total number of players who have played that game

while considering massive user scale (100M total, 10M concurrent).

Key challenges include:

  • Efficiently querying mutual friends who played the game.
  • Handling high read-to-write ratios (millions of page views per minute).
  • Maintaining accurate but scalable player count data.
  • Designing real-time caching and denormalization strategies.

Typical design solutions might involve:

  • Redis or Memcached for caching friend play counts.
  • Precomputed friend–game mappings.
  • Asynchronous pipelines (Kafka, DynamoDB Streams, etc.) to update counts.
  • Using sharded databases or Graph databases for user–friend relations.

The VOprep team has long accompanied candidates through various major company OAs and VOs, including Roblox, Google, Amazon, Citadel, SIG, providing real-time voice assistance, remote practice, and interview pacing reminders to help you stay smooth during critical moments. If you are preparing for these companies, you can check out our customized support plans—from coding interviews to system design, we offer full guidance to help you succeed.

END
 0