Design a feed ranking system
Company: Uber
Role: Machine Learning Engineer
Category: ML System Design
Difficulty: medium
Interview Round: Technical Screen
Design a machine-learning-based feed ranking system for a consumer product. The system should rank candidate posts or items for a user's home feed in real time.
Discuss:
- Product goals and ranking objectives
- Online and offline metrics
- Candidate generation, filtering, ranking, and re-ranking stages
- Features and data sources
- Model training and serving architecture
- Handling freshness, diversity, spam, and cold start
- Experimentation, monitoring, and failure modes
- Latency, scalability, and reliability constraints
Quick Answer: This question evaluates a candidate's competency in designing end-to-end machine-learning-based feed ranking systems, including setting ranking objectives, candidate generation and filtering, feature design, model training and serving, and operational concerns like freshness, diversity, and scalability.