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 2341–2370 of 2810 results

  • SnowflakeMediumSoftware Engineer
    Design a Shared User Quota Service That Never Overdraws

    Design a quota service that several services draw from for each user, where the balance must never be overdrawn under highly concurrent requests and must stay strongly consistent. It tests atomic conditional updates, reserve-and-commit APIs with idempotency, replication choices, and scaling a single hot user's quota.

    System DesignTechnical Screen
  • SnowflakeHardSoftware Engineer
    Design a Thread-Safe Multi-Rule Rate Limiter

    This problem tests the ability to design a thread-safe, flexible rate-limiting system that handles multiple constraints, atomic permit management, and graceful error handling.

    Software Engineering FundamentalsTechnical ScreenConcurrencyRate-LimitingThread-Safety
  • SnowflakeHardSoftware Engineer
    Design a distributed system end-to-end

    This question evaluates a candidate's ability to design scalable, multi-tenant distributed analytics platforms, testing competencies in distributed systems architecture, data layout and storage, query planning and execution, metadata management, consistency and replication strategies, fault tolerance, observability, and capacity planning.

    System DesignTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Design a distributed tree node counter

    Design a distributed tree node counter evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • SnowflakeHardSoftware Engineer
    Design a multi-tenant quota system

    This question evaluates a candidate's ability to design a global multi-tenant quota service, testing competencies in distributed systems, data consistency, concurrency control, API and storage modeling, and scalability within the System Design domain.

    System DesignTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Design an Audit Logs Service

    Tests the ability to design an immutable, highly available, multi-tenant audit logging service that supports high-throughput ingestion and tamper-evident storage while providing fast, tenant-scoped querying.

    System DesignTechnical ScreenDistributed SystemsSecurityMulti-Tenancy
  • SnowflakeMediumSoftware Engineer
    Design an Interactive Query Execution Notebook

    Tests your ability to design an asynchronous, scalable system for executing interactive SQL queries and streaming execution state and tabular results back to web clients.

    System DesignTechnical Screensystem-designdistributed-systemsapi-design
  • SnowflakeMediumSoftware Engineer
    Design an in-memory filesystem and circular queue

    This question evaluates a candidate's skills in data-structure and algorithm design, API specification, correctness reasoning, and time/space complexity analysis within the Coding & Algorithms domain by combining an in-memory hierarchical filesystem design with a fixed-size circular queue implementation.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Design an object store with deduplication

    This question evaluates a candidate's ability to design scalable, durable object storage systems with deduplication, touching on storage architecture, data modeling, metadata management, consistency, and garbage collection.

    System DesignTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Design error detection and propagation algorithms

    This question evaluates algorithm design and complexity-analysis skills across search and graph problems, specifically log search for first-error detection, reachability and failure propagation in directed service dependency graphs, and longest-path reasoning under cycle or DAG assumptions.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeHardSoftware Engineer
    Design transactional in-memory key-value store

    This question evaluates understanding of in-memory key–value store semantics, transactional and nested transaction behavior, and practical competencies in hash-based data structures and thread-safety for concurrent access.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeHardSoftware Engineer
    Design under vague distributed requirements

    This question evaluates expertise in distributed system architecture, metadata and schema management, transactional DDL semantics, consistency and replication strategies, API and data-model design, multi-tenant isolation, observability, security, and capacity planning.

    System DesignTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Determine Whether an Undirected Graph Is 3-Colorable

    This problem tests knowledge of graph theory, specifically constraint satisfaction, and the ability to implement a backtracking algorithm to solve NP-complete problems on small constraints.

    Coding & AlgorithmsTechnical ScreenGraphBacktrackingRecursion
  • SnowflakeMediumSoftware Engineer
    Effective Permissions in an Inheritance DAG with Allow and Deny Lists

    Nodes of a directed acyclic graph carry allow and deny permission lists that are inherited along its edges; compute every node's final permissions. It tests topological processing, settling an unstated conflict rule between allow and deny, cycle detection and incremental updates.

    Software Engineering FundamentalsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Evaluate an Arithmetic Expression with Parentheses, Unary Minus and Four Operators

    Evaluate an arithmetic expression string with non-negative integers, addition, subtraction, multiplication, division truncating toward zero, parentheses and a unary minus. It tests tokenizing, operator precedence, left-to-right evaluation and deeply nested parentheses without eval.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Evaluate arithmetic expression with variables

    This question evaluates implementation skills for a linear-time expression parser and evaluator, covering tokenization, variable substitution, operator precedence and associativity (including unary +/−), parentheses handling, integer arithmetic semantics (division truncation), error detection, and adherence to O(L) time and space constraints.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Explain a Technical Project from Milestone to Production

    Explain a technical project from background and ownership through a major milestone, launch problems, production validation, and lessons learned.

    Behavioral & LeadershipTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Fewest Buses Needed to Cover Every Scheduled Trip

    Given scheduled trips with start and end times, return the fewest buses needed so that no bus runs two trips at once, where a bus may start a trip the moment its previous one ends. It tests reasoning about maximum interval overlap and boundary handling.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Fewest Link Clicks Between Two Wiki Pages, Then Scale the Search

    Find the fewest link clicks between two wiki pages when each page's links come from a slow fetch call, returning the path. Follow-ups cover parallel level-by-level search, bidirectional search with a correct stopping rule, and caching fetched link lists across searches.

    Software Engineering FundamentalsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Fewest Node Additions and Removals to Make a Binary Tree Perfect

    Given a binary tree described by left and right child arrays, return the fewest single-node additions and leaf removals that turn it into a perfect binary tree, which is 0 exactly when it is already perfect. Tests tree traversal and reasoning about tree shape, including very deep, skewed trees.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Fewest Semesters to Finish All Courses Taking At Most k per Semester

    Given up to fifteen courses with prerequisites and a cap of k courses per semester, return the fewest semesters needed to take every course. It tests why simple greedy choices fail and how to search the space of partial plans efficiently.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Filter hierarchical paths after deletions

    This question evaluates proficiency in hierarchical string processing, prefix-based filtering, edge-case handling (duplicates, trailing slashes, empty inputs), data-structure selection, and algorithmic time/space complexity analysis within the Coding & Algorithms domain, emphasizing practical implementation over purely conceptual reasoning.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeHardSoftware Engineer
    Find Every Three-Card Set Among Cards With Four Attributes

    A coding problem based on a card game in which each card has four attributes with three values each, and three cards form a set when every attribute is all the same or all different. It asks for every set among a group of distinct cards, testing the validity rule, canonical output ordering and improving on a cubic brute force.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Find Shortest Grid Path

    This question evaluates a candidate's ability to implement and reason about grid-based shortest-path algorithms, covering graph traversal, state representation, and obstacle handling.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Find Shortest Wiki Click Path

    This question evaluates understanding of graph traversal and shortest-path concepts, testing competencies in algorithm design, handling cycles, complexity analysis, and integration with external link-retrieval APIs.

    Coding & AlgorithmsTechnical Screen
  • SnowflakeMediumSoftware Engineer
    Find Tree Height After Deleting Nodes and Promoting Children

    Compute tree height after deleting nodes while promoting their children, preserving descendants and counting retained nodes without rebuilding the tree.

    Coding & AlgorithmsTechnical Screen
  • 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