← Back to Directory

Meta interview notes, page 2 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

Jul 2023
Meta DS interview with a SQL question focused on video call analytics. Pretty standard technical screen but the product framing made it feel a bit more applied than a typical coding exercise.
  • Write a SQL query to return the top 10 users by average call duration in minutes, considering only calls that started within the last 7 days.

“The core mechanics weren't too bad.”

View Post

Meta·Data Scientist·Technical Phone Screen

Aug 2023
Got a SQL-heavy data science screen at Meta focused on a messaging platform dataset. Four parts to one big question, which felt like a lot to unpack in real time. The conversation engagement angle was interesting but the timing calculation tripped me up a bit.
  • Given a messages table with sender, receiver, and timestamps, write SQL to count unique conversations that started in the past 7 days, where a conversation is defined as an unordered sender-receiver pair.
  • Of those conversations from the past 7 days, what percentage contain at least one message where has_reaction equals 1?
  • Compute the average number of days between the first message in a conversation and the first message that received a reaction.
  • Suggest a metric and analysis approach to test whether conversations that include at least one reaction are more active overall than conversations without any reactions.

“The unordered pair thing is what gets people.”

View Post

Meta·Data Scientist·Technical Phone Screen

Aug 2023
Meta DS technical screen, basically one meaty SQL question around a new product feature rollout. Pretty focused session, no fluff.
  • Given a call logs table with fields for call start time, a flag indicating whether it was a group call, and the user who initiated it, write SQL to return per-day stats: total calls, total group calls, unique users who started a group call, and the percentage of calls that were group calls. Then filter to only days where that percentage falls below 10%.

“The aggregation part was fine, DATE() on the timestamp, COUNT(*), SUM on the flag.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
Meta Data Scientist technical screen, SQL-heavy with a multi-part question that combined window functions and a date-matched currency join. Felt manageable but the join condition tripped me up more than I expected.
  • For each user, write a SQL query that finds the ad with the highest click-through rate (clicks divided by impressions) over the last 7 days. Then, using an exchange rates table, convert each transaction amount to USD using the rate that matches the transaction date.

“Two parts jammed into one question.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
Meta DS interview focused on SQL and analytics for a WhatsApp use case. Pretty standard technical phone screen stuff but the country-filtering + DAU percentage question had a small wrinkle that tripped me up a bit.
  • Write a SQL query to find the number of unique users who initiated a call with more than 3 participants within the last 7 days.
  • Write SQL to calculate what percentage of yesterday's daily active users in France were on a video call.
  • Is COUNT(DISTINCT user_id) still necessary when you've already grouped by user_id?
  • What is the difference between UNION and UNION ALL, and when would you use one over the other?

“Felt fine about this one.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
Meta Data Scientist SQL round, two questions back to back using a social media analytics schema. Pretty standard stuff but the second one had a small twist that slowed me down a bit.
  • Given a views table with viewer connection type and view duration, write a query to find the count of distinct posts that accumulated more than 60 total seconds of view time from unconnected viewers in the past 7 days.
  • Write a query to compute the average number of reactions received by posts from friend-connected creators versus unconnected-creator posts in the last 7 days.

“Straightforward filter-group-having pattern.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
Meta DS technical screen, SQL heavy. Two questions back to back using the same two tables, which I wasn't expecting. Felt more like a take-home graded in real time than a conversation.
  • Using the info_stream_views table, write a SQL query to find the number of distinct posts that had more than 60 seconds of viewing time from unconnected viewers in the past 7 days.
  • Write a second query that returns the average number of reactions per post, broken out separately for friend viewers and unconnected viewers, over the past 7 days. You'll need to join the views and reactions tables.

“Straightforward filter-and-count but I initially forgot to filter on the relationship column and just wrote a WHERE on duration and ds.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
Meta DS interview with a SQL-heavy analytical question about in-app survey data. One question but it had enough layers to keep me busy for a while.
  • Given a survey_responses table with impression and click timestamps and a score column, write a query to compute the overall response rate (clicks / impressions). Then calculate a quality metric two ways: averaging all available scores versus averaging only the first score each user gave per survey. Which approach would you use and why?

“The response rate part was fine, just counting non-null click_ts over total rows.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
SQL-heavy technical screen for a Data Scientist role at Meta, all three questions were about ad revenue data across two joined tables. Nothing behavioral, just pure querying under mild pressure.
  • Write a SQL query to compute total daily revenue broken down by creation source.
  • Write a query to find the countries of the ten advertisers with the fewest active ads, breaking ties however you want.
  • For each creation source, what proportion of advertisers spent at least 1,000 USD more this year compared to last year?

“Pretty standard aggregation.”

View Post

Meta·Data Scientist·Technical Phone Screen

Sep 2023
Meta DS interview with a SQL question centered on video call behavior data. The setup was more open-ended than I expected for a phone screen, basically handed two tables and told to figure out how to define 'interest' in a feature that didn't exist yet.
  • Given a table of video call logs and a user attributes table, write SQL to identify users who seem interested in group video calls.

“The tricky part wasn't the SQL itself, it was deciding what 'interest' even means with no ground truth.”

View Post