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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDetermine 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 EngineerEffective 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 EngineerEvaluate 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 EngineerEvaluate 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 EngineerExplain 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 EngineerFewest 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 EngineerFewest 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 EngineerFewest 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 EngineerFewest 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 EngineerFilter 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 EngineerFind 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 EngineerFind 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 EngineerFind 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 EngineerFind 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 EngineerFind 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 EngineerFind 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 EngineerFind 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 EngineerFind 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