CrackML by @ml.with.umang
Interview questions / ML System Design
ML System Design interview question

Design a Places Recommendation System for Maps

Design recommendations for places in a maps product under location, intent, and freshness constraints.

hardsystem designEvidence 41/1001 source reportGoogle

The 60-second answer

Clarify user intent, geographic radius/travel-time constraints, freshness, personalization, and whether the task is discovery, search, or route-aware recommendation. Generate candidates from geo indexes/category retrieval and enrich with place quality, popularity, user history, context, opening hours, and traffic/travel-time features.

Build the answer in this order

1
Frame the problem

Clarify user intent, geographic radius/travel-time constraints, freshness, personalization, and whether the task is discovery, search, or route-aware recommendation.

2
Design the data path

Generate candidates from geo indexes/category retrieval and enrich with place quality, popularity, user history, context, opening hours, and traffic/travel-time features.

3
Choose the modeling stack

Rank with a multi-objective model balancing relevance, distance, diversity, freshness, and business/safety rules.

4
Serve, evaluate, iterate

Evaluate by geography/category and monitor stale place data, regional cold start, latency, and online visit/satisfaction signals.

A useful interview mental model

This is the shape of a strong answer—not a script to memorize.

01Requirements
02Data
03Model / Retrieval
04Serving
05Monitor

Senior-level signal

  • Senior answers address geographic selection bias, sparse regions, and privacy boundaries for location history.
  • Explain how traffic/ETA uncertainty propagates into recommendation quality and fallback behavior.

What the interviewer is really testing

Product framing, data design, modeling choices, serving constraints, reliability, evaluation, and explicit trade-offs.

Likely follow-up questions

What changes at 10× traffic or data volume?
Which failure mode would you monitor first in production?
How would you evaluate this offline and online before rollout?

Common weak-answer patterns

  • Jumping to a model before defining the product contract.
  • Listing components without bottlenecks, metrics, or failure handling.
  • Ignoring data quality, serving latency, monitoring, and iteration.