Katkat

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 5041–5070 of 5874 results

  • SnowflakeMediumSoftware Engineer
    Find longest substring with at most k distinct

    This question evaluates a candidate's ability to design efficient string-processing algorithms using sliding-window techniques, reason about time and space complexity, and correctly handle Unicode grapheme clusters when returning substrings.

    Coding & AlgorithmsOnsite
  • SnowflakeMediumSoftware Engineer
    Find the Minimum Bus Fleet with Station Constraints

    Minimize a bus fleet when trips have origin and destination stations, tracking when buses become available at the correct departure station.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Find the Minimum Fleet for a Bus Timetable

    Find the minimum number of buses needed for a timetable by tracking overlapping trips and allowing reuse at equal arrival and departure times.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Find the Nearest Target Character and Support Streaming Updates

    Design a data structure that tracks characters in a dynamic string, supporting streaming appends, character updates, and fast queries for the distance to the nearest target character.

    Coding & AlgorithmsTechnical Screendata-structuresbinary-searchdesign
  • SnowflakeMediumSoftware Engineer
    Find the Shortest Click Path with a Fallible Link API

    Implement a breadth-first search to find the shortest URL click path between two pages using a fallible link-fetching API with retry and tie-breaking logic.

    Software Engineering FundamentalsTechnical Screenbfsgrapherror-handling
  • SnowflakeMediumSoftware Engineer
    Find 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 Engineer
    Handle an AI-Led Screening Interview

    Prepare a structured Snowflake behavioral interview answer for handle an ai-led screening interview. The prompt helps candidates frame concrete stories, ownership, trade-offs, and follow-up-ready details.

    Behavioral & LeadershipHR Screen
  • SnowflakeMediumSoftware Engineer
    Height 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 Engineer
    Highest 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 Engineer
    Implement 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
  • SnowflakeMediumSoftware Engineer
    Implement and Test a Sliding-Window Rate Limiter

    This problem tests your ability to implement an efficient sliding-window algorithm and design a robust testing strategy for a stateful component.

    Software Engineering FundamentalsOnsiteAlgorithmsRate LimitingData Structures
  • SnowflakeHardSoftware Engineer
    Implement 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 Engineer
    Implement crawler and bracket validator

    This question evaluates competencies in web crawling and string validation, covering graph traversal and cycle avoidance with domain filtering for crawl discovery, and delimiter matching with error indexing for multi-type bracket validation.

    Coding & AlgorithmsOnsite
  • SnowflakeMediumSoftware Engineer
    Implement 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 Engineer
    In-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 Engineer
    List 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 Engineer
    Maximize 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 Engineer
    Minimize 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 Engineer
    Minimum 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 Engineer
    Minimum 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 Engineer
    Minimum 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 Engineer
    Most 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 Engineer
    Most 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 Engineer
    Multiset with O(1) Insert, Remove, and Count-Weighted Random Pick

    Design a collection of integers that allows duplicates and supports insert, remove and a random pick weighted by occurrence count, each in average constant time. Tests array and hash map bookkeeping, careful handling of moved elements during removal, and how to test randomized behavior.

    Software Engineering FundamentalsOnsite
  • SnowflakeMediumSoftware Engineer
    Multithreaded 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 Engineer
    N-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 Engineer
    Print an Org Chart as a Depth-Ordered List from Supervisor Pairs

    Given a flat list of (person, supervisor) ID pairs, reconstruct the organization as a forest rooted at whoever has no supervisor, then emit a deterministic preorder listing of (id, depth). Tests root detection, building ordered adjacency lists, and careful DFS ordering.

    Coding & AlgorithmsOnsitetreesgraphsdfs
  • SnowflakeMediumSoftware Engineer
    Propagate 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 Engineer
    Query 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 Engineer
    Rate 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