Design notification and feed recommenders
Company: Pinterest
Role: Machine Learning Engineer
Category: ML System Design
Interview Round: Onsite
Design two recommendation systems for a large visual-discovery platform:
1. **Notification recommendation system**: Decide whether to send a notification to a user, which content to include, and when to send it. The goal is to increase long-term engagement without causing notification fatigue, unsubscribes, or spam complaints.
2. **Home-feed ranking system**: Rank candidate visual posts for each user session. The goal is to maximize high-quality engagement while preserving freshness, diversity, safety, and latency requirements.
Discuss product goals, success metrics, data and labels, candidate generation, feature engineering, model choices, online serving architecture, experimentation, cold-start handling, exploration, and major failure modes.
Quick Answer: This question evaluates an engineer's ability to design scalable, production-ready recommendation systems for notifications and home feeds, encompassing competencies in personalization, ranking, online serving, feature engineering, and balancing engagement with user experience while mitigating negative outcomes.