PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/Meta

Design a ranking and recommendation system

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's competency in designing end-to-end ranking and recommendation systems, covering candidate generation, ranking, freshness, diversity, exploration–exploitation trade-offs, scalability, availability, and observability.

  • medium
  • Meta
  • System Design
  • Software Engineer

Design a ranking and recommendation system

Company: Meta

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

Design a **ranking + recommendation system** for a personalized feed (e.g., short videos, posts, or products). ### Requirements **Core goals** - Given a user `U`, return a ranked list of items for their feed. - Support both: - **Home feed** (personalized recommendations) - Optionally: **Following feed** (content only from followed creators) **Functional** - Candidate generation (retrieve a large pool of potentially relevant items). - Ranking (order items by predicted utility). - Handle freshness/recency, diversity, and content policies (blocks, safety filters). - Support exploration vs. exploitation. **Non-functional** - Low latency per request (e.g., p95 < 200 ms) with high QPS. - High availability, graceful degradation. - Near real-time adaptation (user actions should influence feed quickly). - Observability and experiment platform (A/B tests). ### Deliverables Explain: - High-level architecture and data flow (online serving + offline training). - Storage choices (feature store, embeddings, logs). - Model/feature strategy and how you ensure freshness. - How you evaluate: offline metrics + online metrics/guardrails. - Key failure modes and mitigations (cold start, feedback loops, abuse).

Quick Answer: This question evaluates a candidate's competency in designing end-to-end ranking and recommendation systems, covering candidate generation, ranking, freshness, diversity, exploration–exploitation trade-offs, scalability, availability, and observability.

Related Interview Questions

  • Design an Online Game Leaderboard - Meta (hard)
  • Design an Instagram-like Media Feed - Meta (medium)
  • Design an Online Judge and Live Comments - Meta (medium)
  • Design an Instagram-like platform - Meta (medium)
  • Design a Coding Contest Platform - Meta (medium)
Meta logo
Meta
Jan 6, 2026, 12:00 AM
Software Engineer
Technical Screen
System Design
5
0
Loading...

Design a ranking + recommendation system for a personalized feed (e.g., short videos, posts, or products).

Requirements

Core goals

  • Given a user U , return a ranked list of items for their feed.
  • Support both:
    • Home feed (personalized recommendations)
    • Optionally: Following feed (content only from followed creators)

Functional

  • Candidate generation (retrieve a large pool of potentially relevant items).
  • Ranking (order items by predicted utility).
  • Handle freshness/recency, diversity, and content policies (blocks, safety filters).
  • Support exploration vs. exploitation.

Non-functional

  • Low latency per request (e.g., p95 < 200 ms) with high QPS.
  • High availability, graceful degradation.
  • Near real-time adaptation (user actions should influence feed quickly).
  • Observability and experiment platform (A/B tests).

Deliverables

Explain:

  • High-level architecture and data flow (online serving + offline training).
  • Storage choices (feature store, embeddings, logs).
  • Model/feature strategy and how you ensure freshness.
  • How you evaluate: offline metrics + online metrics/guardrails.
  • Key failure modes and mitigations (cold start, feedback loops, abuse).

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Meta•More Software Engineer•Meta Software Engineer•Meta System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.