Design a Short-Video Recommendation System
Company: Bytedance
Role: Software Engineer
Category: ML System Design
Difficulty: medium
Interview Round: Onsite
## Question
Design a recommendation system for a short-video feed. The system should generate a personalized ordered feed, react to recent viewing behavior, handle new users and new videos, and balance engagement with content diversity and exploration.
### Constraints & Assumptions
- The catalog and user population are large enough that scoring every video per request is impossible.
- Available signals include impressions, watch duration, completion, likes, comments, follows, skips, creator relationships, and content metadata or embeddings.
- Recent behavior should influence the next recommendations quickly.
- The feed must avoid excessive repetition from one creator or content type.
- The product cares about durable consumption and retention, not click-through rate alone.
### Clarifying Questions to Ask
- What is the primary product objective, and which guardrail metrics must not regress?
- What latency and freshness targets apply to feed generation and feature updates?
- Are there policy, safety, age, geography, or inventory constraints before ranking?
- How much exploration traffic may be allocated to uncertain items?
- Which interactions count as positive, negative, or ambiguous feedback?
```hint Separate scale-reduction stages
Use multiple candidate sources, then progressively more expensive ranking models, followed by rule-aware re-ranking.
```
```hint Freeze features at event time
Offline training examples must contain only features that would have been available when the impression was served.
```
### What a Strong Answer Covers
- Multi-source retrieval, deduplication, lightweight pre-ranking, multi-objective ranking, and diversity-aware re-ranking.
- User, item, context, sequence, and creator features with offline and real-time feature paths.
- New-user and new-video exploration strategies with bounded risk.
- Point-in-time-correct training data, negative sampling, delayed labels, and leakage prevention.
- Offline evaluation followed by randomized online experiments on consumption and retention, with safety and quality guardrails.
- Serving latency, caching, model rollout, fallbacks, observability, and feedback-loop risks.
### Follow-up Questions
1. How would you choose or learn weights across completion, likes, comments, and follows?
2. How would you make a skip influence the very next feed request?
3. How would you prevent popular creators from crowding out exploration?
4. What signals would reveal training-serving skew or feature leakage?
Quick Answer: Design a personalized short-video feed that responds quickly to recent behavior while scaling candidate retrieval and ranking. Address cold starts, feedback signals, exploration, diversity, policy filters, freshness, durable engagement, and guardrail evaluation.