← Back to Directory

Snap interview notes, page 15 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·Data Scientist·Technical Phone Screen

Jun 2026
Snapchat data scientist interview that went deep on a churn prediction pipeline scenario. The whole session basically revolved around one big multi-part question covering the full ML lifecycle, which felt intense but at least kept things focused.
  • For a weekly churn prediction pipeline running on 10M users, walk through how you'd approach feature engineering, model selection, and hyperparameter tuning.
  • Why would you choose Gradient Boosted Trees over Logistic Regression for this kind of churn problem?
  • Describe two approaches for explaining model predictions to stakeholders who don't have a technical background.
  • Recall drops 15% week-over-week on your churn model. What's your debugging process?

“I started with feature categories (recency, frequency, engagement decay) and mentioned handling class imbalance with SMOTE vs just reweighting the loss.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat SWE interview with a classic graph/DP problem. Nothing too surprising but the constraints were wide enough that a naive solution would've timed out, so they clearly wanted you to think about memoization.
  • Given an m x n grid of integers, find the length of the longest strictly increasing path where you can move up, down, left, or right between adjacent cells.

“I knew this was DFS with memoization pretty fast, the tricky part is realizing you don't need visited tracking because the strictly increasing constraint already prevents cycles.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat software engineer interview that was pretty heavy on string manipulation and edge cases. The follow-ups kept escalating and I was not fully prepared for how deep they wanted to go on the Unicode and streaming angles.
  • Given a string, return the index of the first character that appears exactly once. Return -1 if no such character exists. Before coding, clarify whether the comparison is case-sensitive, then implement both variants.
  • Can you optimize the solution for a small fixed alphabet, like just lowercase English letters, to use constant extra space?
  • How would you extend this to handle full Unicode, including grapheme clusters and normalization edge cases?
  • If the string arrives as a stream too large to fit in memory, how would you find the first unique character online? Walk through the time and space complexity.

“I jumped straight into the case-sensitive version without asking, which they let me do, but then they asked about case-insensitivity and I had to basically rewrite the logic.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Jun 2026
ML theory-heavy screen for a machine learning role at Snapchat. Three meaty topics back to back, all conceptual, no coding. Felt more like a grad school oral exam than a typical phone screen.
  • Explain how Batch Normalization works, including the role of the learnable parameters, how it behaves differently during training versus inference, and how running statistics are maintained.
  • Compare SGD, SGD with momentum, RMSProp, Adam, and AdamW as optimizers. What are the tradeoffs between them?
  • What is the difference between L1 and L2 regularization? Walk through the geometric interpretation, the effect on sparsity, and how the gradients behave differently.

“This went okay until they pushed on the inference behavior.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat SWE interview with a graph problem that looks like a shortest path question until you realize it's actually about maximizing a product of probabilities. Tricky framing but manageable once you see the connection to Dijkstra.
  • Given an undirected weighted graph where each edge has a survival probability between 0 and 1, find the path from node S to node T that maximizes the product of edge probabilities along the path. Return that maximum probability, or 0 if T is unreachable.

“My first instinct was shortest path and I almost reached for Bellman-Ford out of habit.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snap data analyst interview with a product analytics question about camera performance. Pretty open-ended, which I wasn't fully ready for.
  • How would you use data to help Snap's engineering team identify and improve phone camera speed?

“Spent the first minute going too broad, talking about user surveys and stuff before they nudged me toward instrumentation data.”

View Post

Snap·Software Engineer·Onsite - System Design / Architecture

Jun 2026
Snap security engineer interview with a system design question that had a pretty unusual twist to it. Not your typical 'design a search service' prompt.
  • Design a web crawler that operates using a botnet infrastructure.

“This one threw me a bit because you have to think about it from two angles at once: the distributed systems side and the adversarial/security side.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Snapchat ML Engineer interview that centered on a single meaty design question: justify a model-based approach over rules, show the numbers, and defend it to a skeptical senior leader. Pretty focused round, no fluff.
  • Walk through a project where you chose a machine learning model over a rule-based system. What was the problem, why was a model the right call, what evidence (offline and online metrics) backs that up, and how would you respond if a senior leader argued rules could have done the job?

“This question is doing a lot of work at once and I underestimated the last part.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Applied ML interview at Snapchat for an MLE role, centered almost entirely on designing an ads ranking system from scratch. Pretty deep dive, they wanted the full stack from problem framing through serving constraints, not just a surface-level answer.
  • How would you design an ads ranking model end to end?
  • How do you define labels for an ads ranking model, and what are the tradeoffs between using clicks versus conversions?
  • What features would you use in an ads ranking model?
  • How do you handle position bias in training data for an ads ranking system?
  • How would you evaluate an ads ranking model, both offline and online?
  • What serving constraints matter when deploying an ads ranking model, and how do they affect your architecture choices?

“This was the whole interview basically.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat SWE coding round, one graph problem the whole time. Pretty standard connected components stuff but the exact formulation tripped me up for a minute.
  • Given an undirected graph (number of nodes, plus two parallel arrays representing edges), where each node has an integer value, find the largest difference between the max and min node values across all connected components.

“My first instinct was union-find but I defaulted to BFS since I could code it faster under pressure.”

View Post