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 781–810 of 2810 results

  • CursorHardSoftware Engineer
    Build a Streaming Markdown Code Fence Parser

    Tests streaming string processing, finite state machine design, and edge-case handling for incrementally received Markdown code fences.

    Software Engineering FundamentalsTechnical ScreenStreamingFinite State MachineParsing
  • CursorMediumSoftware Engineer
    Connect a Project Deep Dive to Engineering Career Decisions

    Connect a technical project deep dive with engineering career decisions, using clear ownership, interface trade-offs, validation, and lessons learned.

    Behavioral & LeadershipTechnical Screen
  • CursorMediumSoftware Engineer
    Design Versioned IDE Settings for Users and Teams

    Design a distributed, hierarchical configuration management service for an IDE that synchronizes versioned settings across individual users, multiple teams, and workspaces while supporting offline modifications and deterministic conflict resolution.

    System DesignTechnical ScreenDistributed SystemsOffline SyncData Modeling
  • CursorMediumSoftware Engineer
    Design a Durable Cron Job Scheduler

    Design a cron scheduler with durable occurrences, timezone rules, missed-run policies, worker leases, idempotent dispatch, and failure recovery.

    System DesignTechnical Screen
  • CursorMediumSoftware Engineer
    Hash a Repository with a Merkle Tree and Find Changed Files

    Hash a repository with canonical Merkle nodes, compare changed subtrees, report file changes, and account for symlinks, cached hashes, and snapshot limits.

    Software Engineering FundamentalsTechnical Screen
  • CursorMediumSoftware Engineer
    Implement Deterministic Merkle Hashing for a Repository

    Implement an incremental, deterministic Merkle tree for a virtual repository file system with stable serialization, child ordering, and ancestor cache invalidation.

    Software Engineering FundamentalsTechnical ScreenMerkle TreeData StructuresFile Systems
  • CursorMediumSoftware Engineer
    Implement a Merkle Tree for Repository Contents

    Implement a Merkle tree to model repository file systems and efficiently compute differences between two repository states using subtree hashes.

    Software Engineering FundamentalsTechnical ScreenMerkle TreeTreesHashing
  • CursorHardSoftware Engineer
    Implement a Merkle-tree repo diff

    This question evaluates a candidate's understanding of Merkle trees, filesystem-aware hashing, directory traversal, and diff algorithms for detecting file-level changes.

    Coding & AlgorithmsTechnical Screen
  • CursorMediumSoftware Engineer
    Implement and Explain a Merkle Tree

    Tests understanding of cryptographic hash trees (Merkle trees), including tree construction, odd-node handling, proof generation, and verification.

    Software Engineering FundamentalsTechnical Screencryptographydata-structurestrees
  • DRWEasySoftware Engineer
    Fewest Expenses to Defer to Year End So the Running Balance Never Goes Negative

    Given a year's transactions in order, with income as positive values, expenses as negative values and a non-negative total, find the fewest expenses to move to the end of the year so the running balance never drops below zero. It tests reasoning over prefix sums for inputs of up to 100,000 transactions.

    Coding & AlgorithmsTechnical Screen
  • DRWEasySoftware Engineer
    Longest Substring in Which Every Present Letter Occurs Equally Often

    Given a string of lowercase letters, find the length of the longest substring in which every letter that appears occurs the same number of times. It tests substring enumeration with incremental frequency tracking and a precise definition of what counts as balanced.

    Coding & AlgorithmsTechnical Screen
  • DRWEasySoftware Engineer
    Minimize the Max-Min Gap of an Array After Changing Up to Three Elements

    Given an integer array, you may change up to three elements to any values; return the smallest possible difference between the largest and smallest values afterward. It tests reasoning about which extreme values are worth changing and careful handling of short arrays.

    Coding & AlgorithmsTechnical Screen
  • Dark Alpha CapitalMediumSoftware Engineer
    Minimize Total Assignment Distance

    This question evaluates competency in combinatorial optimization, assignment/matching problems, and reasoning about Manhattan distance cost metrics. Commonly asked to assess algorithmic reasoning about constrained assignments, search and complexity trade-offs, it belongs to the Coding & Algorithms domain and emphasizes practical application of algorithm design and implementation rather than purely conceptual theory.

    Coding & AlgorithmsTechnical Screen
  • DatabricksMediumSoftware Engineer
    Check if CIDR is fully canceled by rules

    This question evaluates understanding of IPv4 CIDR arithmetic, set operations on IP ranges (overlap detection and subtraction), and ordered rule semantics for allow/deny processing.

    Coding & AlgorithmsTechnical Screen
  • DatabricksMediumSoftware Engineer
    Choose fastest transportation mode on city grid

    This problem tests your ability to model a grid-based transportation network as a graph and apply Dijkstra's algorithm to find the optimal path under multiple constraints.

    Coding & AlgorithmsTechnical ScreenGraphsDijkstraShortest Path
  • DatabricksMediumSoftware Engineer
    Compute 5-minute rolling average load

    This problem tests your ability to maintain a rolling window average over a high-throughput stream of events using an efficient data structure that balances memory usage and query time complexity.

    Coding & AlgorithmsTechnical ScreenSliding WindowData StructuresTime Series
  • DatabricksMediumSoftware Engineer
    Compute last-5-minute QPS in memory

    This question evaluates design of in-memory data structures and sliding-window time-series aggregation for real-time metrics, testing understanding of space/time trade-offs, streaming algorithms, and handling monotonic timestamps.

    Coding & AlgorithmsTechnical Screen
  • DatabricksMediumSoftware Engineer
    Design BFS to detect forced win in Tic-Tac-Toe

    This question evaluates algorithm design and search-space reasoning, focusing on BFS-based game-tree exploration, state representation, symmetry reduction and hashing, win/draw detection, pruning and move-ordering heuristics, and time/space complexity analysis in terms of n, k, t, and the branching factor within the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • DatabricksMediumSoftware Engineer
    Design Chat Deletion Semantics Under Concurrent Sends

    Design the data consistency, concurrency control, and deletion semantics for a distributed chat platform when message creation and thread deletion occur concurrently across distributed nodes.

    System DesignTechnical ScreenDistributed SystemsConcurrencyData Consistency
  • DatabricksMediumSoftware Engineer
    Design IP/CIDR rule matcher

    This question evaluates understanding of IPv4 addressing, CIDR and numeric range representations, plus competency in designing efficient data structures and algorithms for low-latency rule matching with dynamic updates.

    Coding & AlgorithmsTechnical Screen
  • DatabricksMediumSoftware Engineer
    Design KV store with sliding-window QPS metrics

    This question tests the ability to design an in-memory key-value store that supports basic operations while maintaining accurate sliding-window QPS (queries per second) metrics.

    System DesignTechnical ScreenConcurrencyData StructuresMetrics
  • DatabricksMediumSoftware Engineer
    Design a Book Price Aggregator

    Tests the ability to architect a resilient aggregation system interfacing with heterogeneous, unreliable third-party APIs under strict latency, rate-limiting, and cache consistency constraints.

    System DesignTechnical Screensystem-designdistributed-systemscaching
  • DatabricksMediumSoftware Engineer
    Design a Chat Application with a Partitioned Cache

    Design an end-to-end direct and small-group messaging system with strict delivery guarantees, message ordering, and an explicitly partitioned multi-tier caching layer.

    System DesignTechnical ScreenDistributed CachingReal-Time MessagingData Partitioning
  • DatabricksMediumSoftware Engineer
    Design a Customer Revenue Index with Referrals and Threshold Queries

    Tests designing an in-memory index that tracks direct and referral revenue across customers and efficiently supports threshold-bounded minimum revenue queries using balanced search trees.

    Software Engineering FundamentalsTechnical ScreenDesignBalanced BSTHash Table
  • DatabricksHardSoftware Engineer
    Design a KV store with QPS API

    This question tests the ability to design a distributed key-value store architecture that incorporates observability, specifically tracking per-key or per-prefix Queries Per Second (QPS) metrics in real-time.

    System DesignTechnical ScreenDistributed SystemsObservabilityCaching
  • DatabricksHardSoftware Engineer
    Design a Visa-like payment processing system

    This problem tests your ability to design a high-throughput, fault-tolerant transaction processing system that guarantees data integrity across distributed services.

    System DesignTechnical ScreenDistributed SystemsConsistencyPayments
  • DatabricksMediumSoftware Engineer
    Design a generic key-value store

    This question evaluates a software engineer's ability to design a clean, type-safe API for a generic key-value store, covering data modeling, interface design, and extensibility. It tests practical software design skills including generics, error handling, concurrency, and the ability to evolve an in-memory prototype into a persistent implementation without breaking callers.

    System DesignTechnical Screen
  • DatabricksMediumSoftware Engineer
    Design a rolling event tracker with ranges

    This question evaluates understanding of time-series data structures and streaming counters, testing algorithm design, space/time complexity analysis, correctness across edge cases, and handling of large-scale event tracking.

    Coding & AlgorithmsTechnical Screen
  • DatabricksHardSoftware Engineer
    Design a single-node persistent in-memory cache

    This question evaluates a candidate's skills in single-node cache design, including in-memory key/value storage, eviction policy management (e.g., LRU), durability considerations, concurrency control, and techniques for reducing contention such as sharding or striping.

    System DesignTechnical Screen
  • DatabricksMediumSoftware Engineer
    Design a stock order manager

    Design an equity Order Management System (OMS) that manages order lifecycles, ensures idempotent broker interactions, and guarantees state reconciliation under distributed failures.

    System DesignTechnical Screensystem-designdistributed-systemsfintech