← Meta Interview Insights

Meta·Machine Learning Engineer·Onsite - System Design / Architecture·Senior

SeniorPrefer not to say
May 2026

Summary

Meta MLE system design round focused on ranking notifications from multiple sources into a unified feed. The cross-source value normalization angle was the real meat of it, and frequency capping turned into a pretty long rabbit hole.

Questions Asked (5)

Q1

Design a system to rank notifications from heterogeneous sources (friend activity, ads, system alerts) into a single unified inbox for each user.

System DesignTechnical Trade-offs
Author's notes

This is the kind of question where you can spend 20 minutes on retrieval and never get to the interesting parts.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the problem scope and requirements, then propose a high-level architecture that separates candidate generation, feature engineering, and ranking. Focus on how to model heterogeneous signals and optimize for multiple objectives, and discuss trade-offs between relevance, diversity, and latency.

Pro tip: Emphasize the importance of defining clear business metrics (e.g., user engagement, satisfaction) and aligning the ranking model with them; also mention the need for online evaluation and feedback loops to continuously improve the system.

1. Clarify Requirements and Scope

Ask questions to understand the scale, latency requirements, and success metrics. Determine what sources are included and how personalization should be handled.

2. Design High-Level Architecture

Outline components: ingestion from heterogeneous sources, feature store, candidate generation, ranking model, and serving layer. Consider batch vs. real-time processing.

3. Feature Engineering and Modeling

Discuss how to represent features from different sources (e.g., embeddings, categorical features) and how to train a model that combines them, such as a multi-task or multi-objective model.

4. Ranking and Blending Strategies

Explain how to rank notifications using the model output, and how to blend different objectives (e.g., relevance, diversity, freshness) into a final score.

5. Evaluation and Iteration

Describe offline metrics (e.g., AUC, NDCG) and online A/B testing. Discuss how to handle feedback loops and model updates.

Key Points to Mention

  • Handling heterogeneous data sources with different schemas and update frequencies
  • Multi-objective optimization to balance user engagement, satisfaction, and business goals
  • Scalability and low-latency serving for real-time ranking
  • Cold-start problem for new users or new notification types
  • Privacy and fairness considerations in ranking
  • Use of contextual bandits or reinforcement learning for exploration

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q2

How do you compare the value of an ad bid in dollars against a friend-event notification's predicted click-through rate? Walk through your normalization approach.

Pricing & MonetizationTechnical Trade-offsSystem Design
Author's notes

This was the question I felt least prepared for going in.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Frame the problem as comparing two different value signals—monetary bid and predicted engagement—by converting both into a common utility metric, such as expected value per impression. Explain that you would use historical data to estimate the dollar value of a click or engagement event, then normalize the predicted CTR into that same currency using calibration and business constraints.

Pro tip: Emphasize that normalization must be dynamic and context-aware: the value of a friend-event notification isn't fixed—it depends on user, time, and downstream actions—so you'd build a model that predicts the expected monetary value of an engagement, not just a static conversion rate. Also mention that you'd validate the normalization with online experiments to avoid overfitting to offline proxies.

1. Define the common utility unit

Choose a single metric to compare both signals, such as expected revenue per impression or long-term user value. This allows direct comparison of ad bids (in dollars) and engagement predictions (in probabilities).

2. Estimate monetary value of engagement

Use historical data and causal inference to estimate the average dollar value of a friend-event click or notification engagement, accounting for downstream conversions and retention. This converts predicted CTR into expected dollars.

3. Calibrate and normalize predictions

Ensure the CTR model is well-calibrated (e.g., using Platt scaling or isotonic regression) so that predicted probabilities map to true likelihoods. Then multiply by the estimated value per engagement to get expected value in dollars.

4. Incorporate business constraints and context

Adjust the normalized values based on factors like user fatigue, notification frequency caps, and strategic priorities (e.g., promoting friend interactions). This ensures the comparison reflects real-world trade-offs.

5. Validate and iterate with online experiments

Run A/B tests to compare the normalized values against actual outcomes (e.g., revenue, engagement) and refine the conversion factors. Use counterfactual logging to continuously improve the value estimation.

Key Points to Mention

  • Expected value framework: comparing ad bid (dollars) and predicted CTR (probability) by converting CTR to expected dollars using a value-per-engagement estimate.
  • Calibration of CTR predictions: ensuring predicted probabilities are accurate before multiplying by value.
  • Dynamic value estimation: the dollar value of a friend-event engagement varies by user, context, and time, so a static conversion rate is insufficient.
  • Business constraints: frequency capping, user experience, and strategic goals may override pure expected value maximization.
  • Online validation: using A/B tests and counterfactual logging to validate and refine the normalization approach.
  • Long-term value: considering downstream effects like retention and lifetime value, not just immediate clicks or revenue.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q3

Walk through your approach to frequency capping across notification sources. How do you decide between a global per-user cap, per-source caps, and an adaptive cap?

System DesignTechnical Trade-offsProduct Analytics & Metrics
Author's notes

This became a 15-minute deep dive and I was not expecting that.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the goal of frequency capping: to balance user experience and engagement while respecting source-specific constraints. Then, describe a tiered approach where you first implement per-source caps to control individual channels, then layer a global cap to prevent overall fatigue, and finally introduce adaptive caps that adjust based on user behavior and real-time signals. Emphasize how you would evaluate trade-offs using metrics like CTR, unsubscribe rates, and long-term retention.

Pro tip: Frame the discussion around user-centric optimization: show that you consider not just immediate metrics but also long-term user satisfaction and trust, which aligns with Meta's focus on meaningful interactions.

1. Clarify Objectives and Constraints

Define what frequency capping aims to achieve (e.g., reduce notification fatigue, maintain engagement) and identify constraints such as source priorities, real-time processing limits, and business rules.

2. Design Per-Source Caps

Implement individual caps for each notification source (e.g., email, push, in-app) based on historical performance and source-specific user preferences to prevent over-notification from any single channel.

3. Layer Global Cap

Introduce a global per-user cap across all sources to control total notification volume, ensuring that even if multiple sources are active, the user isn't overwhelmed.

4. Implement Adaptive Capping

Use machine learning models to dynamically adjust caps based on user engagement patterns, context (time of day, device), and predicted receptiveness, moving from static to personalized limits.

5. Evaluate and Iterate

Measure impact via A/B tests on metrics like open rates, click-through rates, unsubscribe rates, and long-term retention; use results to refine the capping strategy and model.

Key Points to Mention

  • Trade-offs between global and per-source caps: global prevents overall fatigue but may suppress high-value sources; per-source allows granularity but can lead to aggregate overload.
  • Adaptive capping leverages user-level features (e.g., past engagement, time since last interaction) and contextual signals to personalize limits.
  • Use of machine learning models (e.g., reinforcement learning or bandits) to optimize caps dynamically while balancing exploration and exploitation.
  • Metrics for evaluation: short-term (CTR, open rate) and long-term (retention, user satisfaction, notification opt-out rates).
  • Implementation considerations: real-time processing, scalability, and fallback mechanisms when models are unavailable.
  • Alignment with product goals: ensuring capping supports meaningful interactions and avoids negative user experiences.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q4

How would you handle feedback loops where high-CTR notifications crowd out lower-CTR ones over time?

A/B Testing & ExperimentationProduct Analytics & MetricsTechnical Trade-offs
Author's notes

Classic exploration-exploitation problem, but framed in a way I almost missed.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Frame the problem as a multi-armed bandit with non-stationary rewards, where feedback loops create a rich-get-richer dynamic. Propose a solution that balances exploration and exploitation while accounting for long-term user value and system health. Emphasize the need for counterfactual evaluation and guardrail metrics to detect and mitigate crowding out.

Pro tip: Highlight that pure CTR optimization can lead to clickbait and degrade long-term engagement; suggest incorporating downstream metrics like session time or retention into the reward signal. Also, mention the importance of logging propensities for unbiased offline evaluation.

1. Diagnose the feedback loop

Identify how the current system creates a positive feedback loop: high-CTR notifications get more impressions, leading to more data and higher predicted CTR, further increasing their exposure. Quantify the impact on lower-CTR but potentially high-value notifications.

2. Define long-term objectives and guardrails

Clarify that the goal is not just short-term CTR but long-term user engagement and satisfaction. Establish guardrail metrics such as unsubscribe rates, notification fatigue, and diversity of content to prevent degradation.

3. Design an exploration strategy

Implement a bandit algorithm (e.g., Thompson Sampling or UCB) that explicitly allocates a fraction of impressions to explore lower-CTR notifications. Use context features to personalize exploration and avoid random noise.

4. Incorporate counterfactual and delayed feedback

Use inverse propensity scoring (IPS) or doubly robust estimators to evaluate policies offline. Model delayed rewards (e.g., long-term engagement) via survival analysis or reinforcement learning to capture the true impact of notifications.

5. Monitor and adapt

Set up continuous A/B tests to compare the new policy against the baseline, monitoring both primary and guardrail metrics. Use sequential testing to detect regressions early and adapt exploration rates dynamically.

Key Points to Mention

  • Multi-armed bandits with non-stationary rewards
  • Exploration-exploitation trade-off and epsilon-greedy or Thompson Sampling
  • Counterfactual evaluation using inverse propensity scoring (IPS)
  • Long-term value metrics (e.g., retention, session time) vs. short-term CTR
  • Guardrail metrics to prevent notification fatigue and user churn
  • Diversity constraints to ensure fair exposure of lower-CTR notifications

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q5

How would you handle cold start for a brand new user who has no behavioral history?

System DesignProduct Sense & Ideation
Author's notes

Short answer: product-default notifications plus content-based fallback.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the product context and what signals are available for a new user, then propose a layered strategy that combines content-based, demographic, and contextual signals with exploration. Emphasize how you would measure success and iterate, and discuss how to transition from cold-start heuristics to personalized models as behavioral data accumulates.

Pro tip: Show that you understand cold start is not just a modeling problem but a product and systems problem—mention how you'd design the onboarding experience to collect explicit signals and set up logging for fast learning.

1. Clarify the problem and available signals

Ask clarifying questions about the product (e.g., feed, recommendations, ads), what user and item features exist, and what non-behavioral data (demographics, context, declared interests) is available. This scopes the solution and shows you avoid overgeneralizing.

2. Leverage non-behavioral signals

Propose using content-based filtering, demographic priors, and contextual features (device, time, location) to generate initial recommendations. Mention using item metadata and knowledge graphs to bridge to similar users or items.

3. Incorporate exploration and active learning

Design an exploration strategy (e.g., epsilon-greedy, Thompson sampling) to balance showing diverse content and learning user preferences quickly. Suggest using onboarding flows to collect explicit feedback (e.g., interest selection) to reduce uncertainty.

4. Define success metrics and evaluation

Specify offline and online metrics (e.g., CTR, engagement, retention) and how to evaluate cold-start performance separately. Propose A/B tests and counterfactual evaluation to measure the impact of the cold-start strategy.

5. Plan for transition to personalized models

Describe how to blend cold-start heuristics with personalized models as data accumulates, using techniques like meta-learning, transfer learning, or contextual bandits. Emphasize continuous logging and model updates to smoothly shift from exploration to exploitation.

Key Points to Mention

  • Content-based filtering and item metadata
  • Demographic and contextual features as priors
  • Exploration vs. exploitation trade-off (e.g., bandits)
  • Onboarding and explicit feedback collection
  • Evaluation metrics and A/B testing for cold-start
  • Transition strategies: meta-learning, transfer learning, or hybrid models

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.