We use analytics and advertising cookies to understand how the site is used and whether our ads on Facebook and Instagram work. They are set only if you accept. See our Privacy Policy for details.
Redis sorted sets, sharding strategies, real-time vs eventual updates, top-K queries, hot keys, deep pagination - the deceptively-simple problem that breaks at 100M users.
Design a leaderboard for a game (or any ranking system) with 100M users. Users earn points; the leaderboard shows the top-100 globally and each user's own rank + neighbors. Updates must be near-real-time during peak events. The system must handle a release-day spike of 1M users hitting the leaderboard simultaneously without melting the cache.
This is the deceptively-simple problem. A naive Redis-sorted-set implementation works for 1M users. At 100M, it breaks: hot keys, slow ZRANGE queries on deep pages, sharding the sorted set across nodes, real-time global updates - each is a senior-level conversation.
Strong candidates start with ZADD/ZRANGE, then walk through sharding strategies, the hot-key problem, and the trade-off between real-time and eventual consistency. Excellent candidates discuss the "user X's rank" query (which is harder than top-K) and explain why deep pagination requires specialized data structures.
Asking these before diving into a solution is the difference between a "hire" and a "no signal" rating. Pick the questions whose answers would change your design.
Capacity estimation · architecture with all 10 components explained · 6 deep dives · trade-off analysis · 8 common follow-up questions
Unlock it with a subscription.
Try everything free for 7 days. Cancel anytime.
7-day trial, then $8/mo - or $48/yr ($4/mo, save 50%). Cancel anytime.
Reading is the floor. The interview signal is in walking through this live with someone probing follow-ups. Use the AI mock interview to practice talking through requirements, architecture, and trade-offs out loud.
Start a system design mock interview →