Code Room
System designHardsd-g350
Subject PersonalizationLevel Senior–Staff~45 minCommon in ML systems interviewsIndustries Technology

Question

Design the system that ranks the *rows/modules* of a personalized home page (e.g. 'Continue watching', 'Because you watched X', 'Trending', 'New releases', 'Top picks') per user — deciding which row goes at the top and which gets dropped — rather than ranking items within a row. There are ~40 candidate modules, you show ~10, and you want to maximize engagement while continuously learning which modules work for which users, at 100M users with a < 80ms budget. How do you score and order the modules, and how do you keep learning online?

What a strong answer looks like

Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.

Narrate your design
Loading whiteboard…
Run or narrate your approach, then ask the coach.