← Back to Directory

Snap interview notes, page 3 of 22

Large Enterprises

Most of these Snap write-ups come from Software Engineers (117), then Machine Learning Engineers (65) and Data Scientists (18). The most reported rounds are the technical phone screen (149), the system design round (45), the behavioral / leadership round (11) and the product sense round (8).

216 interview notes · updated Jul 2026

Snap·Software Engineer·Technical Phone Screen

Apr 2026
Snapchat SWE interview with a grid-based pathfinding problem. The core challenge was figuring out the right BFS direction, which tripped me up a bit before clicking into place.
  • Given a 2D grid floor plan with people, exits, empty cells, and blockers, determine if all people can escape to an exit and return the minimum time for everyone to escape. People move one cell per step in 4 directions, moves are simultaneous, and blockers cannot be crossed.

“My first instinct was BFS from each person separately, which technically works but is way slower than it needs to be.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Apr 2026
Snapchat ML engineer screen, one meaty normalization question that ended up being more involved than I expected. Felt okay about it but definitely left some things on the table.
  • What are the differences between Layer Normalization and Batch Normalization? Walk through how each one works, when you'd use one over the other, and how they behave differently at training versus inference.

“Started okay, explained that BN normalizes across the batch dimension while LN normalizes across the feature dimension for each sample independently.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Apr 2026
Snap ML engineer interview, one question that basically asked you to think out loud about build-vs-buy tradeoffs for AI infrastructure. No idea how I did.
  • How would you decide whether to run an open-source model on your own infrastructure versus using a commercial API like OpenAI or Claude?

“I went straight to cost and latency, which felt right, but I forgot to talk about data privacy until the interviewer kind of nudged me toward it.”

View Post

Snap·Software Engineer·Technical Phone Screen

Apr 2026
Snapchat SWE interview with a grid-based coding problem that's basically a twist on a classic LC problem. Not too bad if you've seen the original, but the follow-up about optimization kept things interesting.
  • Given a binary grid where 1s represent land and 0s represent water, find the maximum perimeter among all islands in the grid. An island is a group of 4-connected land cells, and perimeter counts edges that touch water or the grid boundary.

“Recognized it as a variant of the island perimeter problem pretty fast, which helped.”

View Post

Snap·Software Engineer·Technical Phone Screen

Apr 2026
Snapchat SWE interview that went pretty deep into co-occurrence counting, which I wasn't fully expecting. The question started simple and then kept expanding into streaming, memory constraints, and complexity analysis. Left feeling like I handled the code okay but fumbled some of the design discussion.
  • Given a stream of purchase orders (each order is a list of product IDs bought together), implement a function that returns the k products most frequently bought alongside a given product ID. Ties should be broken by smaller product ID. Then discuss how you'd handle streaming updates, memory limits for large product ID spaces, and the time/space complexity of both building and querying the co-occurrence data.

“I started with the batch case, used a dict of dicts to store co-occurrence counts, and that part went fine.”

View Post

Snap·Data Scientist·Technical Phone Screen

Apr 2026
Snapchat data scientist interview focused on two product decision cases: banner ads and a group-story feature. Both questions pushed into experiment design territory pretty fast, which I wasn't fully ready for.
  • What metrics would you track to measure the impact of adding a banner ad, and how would you design and analyze an A/B test to decide on launch, including how you'd handle accidental clicks?
  • For a new group-story feature, what success metrics would you define and how would you set up the experiment, including choice of randomization unit, sample size, and how long to run it?

“The accidental clicks part is what tripped me up.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Apr 2026
ML engineer interview at Snap, came down to a technical question about evaluating LLM performance. Pretty short exchange from what I remember, but the question itself required some real depth.
  • What methods or metrics would you use to evaluate how well an LLM is performing?

“This is one of those questions where you can go a lot of directions and that's kind of the problem.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Apr 2026
Snapchat ML Engineer interview focused heavily on fundamentals: normalization techniques, probability calibration, and class imbalance. Pretty rigorous for what I expected to be a surface-level screen. The follow-ups were where things got interesting.
  • What is the difference between batch normalization and layer normalization? Walk through how each computes its statistics, where you'd typically use each, and the practical tradeoffs.
  • What does it mean for a model to be well-calibrated? How would you check if your model's predicted probabilities are calibrated, and what would you do to fix poor calibration?
  • How do you approach training a model on an imbalanced dataset? Cover your training strategy, how you'd evaluate the model, and how you'd pick a decision threshold.

“I got through the mechanics fine but fumbled a bit explaining why LayerNorm is preferred in Transformers.”

View Post

Snap·Software Engineer·Technical Phone Screen

Apr 2026
Snapchat SWE interview with a binary search problem that's basically aggressive cows in disguise. Not the hardest round I've had but you need to know your search-on-answer patterns cold.
  • Given k people and an array where each element is the number of seats in a room, place all k people across the rooms (treating seats as one long concatenated sequence) so that the minimum gap between any two adjacent people is maximized. Return that maximum possible minimum distance.

“Took me a beat to realize this was just binary search on the answer.”

View Post

Snap·Data Scientist·Technical Phone Screen

Apr 2026
Snapchat data scientist interview that was basically one long pandas coding problem with a bunch of sub-tasks crammed in. The question covered click metrics, session analysis, and cohort breakdowns all at once, which felt like three interviews in one. I was not expecting the level of specificity around accidental click definitions.
  • Given two DataFrames for events and users, define 'accidental clicks' as banner clicks with dwell under 500ms or followed by a back navigation from the same user within 2 seconds. Then compute daily per-banner CTR over the last 7 days, excluding bots and accidental clicks. Output should include date, banner_id, impressions, valid_clicks, and CTR.
  • Compute user-level 7-day CTR with the same bot and accidental click exclusions, then break down the distribution by signup cohort defined as the week of the user's signup date.
  • For a Group Story feature, compute the per-user change in average session duration between a pre-period and a post-period. Sessions are defined by gaps of more than 30 minutes between consecutive events from the same user. Also track the change in stories posted per user across the two periods.
  • How would you ensure the pandas code is fully vectorized, avoiding Python loops, and what indices would you set on these DataFrames? How would you test correctness using the provided sample data?

“This was the core of the whole thing and it took me a while to even parse what they wanted.”

View Post