practice a little every day, paws crossed ♡
Software Engineer Interview Questions
Practice 9403 coding, system design and machine learning questions from 546 companies, sorted by role, topic and interview round. Every question has step-by-step hints, a code runner that supports 8 languages and an AI mentor; members also get the full solution walkthrough.
- 9403
- Questions
- 546
- Companies
- 11
- Topics
- 8
- Languages
Showing 2371–2400 of 2810 results
- SnowflakeMediumSoftware EngineerFind the Winner of a Connect Four Game from Its Move Sequence
Given a board size and the sequence of columns two players drop pieces into, return which player first lines up four pieces horizontally, vertically or diagonally, or 0 if nobody does. It tests grid simulation, gravity placement and careful line counting in all four directions.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerHeight of an N-ary Tree After Deleting Nodes and Promoting Their Children
Given an N-ary tree as a parent array and a set of nodes to delete, where each deleted node's children are promoted to its nearest surviving ancestor, return the height of the resulting tree. It tests tree traversal over a parent array and careful reasoning about how deletions change depths.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerHighest Total Profit from Non-Overlapping Jobs When Endpoints May Touch
Each job has a start time, an end time and a profit; choose jobs that do not overlap, where one job may start exactly when another ends, to maximize the total profit. It tests weighted interval scheduling and handling touching endpoints correctly.
Coding & AlgorithmsTechnical Screen - SnowflakeHardSoftware EngineerImplement a JSON Parser
This problem tests your ability to implement a recursive-descent parser for a subset of the JSON format, focusing on string manipulation, state management, and hierarchical data structure construction.
Coding & AlgorithmsTechnical ScreenParsingRecursionString Processing - SnowflakeHardSoftware EngineerImplement course scheduling and rate limiter analysis
This combined question evaluates proficiency in graph-based dependency reasoning (cycle detection and course scheduling) and time-series request processing (rate-limiter behavior and sliding-window request counting) within the Coding & Algorithms domain.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerImplement topological sort and tree boundary traversal
These tasks evaluate core competencies in directed graph algorithms (topological ordering and cycle detection) and binary tree traversals (boundary identification and leaf enumeration), testing understanding of dependency modeling and traversal patterns.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerIn-Memory Key-Value Store with Constant-Time Nested Transactions
Build an in-memory key-value store with get, set and delete plus nested begin, commit and rollback, aiming for constant-time operations. Follow-ups extend it to concurrent threads, keys with a time to live, and reads of a key's value at an earlier point in time.
Software Engineering FundamentalsTechnical Screen - SnowflakeMediumSoftware EngineerList the Nodes on the Path Between Two Nodes of a Binary Tree
Given a binary tree stored as child-index arrays and two node indices, return the nodes on the unique path between them, from the first node to the second. It tests parent tracking, ancestor reasoning and handling cases where one node lies above the other.
Coding & AlgorithmsTechnical Screen - SnowflakeHardSoftware EngineerMaximize revenue by choosing one query type
This problem tests greedy optimization and modular arithmetic skills to determine the most profitable query strategy given a limited time window.
Coding & AlgorithmsTechnical ScreenGreedyMathOptimization - SnowflakeHardSoftware EngineerMinimize coins with overpay and change
This problem tests your ability to optimize combinatorial decisions under constraints by identifying a greedy approach with a fallback to search or dynamic programming.
Coding & AlgorithmsTechnical ScreenDynamic ProgrammingOptimizationAlgorithms - SnowflakeMediumSoftware EngineerMinimum Months to Finish All Courses with Durations and Unlimited Parallelism
Courses take different numbers of months, some must finish before others start, and any number can run in parallel; return the minimum time to finish them all. It tests longest-path reasoning on a directed acyclic graph processed in topological order.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerMinimum Node Deletions to Bring an N-ary Tree's Height Within k
Given an N-ary tree as a parent array and a limit k, find the fewest non-root nodes to delete, promoting each deleted node's children to its nearest surviving ancestor, so that the tree's height is at most k. It tests reasoning about root-to-leaf paths and choosing deletions that shorten many paths at once.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerMinimum Prunes to Bring a Filesystem Tree's Depth Under a Limit
Given a directory tree where deleting a node reattaches its children to its own parent, find the minimum number of deletions needed to bring the deepest root-to-leaf path down to a given limit. Tests a budget-passing tree DP where deleting a node changes how much depth its children inherit.
Coding & AlgorithmsTechnical Screentreesdynamic-programmingrecursion - SnowflakeMediumSoftware EngineerMost Frequent k Words or Bestselling Titles with Alphabetical Tie-Breaks
Given a list of items such as trending words or bestselling book titles and a number k, return the k most frequent items ordered by count, with ties broken alphabetically. It tests frequency counting, sorting with a compound key and heap-based selection.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerMost Meetings You Can Attend When Each Takes One Day Within Its Range
Each meeting can be attended on any single day within its range, and only one meeting fits on each day; return the largest number of meetings you can attend. It tests interval scheduling reasoning and an exchange argument for why a local choice stays optimal.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerMultithreaded Web Crawler with Retries for a Failing Fetch API
Write a web crawler that visits every page reachable from a start URL through a slow link-fetching API, first with BFS or DFS, then with multiple threads, then with retries when the API fails. It tests visited-set safety, termination detection, backoff and failure reporting.
Software Engineering FundamentalsTechnical Screen - SnowflakeMediumSoftware EngineerN-ary Tree Height After Deleting Nodes and Reattaching Their Children
Given an N-ary tree as a parent array and a set of nodes to delete, move each deleted node's children up to its nearest surviving ancestor and report the height of the resulting tree. Tests building a tree from parent links, reasoning about cascading deletions, and computing depths on a tree that can be a path of 100,000 nodes.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerPropagate Permission Letters Through a DAG Using Each Node's Final State
Given a directed acyclic graph in which each node grants and revokes letter permissions, compute every node's final set of letters when each node passes only its final state to its children. Tests topological processing, set propagation over multiple parents, and letters that descendants grant again after an ancestor revokes them.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerQuery Unique and Most-Frequent Keys in a Recent Event Window
Design an in-memory event tracker that maintains the most recent m arrivals from a timestamped stream and efficiently queries distinct key counts and top-frequency keys above a cutoff timestamp.
Coding & AlgorithmsTechnical Screensliding-windowbinary-searchhash-table - SnowflakeMediumSoftware EngineerRate Limiter with Tiers, Runtime Config Changes and Multiple Rules
Implement a rate limiter using a token bucket or sliding window, then support client tiers whose limits change while the service runs, several rules checked on one request, and deterministic tests with a mock clock. It tests algorithm choice, safe configuration swaps and thread-safe all-or-nothing checks.
Software Engineering FundamentalsTechnical Screen - SnowflakeMediumSoftware EngineerReplay Ops on a Freezer-Probe Stack That Tracks Its Minimum in O(1)
Replay a sequence of push/pop/peek/min-read operations on a stack of freezer temperature readings and return what each read produces, where reading the current minimum must be as fast as pushing or popping. Tests pairing a stack with running-minimum bookkeeping that stays correct through duplicate minimums and repeated pops.
Coding & AlgorithmsTechnical Screenstackdata-structuressimulation - SnowflakeMediumSoftware EngineerReturn the Prerequisite Route for a Target Course
Find a deterministic, lexicographically smallest topological order of all direct and indirect prerequisites for a specific target course while ignoring cycles outside the target's dependency subgraph.
Coding & AlgorithmsTechnical ScreenGraphTopological SortHeap - SnowflakeMediumSoftware EngineerReverse a Character Array In Place with Constant Extra Memory
Reverse a string given as an array of characters in place, using only constant extra memory, and return the same list. A short coding warm-up that tests index handling, swapping elements and odd and even lengths without building a copy.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerSolve Matrix and Array Distance Problems
Implement a multi-source breadth-first search to find the shortest path from every compute node to its nearest data warehouse in a grid with obstacles.
Coding & AlgorithmsTechnical ScreenGraphBFSMatrix - SnowflakeMediumSoftware EngineerSolve build ordering and expression evaluation
This question evaluates competency in graph algorithms (topological ordering and cycle detection) and in parsing/evaluating arithmetic expressions with correct operator precedence, associativity, unary operators, and 64-bit integer semantics.
Coding & AlgorithmsTechnical Screen - SnowflakeHardSoftware EngineerSolve scheduling and tree path problems
This problem tests your ability to optimize path calculations in a tree by combining depth-first traversal with a greedy or dynamic programming approach to select paths that satisfy specific constraints.
Coding & AlgorithmsTechnical ScreenTreesDynamic ProgrammingRecursion - SnowflakeMediumSoftware EngineerSort an RGB Record Collection In Place
This question tests the ability to partition an array into three distinct groups (Red, Green, Blue) in a single pass using constant extra space, which is a classic application of the Dutch National Flag algorithm.
Coding & AlgorithmsTechnical ScreenSortingTwo PointersIn-place - SnowflakeMediumSoftware EngineerStack with Constant-Time Minimum over a Sequence of Operations
Design a stack that supports push, pop, top and reading its current minimum in constant time, then run it over a sequence of operations and return what the reads produce. Tests data structure design, duplicate minimum values and keeping auxiliary state consistent on every pop.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerTime-Versioned Key-Value Store and Time-Window Event Counter
Build a key-value store that keeps every timestamped value of a key and returns the value in effect at a given time, then a counter that answers how many events occurred in a time window. It tests binary search over histories, window semantics and memory bounds.
Software Engineering FundamentalsTechnical Screen - SnowflakeMediumSoftware EngineerTransform tree using counterpart subtree sums
This question evaluates proficiency with binary tree algorithms and in-place subtree aggregation, emphasizing traversal strategies, shape verification, and handling subtree sums under linear-time and O(h) space constraints.
Coding & AlgorithmsTechnical Screen