← Back to Directory

Meta interview notes, page 4 of 238

FAANG / Big Tech

Most of these Meta write-ups come from Software Engineers (1,194), then Data Scientists (489) and Product Managers (453). The most reported rounds are the technical phone screen (1,190), the product sense round (466), the system design round (255) and the behavioral / leadership round (205).

2377 interview notes · updated Jul 2026

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta data scientist SQL round, one question, pretty focused on filtering logic and aggregation. The problem looked straightforward at first but there were enough edge cases baked in that you had to actually think through the constraints carefully.
  • Write a single SQL query to return the count of unique callers who initiated calls to more than 3 distinct other users within a specific one-week UTC window. Only the caller's perspective counts (no inbound), repeated calls to the same person collapse to one, self-calls are excluded, and calls outside the date range are dropped. Return a single integer column named caller_cnt.

“There's a lot of conditions stacked on top of each other here and I almost forgot about the self-call exclusion until I re-read the schema.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta DS interview with some seriously involved SQL. Three questions, all feed-related, and the last one on retention cohorts had me second-guessing my window function logic the whole time. Solid technical round, no behavioral stuff at all.
  • For each session, compute ad frequency as ads divided by total impressions (ads plus organic) considering only feed positions 2 and above, then flag sessions where that frequency exceeds 30%.
  • Compute ad click-through rate by position bin (positions 1-2, 3-5, and 6+), joining impressions to clicks, and then compute a user-fixed-effect adjusted CTR by subtracting each user's mean CTR from the per-bin CTR.
  • For the last 7 days, compute D1 and D7 retention for two cohorts: users who saw at least one ad vs users who saw zero ads. Cohorts are defined by each user's first activity date within that window. Return a single table with cohort date, cohort type, D1 retention, and D7 retention.

“Straightforward filter-then-aggregate setup but I initially forgot to restrict to position >= 2 and computed it over all rows.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
SQL-heavy technical screen for a DS role at Meta. Three questions, all centered on the same schema, escalating from basic aggregation to rolling windows to defining your own metric from scratch. The last one was the hardest by far.
  • Given tables for users, shops, posts, impressions, and clicks, compute a ShopVisibilityScore per shop per calendar date as the share of daily unique viewers who saw at least one shoppable post from that shop. Also report merchant-click CTR, total impressions, and unique viewers for those shoppable posts. Handle duplicate impressions correctly.
  • Extend the daily metrics to a 7-day rolling window ending on 2025-09-01 per shop, making sure the window logic doesn't bleed across shops. Then show the absolute and percentage change compared to the prior 7-day window.
  • Define a PurchaseIntentRate metric using only the provided tables, then implement it in SQL per shop per date. The suggested definition is: among users who had a first shoppable impression for a shop on a given date, what fraction clicked a merchant link within 60 minutes of that first impression? Justify whether users who clicked on non-shoppable posts should be included or excluded.

“The dedup part is where I tripped up first.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta data scientist technical screen, two SQL problems back to back. Both were heavier than I expected for a phone round, lots of edge cases baked in.
  • Given three tables (users, survey_invites, survey_responses), write SQL to compute per-survey response rate and completion rate for invites sent in a 7-day window. Non-test users only, deduplicate to each user's earliest invite per survey, and apply a strict answered_at cutoff.
  • For a specific survey, compute a country-reweighted average rating that corrects for non-response bias. Weight each country by its share of invites divided by its share of complete responses, then apply those weights to the ratings. Output the weighted average and a full breakdown by country.

“The deduplication part is what got me.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta DS technical screen, two SQL problems back to back with a schema I hadn't seen before. The questions were genuinely hard and the edge case callouts felt like the real test, not the queries themselves.
  • Given a schema with users, calls, and call_participants tables, write SQL to find how many distinct users initiated completed video calls with more than 3 different other callees during a specific 7-day window, excluding test accounts.
  • Write SQL to compute what percentage of French DAUs were on a video call on a given day, returning numerator, denominator, and percentage. Also provide a version that handles users joining the same call multiple times.

“The join between calls and call_participants tripped me up at first because you have to be careful not to count the initiator as one of their own callees.”

View Post

Meta·Data Scientist·Onsite - Product Sense / Strategy

Sep 2025
Brutal Meta DS onsite focused entirely on one massive multi-part product analytics case. Five sub-questions, all connected, all building on each other. I thought I was ready for experimentation questions but this thing went places I didn't expect.
  • Using only a single aggregated daily calls table, propose concrete proxy metrics and a quantitative decision rule to infer unmet demand for a Group Call feature before it's built. Be specific about thresholds and how you'd segment to avoid Simpson's paradox.
  • If you could add up to five additional data sources beyond this one table, which would you prioritize and what specific bias would each one address?
  • Design a full A/B test to evaluate Group Calls after launch: pick the randomization unit, explain how you'd handle interference, define one primary metric and at least three guardrails, describe your ramp plan, how you'd address novelty effects, your power assumptions accounting for clustering, and your stopping rules.
  • After nine months of general availability, how would you determine whether the feature is genuinely successful versus just regression to the mean? If the overall North Star impact is neutral but specific cohorts show strong positive or negative effects, walk through a go/holdback/sunset framework with actual quantitative cutoffs.
  • After launch you see metric drops in specific regions and device tiers. Walk through your full diagnostics plan covering measurement error, seasonality, cannibalization, and QoS constraints, and describe the sequence of holdouts or rollbacks you'd run.

“This is where I spent way too long.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta DS interview with a meaty ambiguous product analytics question that required defining cohorts, writing multi-step SQL, and then extending it to stratification and bias discussion. The whole thing was basically one long question dressed up in four parts, and it got progressively harder to keep track of what you were supposed to be solving.
  • You're asked whether existing users are more active than new users over the last 28 days. Before writing any SQL, propose two reasonable and mutually exclusive definitions for 'existing' vs 'new' users, and two defensible definitions of 'active'. Walk through the pros and cons of each, then pick one pair to move forward with.
  • Using the provided schema and sample data, write SQL that labels users as new or existing, computes a 7-day rolling active rate and average daily events per user over the last 28 days, adjusts for partial observation windows for users who signed up within the window, and outputs a table with date, cohort, active_users, total_users_observed, active_rate_7d, and avg_events_per_user. Use window functions and avoid double-counting.
  • Extend your query to stratify results by country, then produce a cohort-level weighted average that controls for country mix differences between the new and existing cohorts.
  • Name two bias risks in this analysis and one SQL-side mitigation you actually implemented in your query.

“This part felt manageable but I second-guessed myself on the 'mutually exclusive' constraint.”

View Post

Meta·Data Scientist·Onsite - Product Sense / Strategy

Sep 2025
A deep Meta DS case covering Portal product strategy, segmentation, and experimentation design. The question was sprawling and multi-part, the kind where you finish and genuinely can't tell if you nailed it or just talked for 45 minutes.
  • Given only historical Facebook video-calling telemetry (no Portal data yet), how would you propose 4 to 6 mutually exclusive, data-driven user segments for Meta Portal, and what falsifiable hypothesis would you attach to each segment explaining why a plug-in stationary device adds more value than a phone or PC?
  • Using tables for daily active users and video calls, walk through how you would estimate the serviceable addressable and obtainable market per segment in the US. What joins and filters would you apply, and how do you avoid double-counting users who qualify for more than one segment?
  • Define a scoring formula that combines estimated market size, expected adoption uplift, margin and CAC constraints, and operational feasibility to prioritize which segments to go after first. How would you set cutoffs and run sensitivity analysis?
  • Design a 4-week in-store or geo-based experiment to test segment-targeted displays and offers for Portal. Specify the randomization unit, primary KPIs, guardrails, instrumentation, and a power analysis. Also address spillovers, geographic imbalance, and potential stock-outs.
  • How does the plug-in, stationary nature of Portal change which segments you prioritize and which retail channels or store aisles make sense? What privacy-respecting proxy signals could suggest a user has a stable home calling context without knowing their actual address?
  • Before committing to large spend, how would you run an uplift modeling or lightweight geo-targeting pilot to confirm that your proposed segments actually predict Portal adoption?

“This is where I spent most of my time and probably over-indexed on the diaspora/expat angle because it felt intuitive.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta data scientist interview with a brutal production incident question about diagnosing a 10% drop in Likes on a global social network. Single question but it sprawled across like six sub-problems, and I kept second-guessing whether they wanted breadth or depth first.
  • Daily Likes on a global social network dropped 10% compared to the prior two-week average, but DAU held flat. Treat this as a live production incident. Walk through your full diagnostic plan: data validation checks and thresholds that point to instrumentation failure, how you'd rule out seasonality and external events, funnel and segment localization, three falsifiable hypotheses with the exact queries or plots to test them, a 24-hour decision tree to root cause, what you'd do if segments move in opposite directions, one immediate mitigation, and one follow-up experiment. Also name the first three queries or charts you'd run, and state the exact outcome that would tell you this is a behavior change rather than a logging issue.

“This one is basically a full take-home crammed into a live session.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2025
Meta data scientist interview that went deep into survival analysis and nonparametric statistics for ad conversion measurement. The whole thing was a single extended technical problem about right-censored CVR estimation, which I was not expecting to be this involved.
  • Propose a nonparametric estimator for a 14-day conversion rate when recent impressions are right-censored due to unknown conversion delays. How would you use historical cohorts to learn the delay survival function and debias the current partially observed cohort? Write out the formulas and specify what data each term requires.
  • How would you construct a 95% confidence interval for the CVR14 estimate using Greenwood's formula for Kaplan-Meier variance and the delta method for the transformed metric? What assumptions does this require, and how would you widen the intervals if you suspect the delay distribution has shifted over time?
  • Provide a distribution-free conservative bound for CVR14 using minimal assumptions, such as applying the DKW inequality to the empirical CDF of delays or Clopper-Pearson on observed conversions plus a worst-case bound for impressions that haven't resolved yet. Show how you'd compute it from raw counts available today.
  • What diagnostics would you run to check whether historical delay distributions are still applicable to current traffic? How would you detect covariate shift using things like PSI or KS tests across traffic mix, device type, or day-of-week effects, and what would you do if shift is detected?
  • If you only have access to aggregated daily counts of impressions and same-day conversions with no user-level data, how would you approach estimating or bounding CVR14? What additional assumptions are required to make this identifiable?

“This is where I spent most of my mental energy.”

View Post