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 1891–1920 of 2810 results

  • OpenAIHardSoftware Engineer
    Key-Value Store Persistence: Length-Prefixed Bytes, Size-Capped Chunks, Thread Safety

    A three-part key-value store exercise: serialize keys, values and their lengths into bytes and persist them on shutdown, split the saved data into chunks of a given maximum size, and discuss making the existing code safe for multithreaded use. It tests byte-level encoding, correct restore and concurrency reasoning.

    Software Engineering FundamentalsTechnical Screen
  • OpenAIHardSoftware Engineer
    Lab Robot Job Dispatcher with Backoff, Quarantine and Prereqs

    Implement an in-memory job dispatcher where failed jobs wait out a per-job backoff, keep their original queue position, and get quarantined after repeated failures, then add prerequisite jobs with cascading quarantine. Tests state modeling, dual-heap scheduling, and online topological ordering.

    Software Engineering FundamentalsTechnical Screenheapschedulingstate-machine
  • OpenAIMediumSoftware Engineer
    Lease-Based Job Queue for Flaky Render Workers

    Build an in-process job queue that hands out time-limited leases. A job is never lost when a worker crashes, hangs or fails, and jobs that always fail are dead-lettered after a retry limit. Tests state machines, fencing tokens, thread safety and clock-injected tests.

    Software Engineering FundamentalsTechnical Screenconcurrencyqueuesfault-tolerance
  • OpenAIMediumSoftware Engineer
    Manage GPU Credits with Expiration

    This question evaluates data-structure design and algorithmic reasoning for time-based resource accounting, including handling expiring credits and out-of-order operations while maintaining efficient (logarithmic) performance constraints.

    Coding & AlgorithmsTechnical Screen
  • OpenAIMediumSoftware Engineer
    Merge overlapping intervals

    This question evaluates algorithmic problem-solving skills focused on interval manipulation, sorting and merging logic, and time/space complexity analysis within the Coding & Algorithms domain, emphasizing practical application.

    Coding & AlgorithmsTechnical Screen
  • OpenAIMediumSoftware Engineer
    Minimize deaths in spreading plant infection

    This problem tests your ability to simulate a state-based grid propagation and optimize intervention timing using either greedy or dynamic programming approaches.

    Coding & AlgorithmsTechnical ScreenSimulationBFSGrid
  • OpenAIMediumSoftware Engineer
    Optimize C++ Performance with Provided Concurrency

    This question evaluates a developer's skills in C++ performance engineering and concurrent systems, covering profiling, bottleneck identification (e.g., cache locality and lock contention), and code-level performance reasoning to improve throughput and latency.

    Coding & AlgorithmsTechnical Screen
  • OpenAIMediumSoftware Engineer
    Order Recipe Prep Steps Into the Smallest Valid Sequence

    Return a deterministic, lexicographically smallest valid ordering of named prep steps with dependency constraints, correctly including steps with no prerequisites and steps unconnected to any dependency.

    Coding & AlgorithmsTechnical Screentopological-sortgraphsheap
  • OpenAIMediumSoftware Engineer
    Order Tasks with Dependencies Using a Deterministic Topological Sort

    Tests deterministic topological sorting of a directed acyclic graph using Kahn's algorithm and a priority queue to guarantee lexicographical tie-breaking.

    Coding & AlgorithmsTechnical Screengraphtopological-sortheap
  • OpenAIMediumSoftware Engineer
    Parse and build binary data in Python

    This question evaluates proficiency in binary data handling and serialization/deserialization in Python, including little-endian integer encoding, length-prefixed payloads, robust error handling for short reads and invalid lengths, and testability and performance considerations.

    Data Manipulation (SQL/Python)Technical Screen
  • OpenAIHardSoftware Engineer
    Print Shop Job Queue: Retries, a Poison Queue and Job Prerequisites

    Implement an in-memory job queue for a print shop where workers reserve, complete, or fail jobs, failed jobs retry up to a limit before landing in a poison queue, and a second part adds job prerequisites with cascading failure.

    Software Engineering FundamentalsTechnical Screenqueuesstate-machinesretries
  • OpenAIHardSoftware Engineer
    Reason About Binary Search with One-Call-Delayed Feedback

    Implement and analyze binary search under a 1-step delayed-feedback protocol where each query response evaluates the previous guess.

    Software Engineering FundamentalsTechnical Screenbinary-searchinteractivealgorithms
  • OpenAIMediumSoftware Engineer
    Rebalance shard ranges under overlap limit

    This problem tests interval manipulation and greedy optimization by requiring you to adjust a set of shard ranges so that no more than k ranges overlap at any integer point, while minimizing the number of boundaries moved.

    Coding & AlgorithmsTechnical ScreenAlgorithmsSweep-LineIntervals
  • OpenAIMediumSoftware Engineer
    Refactor a Chatbot into Clean Object-Oriented Components

    Tests object-oriented design and refactoring skills by decoupling a monolithic chatbot script into modular, testable, and extensible components adhering to SOLID principles.

    Software Engineering FundamentalsTechnical ScreenObject-Oriented DesignRefactoringDesign Patterns
  • OpenAIHardSoftware Engineer
    Refactor a chat message processing function

    This problem tests your ability to refactor procedural, error-prone code into a robust, extensible pipeline for parsing and managing chat message state.

    Coding & AlgorithmsTechnical ScreenRefactoringString-ManipulationOOP
  • OpenAIHardSoftware Engineer
    Resolve Short-Link Redirect Chains That May Loop

    Follow single-target redirects from a start code and return the final code, or the last code before the walk would revisit one. Then answer many starts in linear total time. Tests visited-set bookkeeping and functional-graph structure.

    Coding & AlgorithmsTechnical Screengraphsfunctional-graphcycle-detection
  • OpenAIHardSoftware Engineer
    Rotate Couriers Daily at Minimum Total Cost

    Choose one courier company per day so that no company works two days in a row and the total price is minimal, then return the schedule. Tests DP over a small state, path reconstruction, and the best/second-best trick for k options.

    Coding & AlgorithmsTechnical Screendynamic-programmingreconstructionarrays
  • OpenAIMediumSoftware Engineer
    Serialize and Restore an In-Memory Key-Value Store

    Design and implement a deterministic binary serializer and strict deserializer for a string key-value store, ensuring robust input validation against corruption, truncation, duplicate keys, and trailing data.

    Software Engineering FundamentalsTechnical Screenbinary-serializationsystemsdata-encoding
  • OpenAIEasySoftware Engineer
    Simulate a Turn-Based Two-Player Game

    This problem tests your ability to design a robust state management system and implement validation logic for a rule-based game.

    Coding & AlgorithmsTechnical ScreenState ManagementAPI DesignSimulation
  • OpenAIMediumSoftware Engineer
    Social Graph with Follow/Unfollow, Snapshots, History Queries and Recommendations

    A software engineer phone-screen coding problem: build an in-memory social graph that supports follow and unfollow, point-in-time snapshots, queries of who followed whom as of an earlier snapshot, and recommendations of users to follow. It tests data-structure choice, versioned history, and deterministic ranking.

    Software Engineering FundamentalsTechnical Screen
  • OpenAIMediumSoftware Engineer
    Spreading Contagion on a Grid

    Tests modeling multi-source breadth-first search (BFS) on a 2D grid to compute simultaneous state propagation across discrete time steps.

    Coding & AlgorithmsTechnical Screenmulti-source-bfsgraphsmatrix
  • OpenAIMediumSoftware Engineer
    Three-Card Game: Deal Hands, Rank Them, Then Add a Flush Category

    A two-part card game coding exercise: deal three cards to each player from one deck, show every hand and pick the winner using three of a kind, pair and high card, then add a flush category between them. It tests hand representation, within-category comparison, tie handling and code that extends cleanly when a rule changes.

    Software Engineering FundamentalsTechnical Screen
  • OptiverHardSoftware Engineer
    Analyze an Unfair-Coin Bankroll Game

    This problem tests probability theory and expected value calculations in the context of a game with an unfair coin and a bankroll constraint.

    Statistics & MathTechnical ScreenProbabilityExpected ValueRecurrence Relations
  • OptiverHardSoftware Engineer
    Calculate the Probability That Two Dice Sum to Seven

    This question tests fundamental understanding of discrete probability, combinatorics, and the impact of conditional dependencies on outcomes.

    Statistics & MathTechnical ScreenProbabilityCombinatoricsStatistics
  • OptiverHardSoftware Engineer
    Cargo Order Allocation Across Departing Planes

    This question evaluates competence in deterministic resource allocation, stateful simulation, and capacity-management under time constraints, exercising algorithmic reasoning and data-structure handling within the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • OptiverMediumSoftware Engineer
    Compare common data structures and uses

    Compare common data structures and uses evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Coding & AlgorithmsTechnical Screen
  • OptiverMediumSoftware Engineer
    Compute expectations, conditionals, odds, and distributions

    This question evaluates proficiency in fundamental probability and statistics concepts — including expected value and variance, conditional probability, discrete arrival modeling, betting odds and the Kelly criterion, and combinatorics for draws without replacement — and is categorized under Statistics & Math.

    Statistics & MathTechnical Screen
  • OptiverMediumSoftware Engineer
    Count nonnegative buy/sell sequences

    This question evaluates combinatorial reasoning and algorithmic analysis by asking for the count of constrained buy/sell sequences, testing competence in counting under constraints and reasoning about sequence invariants.

    Coding & AlgorithmsTechnical Screen
  • OptiverMediumSoftware Engineer
    Decide and implement DP/heap and approximation

    This question evaluates dynamic programming for counting constrained subsequences, priority-heap implementation and API robustness for job scheduling, and heuristic approximation methods for NP-hard selection problems, along with algorithmic complexity analysis.

    Coding & AlgorithmsTechnical Screen
  • OptiverMediumSoftware Engineer
    Demonstrate task switching and memory strategies

    This question evaluates task-switching ability, working-memory management, interference control, and error-recovery strategies—core executive functions involved in rapid stimulus–response mappings.

    Statistics & MathTechnical Screen