← Back to Directory

Snap interview notes, page 17 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·Machine Learning Engineer·Technical Phone Screen

Jun 2026
ML engineer screen at Snap, one question deep into agent architecture. Pretty conceptual but they clearly wanted to see if you'd thought about this stuff beyond the basics.
  • How would you design or implement memory in an AI agent?

“I went straight to the short-term vs long-term split and talked about vector stores for retrieval.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat software engineering interview that focused pretty heavily on Swift fundamentals. One question, but it had a lot of surface area and they clearly wanted more than a textbook answer.
  • Walk me through the differences between class and struct in Swift, covering things like how they handle memory, mutability, inheritance, deinitialization, and when you'd actually choose one over the other.

“This sounds like a warm-up but it sprawls fast.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat software engineering interview that went deep on a grid-based optimization problem, then kept pushing into dynamic data structure design and complexity analysis. More theoretical than I expected, felt like a systems/algorithms hybrid the whole way through.
  • Given an m×n grid where cells are marked 1 for homes and 0 otherwise, find a single meeting cell that minimizes the total Manhattan distance from all homes to that cell. Return the minimum total distance and one valid optimal cell.
  • Extend the static grid solution to a dynamic system supporting addHome, removeHome, and query operations that return the optimal cell and minimum distance. What data structures would you use and what are the time and space complexities for each operation?
  • Why does this approach use the median rather than the average to minimize total Manhattan distance, and how would you handle large sparse grids where most cells are empty?

“I knew Manhattan distance problems lean on medians pretty quickly, so I jumped to projecting rows and columns separately.”

View Post

Snap·Software Engineer·Onsite - System Design / Architecture

Jun 2026
System design round at Snapchat for a software engineering role, focused entirely on building a production-grade API for co-purchase analytics. Dense question, lots of surface area to cover.
  • Design a RESTful API system for co-purchase analytics, including endpoints to retrieve top related products for a given product, support filtering by time window, region, and channel, and paginate results. Cover request/response schemas, auth, rate limiting, caching and invalidation, SLA and timeouts, idempotency, and versioning. Also describe the storage model, precomputation pipeline, consistency guarantees, monitoring, testing strategy, and safe rollout.

“This was basically a full system design compressed into one question.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Interviewed for a security engineer role at Snap. Just one question worth noting but it was meaty enough to fill the whole session.
  • Walk me through how you would analyze a suspicious email attachment.

“I started with static analysis, file type checks, hashing against known malware databases, then moved into dynamic analysis in a sandbox.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat SWE coding round with three problems ranging from data structure design to graph-ish card matching to a classic merge problem. Nothing too wild but the card problem had a subtle constraint that I almost missed completely.
  • Design a data structure that preprocesses a list of event timestamps in HH:MM:SS format and supports a query to count how many events fall within a given inclusive time range.
  • Given a set of double-sided cards where each card has one letter on the front and one on the back, determine whether you can spell a target string by picking at most one side from each card, using each card at most once.
  • Merge N sorted lists of integers into a single sorted list, more efficiently than concatenating everything and sorting from scratch.

“My first instinct was to just sort the timestamps and do binary search on both ends, which works fine.”

View Post

Snap·Software Engineer·Onsite - System Design / Architecture

Jun 2026
Snapchat system design round focused entirely on a streaming event ingestion problem. Pretty open-ended, which I wasn't fully prepared for.
  • You have a stream of events in the form (user_id, device_id, timestamp). Design a system that ingests this stream and can answer the query: who is the current owner of a given device?

“I started with the storage schema and probably should've asked more clarifying questions first.”

View Post

Snap·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Snapchat ML engineer interview that was pretty graph-heavy. One coding problem, focused on connected components, with a follow-up pushing toward Union-Find specifically. Felt like they had a particular solution in mind from the start.
  • Given an undirected graph as a list of nodes and edges, find all connected components and partition the nodes into groups accordingly. Follow-up: implement this using Union-Find with path compression and union by rank.

“Started with BFS which felt natural to me, got through it fine, but then they asked me to redo it with Union-Find.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat software engineer interview, one coding round focused on implementing sin(x) from scratch without any library calls. Pretty math-heavy for a coding screen, which I wasn't expecting.
  • Implement a function that approximates sin(x) for a real-valued input in radians, without using any built-in trigonometric library functions, accurate to within a given epsilon (e.g., 1e-6). Then discuss how you'd optimize it and harden it for production use.

“My first instinct was Taylor series and I went with that, which is fine for small x but I didn't think about range reduction until they pushed back.”

View Post

Snap·Software Engineer·Technical Phone Screen

Jun 2026
Snapchat SWE interview with a classic water jug problem that sounds deceptively simple but has a lot of depth to it. They wanted both a BFS/DFS solution and the math-based gcd approach, plus full complexity analysis and edge case handling.
  • Given two jugs with capacities x and y liters and an unlimited water source, can you measure exactly z liters? You can fill, empty, or pour between jugs. Implement a solution using both a graph-search approach (BFS/DFS over states) and a number-theoretic approach (using gcd), handle edge cases like z == 0, z > x + y, and x or y being 0, and analyze time and space complexity.

“I started with BFS because it felt safer.”

View Post