Feed Ranking

Source: 30-System-Design/Framework & Systems

Prompt

  • Rank posts for a social feed given a user, session context, and candidate set.

Requirements

  • Functional: relevance, freshness, diversity, creator fairness.
  • Non-functional: low latency, robustness to spam, transparency.
  • Constraints: real-time updates, abuse resistance, content safety.

Success Metrics

  • Offline: AUC, NDCG, calibration.
  • Online: session length, return rate, hide/report rate.
  • Guardrails: complaints, block rates, policy violations.

Data

  • Sources: user interactions, graph signals, content features.
  • Labeling: clicks, dwell time, follows, hides.
  • Position bias: log impressions and position for debiasing.

Modeling

  • Candidate generation: graph-based retrieval, collaborative filtering.
  • Ranking: deep ranker with engagement prediction.
  • Re-ranking: diversity, freshness, creator caps.
  • Session context: intent, recency, time-of-day features.

Serving

  • Retrieval: cache + ANN + graph store.
  • Latency budget: multi-stage ranking with timeouts.
  • Real-time: session features and recency updates.
  • Fallback: trending or follow-based feed if personalization fails.

Evaluation & Monitoring

  • Offline eval: temporal splits, position bias correction.
  • Online eval: A/B tests with safety guardrails.
  • Drift/abuse: feedback loops, adversarial content.
  • Quality: monitor creator distribution and long-tail coverage.

Risks & Tradeoffs

  • Engagement vs well-being.
  • Freshness vs personalization.
  • Diversity vs relevance in short sessions.

Notes

Comments

Share your approach or ask questions

0 comments
?
|
Markdown supported
Sign in to post

Loading comments...