← Back to Directory

Snowflake interview notes, page 7 of 14

Large Enterprises

Most of these Snowflake write-ups come from Software Engineers (118), then Data Scientists (12) and Backend Engineers (2). The most reported rounds are the technical phone screen (91), the system design round (30), the behavioral / leadership round (5) and the online assessment (2).

135 interview notes · updated Oct 2026

Snowflake·Software Engineer·Onsite - System Design / Architecture

May 2026
Snowflake EM interview that paired a classic system design question with a live implementation component. The cache layer follow-up is what actually separated it from a standard design round.
  • Walk through how you would design a system like YouTube at scale.
  • Now implement the cache layer for the system you just designed.

“I went with the usual breakdown: video upload pipeline, transcoding, CDN distribution, metadata storage.”

View Post

Snowflake·Software Engineer·Technical Phone Screen

May 2026
Snowflake software engineer interview, round 2 was a coding round. Got the parallel scheduling problem and then a harder follow-up variant. Finished the base version in about 20 minutes which felt decent.
  • Given a set of tasks with dependencies, design a solution to schedule them in parallel (and then solve a harder variant of the same problem).

“Knocked out the base version in around 20 minutes, felt pretty clean.”

View Post

Snowflake·Software Engineer·Technical Phone Screen

May 2026
Snowflake software engineer interview with a meaty expression evaluator problem. The follow-ups kept coming and I wasn't totally ready for all of them.
  • Build an expression evaluator that handles non-negative integers, named variables (resolved from a dictionary), the four arithmetic operators, parentheses, and spaces. It needs to respect standard precedence and left-to-right associativity, handle unary plus and minus, truncate division toward zero, run in O(L) time and space, and return an error on bad tokens or mismatched parentheses.
  • Extend the evaluator to support exponentiation using '^', which is right-associative. How does that change your implementation?
  • Further extend the evaluator to support a built-in two-argument function like max(a, b). How would you handle function calls in the grammar?

“This is basically a full recursive-descent or shunting-yard parser and I went with the recursive descent approach since I find it easier to reason about precedence that way.”

View Post

Snowflake·Software Engineer·Technical Phone Screen

May 2026
Snowflake SWE coding round, basically one meaty tree problem that took up the whole session. The core question is close enough to LC 545 that if you've seen it you'll recognize it, but the edge cases are where things get tricky and they pushed hard on follow-ups.
  • Given the root of a binary tree, compute the sum of the left boundary nodes, the right boundary nodes, and all leaf nodes, without double-counting any node that appears in multiple categories.
  • How would you extend the solution to return the actual boundary node values in order, handle very deep trees without recursion, or generalize the approach to trees where nodes can have more than two children?

“I recognized the structure pretty fast since I'd done the boundary traversal problem before, but I still fumbled the edge cases.”

View Post

Snowflake·Software Engineer·Technical Phone Screen

May 2026
Snowflake Software Engineer interview with two coding problems back to back. The web crawler question had some interesting complexity wrinkles and the bracket validator had a follow-up that pushed beyond the usual easy version.
  • Implement a web crawler function that takes seed URLs, a fetch API, a max depth limit, and a domain filter. It should do BFS, avoid revisiting URLs, respect the domain constraint, and return all discovered URLs. Also analyze the time and space complexity.
  • Write an algorithm to check if a string of parentheses is valid. Then extend it to handle three bracket types: '()', '[]', and '{}'. If the string is invalid, return the index of the first error. Walk through edge cases like empty strings, odd-length inputs, and early closing brackets.

“This one took me a minute to structure properly.”

View Post

Snowflake·Data Scientist·Onsite - System Design / Architecture

May 2026
This was a deep technical design round for a Data Scientist role at Snowflake, basically a full system design session focused on analytics infrastructure at scale. Four sub-questions, all interconnected, and the level of DDL and SQL detail expected was way higher than I anticipated.
  • Design a fact and dimension table schema for a warehouse handling 50M events per day. Include DDL-level details: partitioning, clustering keys, surrogate keys, and how you'd handle slowly changing dimensions for user country and app version.
  • Events can arrive up to 14 days late and out of order, with occasional duplicates on the same (user_id, event_ts, event_type) combination. What's your deduplication key and upsert strategy, and how do you handle late data reprocessing without double-counting cohorts? Include a backfill plan.
  • Define the grain for a derived metrics table covering weekly retention by signup cohort and ARPU by cohort. Show the SQL pattern you'd use, explain how incremental materialization works, and describe data quality checks you'd put in place.
  • Estimate table sizes for this 50M events/day system, justify your clustering key choices for typical queries like top-N countries over the last 8 weeks and rolling DAU/WAU/MAU, and walk through cost controls including partition pruning, approximate distinct counts, and result caching.

“I knew Type 2 SCDs conceptually but fumbled when they asked me to actually write the DDL on the spot.”

View Post

Snowflake·Software Engineer·Onsite - System Design / Architecture

May 2026
A system design round at Snowflake that felt nothing like a typical system design interview. The question was apparently pulled from a real incident, which made it interesting but also left me completely unsure what they were actually testing for.
  • You control a client that periodically fetches a token from a third-party service and then uses that token to access a backend. How would you design the client to minimize downtime if either the token service or the backend becomes unavailable?

“The twist that tripped me up: both the token service and the backend are black boxes.”

View Post

Snowflake·Frontend Engineer·Technical Phone Screen

May 2026
Phone screen for a frontend role at Snowflake, pretty much a pure React fundamentals quiz with a quick work history walkthrough at the start. Nothing too surprising but the hooks section went deeper than I expected.
  • What are the differences between class components and functional components in React, when would you choose one over the other, and how would you approach migrating from class to functional?
  • Walk me through the React class component lifecycle methods and explain how they map to hooks in functional components.
  • Explain useState, useEffect, useMemo, useCallback, useRef, and useContext. What are the common pitfalls with each, and how would you write a custom hook?
  • Why were hooks introduced in React, and what problems do they solve compared to higher-order components and render props?

“I rambled a bit on the migration path.”

View Post

Snowflake·Software Engineer·Recruiter / HR Screen

May 2026
Quick HR screen at Snowflake, pretty standard stuff. Three questions, no curveballs, felt more like a formality than a real filter.
  • Walk me through your resume.
  • Why are you looking to leave your current job?
  • Tell me about the most challenging project you've worked on. What made it hard and how did you deal with it?

“Just narrated my background chronologically.”

View Post

Snowflake·Data Scientist·Technical Phone Screen

May 2026
Snowflake data scientist interview that was basically a probability and randomness gauntlet. Three connected problems all building on each other, and by part C I was definitely improvising. Tough but fair, the kind of interview where you can tell they actually care about whether you understand the math.
  • You have a function that returns a uniform random integer from 1 to 5. Implement a function that returns a uniform random integer from 1 to 7 using only that function. Your solution must be unbiased, always terminate, and close to optimal in how many calls it makes. Prove it's uniform and compute the exact expected number of calls.
  • Generalize the previous problem: given a function returning a uniform integer from 1 to M, implement one that returns a uniform integer from 1 to N for any positive integers M and N. Derive an upper bound on the expected number of calls in terms of M and N, and discuss how the approach changes when N is much larger than M versus when M is much larger than N.
  • Given a biased coin that flips heads with some unknown probability p, construct a fair coin flip. Prove it works and find the expected number of flips as a function of p. Then extend this to sampling uniformly from 1 to K using only the biased coin.

“I knew the rejection sampling trick from somewhere in my past but proving it rigorously on the spot was harder than I expected.”

View Post