Build a Recommendation System and Conversational Interface from Scratch
Company: Netflix
Role: Software Engineer
Category: ML System Design
Difficulty: hard
Interview Round: Onsite
# Build a Recommendation System and Conversational Interface from Scratch
Design an initial recommendation system, then extend it with a chatbot that can retrieve and explain recommendations while respecting the same eligibility and ranking rules.
### Constraints & Assumptions
- Start with no existing recommender infrastructure.
- The chatbot must not invent unavailable items.
### Clarifying Questions to Ask
- What item, feedback signals, and success metric apply?
- Does conversation alter long-term preferences?
### What a Strong Answer Covers
- Data, baseline retrieval/ranking, feedback, cold start, evaluation, and serving.
- Grounded chatbot tools, session state, safety, and latency.
### Follow-up Questions
- How would explanations be evaluated?
- How would you prevent feedback loops?
Quick Answer: Design an initial recommendation system, then extend it with a chatbot that can retrieve and explain recommendations while respecting the same eligibility and ranking rules. Connect data and model choices to serving architecture, latency and throughput, evaluation, monitoring, failure modes, and iteration.