Snowflake Coding Interview Questions

These are the 87 Snowflake coding interview questions AceOffer has reconstructed from candidate reports, sorted by how often each was reported. Course Schedule / Prerequisites / Task Completion / Topological Sort leads at 16×. Every question shows when it was last reported; the catalog refreshes monthly.

Key facts

  • 87 distinct coding questions indexed
  • 194 candidate reports across those questions
  • Most reported: Course Schedule / Prerequisites / Task Completion / Topological Sort — 16× (last seen August 2026)
  • Refreshed monthly · last updated September 2026

Which Snowflake rounds ask coding questions?

Snowflake draws coding questions from the rounds below. Counts are distinct questions, not times asked.

Usually two one-hour coding rounds, and on several loops a system design round as well. Course scheduling and topological sort, the cake distance problem, tree height after deletion and key-value store implementation lead the reports.38 questions

Most reported: Course Schedule / Prerequisites / Task Completion / Topological Sort 16×

More algorithm rounds in the same shape as the screen, with an optimisation follow-up expected on most problems.38 questions

Most reported: Tax Calculation 4×

An online assessment on some loops, reported as HackerRank and mostly dynamic programming and bit manipulation.11 questions

Most reported: Dynamic Programming OA Problems 2×

Which Snowflake coding questions get asked most?

Sorted by candidate-report frequency. Click any question for the full breakdown.

QuestionRoundReportedLast seen
Course Schedule / Prerequisites / Task Completion / Topological Sort

You are given a list of courses (or tasks) with prerequisite/dependency relationships forming a directed graph. Core questions asked across variants include:…

Phone Screen16×August 2026
Closest Cake / Minimum Distance Between People and CakesFree

You are given a 1D array where each element is 0 (empty), 1 (person), or 2 (cake). Part 1 (base): Find the…

Phone Screen12×July 2026
Tree Max Height After Node Deletion

You are given an n-ary tree (not necessarily binary) and a list of node IDs to delete. When a node is deleted,…

Phone Screen11×September 2026
Key-Value Store Implementation

Implement a key-value store class supporting core CRUD operations: get(key), set/put(key, value), update(key, value), and delete/remove(key). The problem typically extends in multiple…

Phone Screen10×July 2026
Role Permission with Inheritance and Deny Rules

You are given a role hierarchy represented as a directed acyclic graph (DAG). Roles are numbered 0 to n-1. An array grants…

Phone Screen8×August 2026
Binary Tree Node Sum

Given two complete binary trees with identical structure (same number of nodes, same topology), modify each node in the second tree so…

Phone Screen7×July 2026
N-ary Tree Node Count via Distributed Message Passing

You are given an N-ary tree where each node is an independent distributed process running on a different host. Nodes can only…

Phone Screen7×July 2026
Top K Frequent Elements

Given a collection of elements (search words, hashtags, book titles, event keys, etc.) each associated with a count or frequency, find the…

Phone Screen6×August 2026
Connect Four / Four-in-a-Row Game

Implement a Connect Four (four-in-a-row) game on an m×n board. The core problems seen across reports are: 1. Win detection (canPlayWin /…

Phone Screen5×September 2026
Binary Search on Sorted/Log Data

A collection of coding problems centered on binary search, observed in Snowflake phone screens. The most concrete variant: given a log history…

Phone Screen5×July 2026
Wiki Page Shortest Path / BFS Traversal

Given a start wiki/web page and a target wiki/web page, find the minimum number of clicks (hops) needed to navigate from the…

Phone Screen4×September 2026
Rate Limiter Design

Design and implement a rate limiter. In the most concrete variant: given an array where each index corresponds to a request ID…

Phone Screen4×August 2026
Tax CalculationFree

Design and implement a class (OOP/OOD style) that calculates the amount of tax paid given a progressive (bracket-based) tax rate system. You…

Coding4×June 2026
Merge Two / K Sorted Arrays or Lists

Given two sorted arrays (or linked lists), merge them into a single sorted array/list. Follow-up: generalize to merging K sorted arrays/lists into…

Phone Screen3×September 2025
Graph K-Colorability / Three-Color Graph Coloring

Given an undirected graph represented as a list of nodes (locations) and a list of adjacency tuples (edges), determine whether the graph…

Phone Screen3×July 2026
Nearest Bathroom to Each Desk (multi-source BFS grid)

Given a 2D grid where cells are labeled B (Bathroom), D (Desk), or _ (empty space), find the shortest distance from each…

Phone Screen3×April 2026
Find Anagrams in String/Array

Given two arrays of strings (or a string and a pattern string), find all anagrams of the target(s) within the source and…

Coding3×June 2025
Event Timestamp Tracking with Time-Range Counting

Design a system to process a stream of events. In the base version, implement two functions: (1) Receive(event_type, timestamp) — ingests an…

Phone Screen2×August 2026
Implement Event Emitter

Implement a JavaScript EventEmitter class (or object) that supports the following methods: - subscribe(eventName, callback): Register a callback function to be called…

Phone Screen2×March 2026
Design In-Memory File System

Design an in-memory file system that supports basic file system operations. This is based on LeetCode 588. You are required to implement…

Phone Screen2×December 2025
Binary Tree Shortest Path Between Two Nodes

Given a binary tree (or graph of linked nodes), find the shortest path between two given nodes. In one variant: given any…

Phone Screen2×April 2026
Minimum Distance in Matrix (BFS Pathfinding)

Given an m×n matrix containing 0s and 1s, find the minimum distance (number of steps) from a start cell (sr, sc) to…

Phone Screen2×June 2026
Sliding Window Problem

A sliding window problem appearing in Snowflake phone screens. The most detailed variant described involves finding all-vowel substrings within a given string,…

Phone Screen2×August 2025
LeetCode Hard DP Problem

A LeetCode Hard-difficulty dynamic programming problem posed during a Snowflake phone screen / OA. The exact problem statement is not fully recoverable…

Phone Screen2×October 2025
Happy Number (LC 202)

Given a positive integer n, determine whether it is a 'happy number'. A happy number is defined by the following process: starting…

Coding2×June 2026
Snowfall / SnowCal Calculation Problem

Implement an interpreter for 'SnowCal', a simple programming language that keeps a single integer X in memory (initially 0) and supports the…

Coding2×July 2026
Expression Evaluator / Simple Calculator

Implement a simple calculator / expression evaluator. In one observed variant, you are given a series of string commands such as 'ADD…

Coding2×February 2026
JSON Parser

Implement a JSON parser (or JSON validator) that handles the following element types: - number: non-negative integer, leading zeros allowed (e.g., '004'…

Coding2×June 2026
Copy List with Random Pointer (LC 138)

Given a singly linked list where each node contains two pointers — 'next' pointing to the next node and 'random' pointing to…

Coding2×August 2026
Dynamic Programming OA ProblemsFree

A set of dynamic programming problems commonly appearing in Snowflake and similar companies' OAs (HackerRank format, Java or C++ only). Reported problems…

OA2×March 2025
SQL: Employees Who Completed Projects Lasting >90 Days

Given a database with employee and project information, write a SQL query to return the names of employees who have ever completed…

Phone Screen1×June 2026
Sliding Window: Users with 3+ Accesses within 60 Minutes

Given a list of LogEntry objects, each containing a UserId and a Time, find and return all users who have accessed the…

Phone Screen1×May 2025
Two Sum (Trie Approach with Unbounded Alphabet)

Solve the classic Two Sum problem, then extend the solution using a Trie data structure. The Trie implementation must not assume a…

Phone Screen1×March 2025
Implement Trie (Prefix Tree)

Implement a Trie (prefix tree) data structure supporting insert, search, and startsWith operations. In a variant observed in this interview, the Trie…

Phone Screen1×August 2025
Parentheses Matching

Given a string containing parentheses, determine whether the parentheses are balanced (valid). The base version uses only '()'. The follow-up…

Phone Screen1×August 2025
Word Pattern Matching / Word Storage API with Pattern Matching

This question has two parts: Part 1 – Pattern Matching: Given a word (string of letters) and a pattern consisting of letters…

Phone Screen1×May 2025
Binary Tree Inorder Traversal (Space Optimization)

Implement inorder traversal of a binary tree (LeetCode 94). First, produce a correct solution with O(n) time and O(n) space (e.g., using…

Phone Screen1×June 2025
Word/Sequence Transformation (BFS)

Given a classic single-word transformation problem (e.g., transform one word into another by changing one letter at a time, where each intermediate…

Phone Screen1×May 2025
Maximum Number of Events That Can Be Attended

Given an array of events where each event is represented as [startDay, endDay, value], and an integer k (maximum number of events…

Phone Screen1×June 2026
HTML/CSS: Implement Shapes and Flexbox Alignment

Implement several common CSS visual elements from scratch: rectangular blocks, circles, and rounded-corner blocks (border-radius). Demonstrate knowledge of Flexbox alignment properties…

Phone Screen1×April 2025
Password Storage System Design

Given a simple pre-described system for storing user passwords, analyze the design: identify system bottlenecks and discuss how to address them. The…

Phone Screen1×June 2026
Graph Privilege Inheritance with BFS

Given N nodes, each associated with a privilege allowlist and a blocklist, and a list of directed edges [A, B] meaning 'B…

Phone Screen1×May 2025
Full Completed Balanced Tree Variant

A variant of LeetCode 545 (Boundary of Binary Tree) where the condition is modified: instead of finding the boundary of a binary…

Phone Screen1×February 2026
LRU Cache

Implement an LRU (Least Recently Used) Cache that supports two operations: get(key) — return the value of the key if it exists…

Phone Screen1×August 2025
Implement Debounce

Implement a JavaScript debounce utility function. The function should take a callback function and a delay (in milliseconds) as arguments, and return…

Phone Screen1×April 2025
Path Deletion and Filtering with Trie

Given a string array representing hierarchical paths (e.g., ['California', 'California/San Francisco', 'California/San Francisco/7th Street']) and a second array of paths to delete…

Phone Screen1×July 2025
N Queens

Place N queens on an N×N chessboard such that no two queens attack each other (no two queens share the same row,…

Coding1×June 2025
Sort Colors / In-place Array Swap

You are given a RecordCollection class that contains a list of Color objects, where each color is encoded as an integer: 0…

Coding1×June 2026
Minimum Window Substring Variant

Given a document string (containing arbitrary characters: letters, digits, punctuation, etc.) and a list of target words (plain words, no punctuation), perform…

Coding1×July 2025
Task Priority Queue with Execution Tracking

Implement a class (OO design) with two methods: 1. addTask(taskId, priority, timestamp) — adds a task to a queue. The same taskId…

Coding1×August 2026
Remove Duplicates from Grid

You are given an m×n grid representing a Connect-4-style game board (initially all zeros). Implement two methods: 1. drop(color, col): Drop a…

Coding1×May 2025
Mountain Height Problem

Given a mountain (peak/elevation) structure, calculate the height or maximum elevation. A commenter in the source thread asked what this question was…

Coding1×April 2025
Employee Contribution Per Project and Promotion Ranking

Given a dataset of employee project contribution records, compute each employee's contribution per project, then sort/rank employees to identify who should be…

Coding1×March 2025
DFS to Find Longest Error Call Chain

This is the third part of a multi-part problem set. Given a directed graph representing service dependencies (provided as an adjacency list,…

Coding1×July 2025
Test Pipeline Optimization

You are given a test pipeline consisting of three test jobs: - Test_Job1: executes a build phase, then runs test_a, test_b, test_c…

Coding1×July 2025
SQL Database Engine with Virtual Functions

Implement a SQL database engine using virtual functions (C++ or similar OOP language). The task involves designing and implementing query operators (e.g.,…

Coding1×May 2026
Reverse Alphanumeric Substrings

Given a string, reverse only the consecutive alphanumeric substrings (substrings consisting solely of English letters and digits) in-place, while preserving all other…

Coding1×June 2026
Pathfinding with Add/Duplicate/Split Operations

Given two positive integers a and b, implement a function that outputs any valid path (sequence of operations) transforming a into b.…

Coding1×June 2026
Minimum Coins for Payment with Change

Given an infinite supply of coins with denominations [1, 5, 10, 50, 100, 200], find the minimum total number of coins needed…

Coding1×February 2026
LeetCode 295: Find Median from Data Stream

Design a data structure that supports two operations on a stream of integers: (1) addNum(int num) — add an integer to the…

Coding1×May 2025
String Validation with Dot Delimiters

Given an input string that may contain dots ('.') as delimiters between segments, determine whether the string is valid according to a…

Coding1×March 2025
Meeting Rooms / Minimum Buses for Schedule

Given a list of bus schedules, each represented as a (departure_time, arrival_time) pair, find the minimum number of buses needed to serve…

Coding1×September 2026
Virtual Warehouse Query Type Selection for Profit Maximization

You are the Snowflake CEO managing a virtual warehouse. You are given n query types, each with different characteristics (e.g., execution time,…

Coding1×January 2026
Recipe Matching from Ingredient Sequence

Given a sorted/ordered ingredient list of n elements and a set of recipe specifications, where each recipe is defined as a consecutive…

Coding1×January 2026
In-Memory Database for Thermostat Device with Range Queries

Design a backend in-memory database to store temperature readings from a thermostat device. Each reading is a pair of [timestamp (format: YYYY-MM-DD…

Coding1×January 2025
Web Server with Document Predicate Checking

Design a web server that manages a collection of documents and exposes two core APIs: 1. InsertDoc(filename): Inserts/registers a document (by filename)…

Coding1×April 2026
Throne Inheritance

Implement a Throne Inheritance system using OOP. The system models a royal family where a King is the root, and inheritance follows…

Coding1×September 2026
Tree Pre-Order Traversal with Marked Invalid Nodes

Given a list of edges representing a tree, and a set of nodes marked as invalid/failed, compute the pre-order traversal of the…

Coding1×December 2025
Valid Tic-Tac-Toe State (Extended)

An extended version of LeetCode 794 (Valid Tic-Tac-Toe State). Given a tic-tac-toe board state (represented as an array of strings), determine whether…

Coding1×November 2025
Delete Node from Forest / Tree

Given a forest represented as an array where each element stores its parent node's index (0-based). Root nodes are self-referential: parent[i] ==…

Coding1×June 2026
Grid Marble Removal

Given a 2D grid containing 'X' (marbles) and 'O' (empty cells). A marble can be removed if there exists at least one…

Coding1×June 2025
Serialize and Deserialize Trie

Implement serialization and deserialization of a Trie (prefix tree / dictionary trie) data structure. Given a Trie that stores a set of…

Coding1×August 2025
Determine if Binary Tree is Perfect

Given a binary tree, determine whether it is a 'perfect' binary tree — meaning every internal node has exactly 2 children and…

Coding1×March 2025
Minimum Operations to Convert Tree to Perfect Tree

Given a binary tree, find the minimum number of add/remove operations to convert it into a perfect binary tree (i.e., every level…

Coding1×March 2025
Kanban Board with Status Navigation

Implement a Kanban board UI in React + TypeScript. The board displays tasks grouped by status columns (e.g., To Do, In Progress,…

Coding1×August 2026
Tree Level-Order Traversal / BFS on Service Dependency Graph

Given a graph of services where edges represent dependencies (one service calling another), and given the first service that crashes (starts throwing…

Coding1×August 2025
TTL Key-Value Store with Efficient Expiry Cleanup

Implement a key-value store that supports get, set, update, and delete operations, each accepting a timestamp as an extra parameter. Each key-value…

Coding1×July 2025
String Formation OA

Count the number of ways to form a target string by selecting characters from columns of a word…

OA1×September 2025
String Transformation (LeetCode 2851)

Given strings, perform a series of transformations according to a defined pattern (LeetCode 2851 'String Transformation'). The problem involves transforming one string…

OA1×March 2025
Efficient Scaling OA

You are given a data processing pipeline consisting of n services. The i-th service has an initial throughput of throughput[i], and each…

OA1×September 2025
Heap Problem: Repeatedly Halve Maximum Value

Given a collection of values, repeatedly find the maximum value and halve it (integer or floating-point division). Perform this operation some number…

OA1×March 2025
Minimum Value Weight OA

An optimization problem requiring minimization of a 'weight' value under certain constraints. Full problem details were shared via screenshots in the original…

OA1×March 2025
Filter System with Dynamic Blacklist

Design an OOD filter system with three methods: 1. processFilter(int value) — dynamically add or remove a value from a blacklist filter.…

OA1×June 2026
String Pattern OA

Given a string pattern problem (Snowflake OA classic question), determine whether a target string can be formed or matched according to certain…

OA1×March 2025
Work Schedule OA

A schedule constraint satisfaction problem. Given a set of workers and scheduling constraints (such as shift assignments, availability windows, or coverage requirements),…

OA1×March 2025
New Network Protocol OA

Given a string s, you need to transmit it over a network. The rules are: - If two adjacent characters in a…

OA1×September 2025
Unequal Elements OA

Given an array or collection of integers, identify or count elements that are unequal/distinct — likely involving finding, counting, or rearranging elements…

OA1×March 2025

Browse the full Snowflake catalog →

FAQ

How many coding questions does Snowflake ask?
AceOffer has reconstructed 87 distinct Snowflake coding interview questions from 194 verified candidate reports, each with verbatim follow-ups and a last-reported date.
What is the most common Snowflake coding interview question?
Course Schedule / Prerequisites / Task Completion / Topological Sort — reported 16 times, last seen August 2026.
How fresh is AceOffer's Snowflake coding question data?
The catalog is refreshed monthly from new candidate reports, and every question shows when it was last reported.

Get the full Snowflake catalog

Every question, every candidate-reported follow-up, and what passers actually do. Monthly refresh.

Is this helpful?