Snowflake Software Engineer Interview Questions
Snowflake Software Engineer interview questions tend to emphasize scalable thinking and clarity of implementation: expect algorithmic coding problems, SQL and data-processing puzzles, and system-design scenarios that probe how you model data, design APIs, and reason about performance and reliability in a cloud-native environment. Interviewers typically evaluate problem-solving, data-structure fluency, tradeoff reasoning, debugging instincts, and the ability to communicate technical tradeoffs and ownership. The process often begins with a recruiter screen and one or two technical screens (online assessment or live coding), followed by a loop of coding, system design and behavioral interviews that focus on impact and collaboration. For interview preparation, prioritize a balanced plan: polish medium-to-hard algorithm problems under time constraints, rehearse end-to-end designs for distributed systems and data workflows, and refresh SQL and performance concepts relevant to large-scale query engines. Practice explaining tradeoffs and failure modes aloud, prepare concise STAR-style behavioral stories that show measurable impact, and do mock interviews to tighten communication. Aim to demonstrate both clean, correct code and sound system-level judgment.
Implement an in-memory file system
Implement an in-memory file system supporting basic directory and file operations. You must support the following methods (names are illustrative; any...
Design transactional in-memory key-value store
Problem Design and implement an in-memory key–value store that supports basic operations plus transactions. Core API Implement the following operation...
Compute total time to finish all courses
Problem You are given n courses labeled 1..n. Each course i takes time[i] units of time to complete. You are also given prerequisite relations prereqs...
Implement course scheduling and rate limiter analysis
You are given two independent coding problems. --- Problem 1: Course Scheduling You are planning to take a set of courses and are given prerequisite r...
Validate an extended tic-tac-toe state
Problem You are given a 3×3 tic-tac-toe board state as an array of 3 strings, each of length 3. Each cell is one of: - 'X' (player X) - 'O' (player O)...
Serialize and deserialize a dictionary trie
Design and implement serialization and deserialization for a trie that stores a large dictionary of words. Requirements: compact wire format; explicit...
Check balanced parentheses with multiple bracket types
Given a string containing only parentheses '()', determine whether it is balanced. Follow-up: extend the solution to also support '[]' and '{}' with c...
Compute shortest path between tree nodes
You are given the root of a binary tree with unique integer values and two target values u and v. Return the sequence of node values along the shortes...
Design a distributed tree node counter
Distributed Tree Node Count with Two Messages You are given an N-ary tree of machines (one process per node). Each node knows its parent (if any) and ...
Design a concurrent web crawler
Web Crawler System Design (Onsite) Problem Design and implement a concurrent web crawler that: - Starts from a given URL. - Uses a provided interface ...
Design resilient auth with flaky third-party
System Design: Robust Token Acquisition and API Consumption Context You operate a main API that requires clients to present an access token issued by ...
Design multi-core service startup scheduler
Service Startup Scheduler on a Host with M CPU Cores Context You are given a directed acyclic graph (DAG) of services where an edge u → v means servic...
Design cache for DAG-based query views
Design a Caching Strategy for a DAG of Computed Views Context You operate a cloud query engine where logical views are defined over base tables and/or...
Schedule dependent services with layered startup
You are given N services and dependency pairs (u -> v) meaning u must start before v. 1) Produce a valid startup order if one exists; otherwise detect...
Design a multi-tenant quota system
Design a Global Multi-Tenant Quota Service (Single Global Quota per User) Context Multiple upstream products (e.g., Drive, Photos) share a single glob...
Design cache for DAG-based query views
System Design: Caching Strategy for a DAG of Materialized Views Context You are designing an analytics system that computes materialized query views. ...
Compute shortest path between two tree nodes
Given a binary tree (not necessarily a BST) and two node values u and v, implement a function that returns the shortest path between them as a list of...
Design under vague distributed requirements
System Design Prompt: Distributed Metadata Catalog and Schema Registry Context Design a multi-tenant distributed Metadata Catalog and Schema Registry ...
Compute task order with prerequisites
Given an integer n representing tasks labeled 0..n-1 and a list of prerequisite pairs (a, b) meaning b must be completed before a, return any valid or...
Design an in-memory filesystem and circular queue
Part A — Design an in-memory hierarchical file system. Requirements: - Support operations: ls(path), mkdir(path), createFile(path, content), appendToF...