Design a restaurant recommender under cold start

Quick Overview

This question evaluates competence in designing multi-objective recommendation systems, covering feature engineering from sparse signals, learning-to-rank strategies for cold-start and popularity bias, feedback-loop mitigation, online serving with strict latency/availability targets, and fairness-aware evaluation.

Design a restaurant recommender under cold start

Company: Meta

Role: Data Scientist

Category: Machine Learning

Difficulty: hard

Interview Round: Onsite

You own the restaurant recommendation surface for a city app. Design a ranking system that balances distance, predicted satisfaction, exploration of new restaurants, and diversity across cuisines. Specify: (a) features you would engineer from sparse signals (e.g., location pings, session dwell, review text), (b) a learning-to-rank approach that avoids popularity bias and handles cold-start restaurants and users, (c) a feedback-loop mitigation plan (propensity weighting, counterfactual logging), (d) online serving constraints (P95 latency ≤50 ms, 99.9% availability) and a fallback when models fail, and (e) offline/online evaluation, including how you’d de-bias click labels for position bias and estimate long-term outcomes like repeat visits. How would you detect and correct geographic and price-point unfairness without materially harming user utility?

Quick Answer: This question evaluates competence in designing multi-objective recommendation systems, covering feature engineering from sparse signals, learning-to-rank strategies for cold-start and popularity bias, feedback-loop mitigation, online serving with strict latency/availability targets, and fairness-aware evaluation.

|Home/Machine Learning/Meta
Meta logo
Meta
Oct 13, 2025, 9:49 PM
hardData ScientistOnsiteMachine Learning
3
0

Design a Multi-Objective Restaurant Ranking System

You own the restaurant recommendation surface for a city app. The goal is to rank nearby restaurants for each user by balancing: (1) distance, (2) predicted satisfaction, (3) exploration of new restaurants, and (4) diversity across cuisines.

Assume you have impression/click/reservation logs, sparse signals (location pings, session dwell, review text), and metadata (cuisine, price, hours, neighborhood). The product shows a slate of 20 items by default.

Specify the following:

(a) Feature engineering from sparse signals

  • What user, restaurant, context, and interaction features would you build from location pings, session dwell, review text, etc.?

(b) Learning-to-rank approach

  • Propose a ranking architecture that avoids popularity bias and handles cold-start restaurants and users.

(c) Feedback-loop mitigation

  • Describe a plan using propensity weighting and counterfactual logging to reduce bias from prior rankings.

(d) Online serving constraints and fallback

  • Meet P95 latency ≤ 50 ms and 99.9% availability. Outline the serving path and a safe fallback when models fail.

(e) Evaluation

  • Offline and online evaluation plans, including de-biasing click labels for position bias and estimating long-term outcomes like repeat visits.

Fairness

  • How would you detect and correct geographic and price-point unfairness without materially harming user utility?
Loading comments...