Design a Product or Video Recommendation System

Quick Overview

This question evaluates competency in designing large-scale recommendation systems, encompassing machine learning modeling, candidate generation and ranking, data engineering, online serving, feedback-driven learning, evaluation, and experimentation.

Design a Product or Video Recommendation System

Company: Google

Role: Machine Learning Engineer

Category: ML System Design

Difficulty: medium

Interview Round: Technical Screen

Design a recommendation system for a large consumer platform. The platform may recommend either products in an e-commerce feed or videos in a media feed. Your design should cover: 1. The main user-facing recommendation surfaces. 2. Online and offline data sources. 3. Candidate generation. 4. Ranking and re-ranking. 5. Feedback signals such as clicks, views, purchases, watch time, likes, skips, hides, and negative feedback. 6. Model training and evaluation. 7. Cold-start handling for new users and new items. 8. Online serving architecture and latency constraints. 9. Experimentation, monitoring, and guardrails.

Overview: This question evaluates competency in designing large-scale recommendation systems, encompassing machine learning modeling, candidate generation and ranking, data engineering, online serving, feedback-driven learning, evaluation, and experimentation.

Community answers

Answer by selenewang941015

Below is an interview-ready system design answer. Scope and product surfaces I would first clarify the primary business objective, because it differs by platform: E-commerce: long-term customer value, purchases, GMV or margin, repeat purchase, seller health, and user satisfaction. Media/video: satisfied watch time, completion, session depth, retention, and negative-feedback avoidance. The system can serve several recommendation surfaces: Home feed / personalized feed “Recommended for you” Similar items or “Because you watched/bought…” Up Next / autoplay Product detail page cross-sell and substitute recommendations Cart and checkout recommendations Search-result re-ranking Push/email recommendations Creator, merchant, category, or collection recommendations Each surface has a different user intent and latency budget. For example, an “Up Next” recommendation can lean heavily on the current video, while a Home feed needs broader personalization and diversity. High-level architecture I would use a multi-stage funnel: [ \text{candidate generation} \rightarrow \text{filtering} \rightarrow \text{pre-ranking} \rightarrow \text{final ranking} \rightarrow \text{re-ranking / policy constraints} ] The reason for multiple stages is scale. The platform may have billions of products or videos, but the final ranker can only score hundreds or thousands of candidates within a tight latency budget. A typical request path is: [ \text{Request} \rightarrow \text{online feature service} \rightarrow
|Home/ML System Design/Google
Google logo
Google
Dec 24, 2025
mediumMachine Learning EngineerTechnical ScreenML System Design
27
0

Design a recommendation system for a large consumer platform. The platform may recommend either products in an e-commerce feed or videos in a media feed.

Your design should cover:

  1. The main user-facing recommendation surfaces.
  2. Online and offline data sources.
  3. Candidate generation.
  4. Ranking and re-ranking.
  5. Feedback signals such as clicks, views, purchases, watch time, likes, skips, hides, and negative feedback.
  6. Model training and evaluation.
  7. Cold-start handling for new users and new items.
  8. Online serving architecture and latency constraints.
  9. Experimentation, monitoring, and guardrails.

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...