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 4081–4110 of 5874 results
- OpenAIMediumSoftware EngineerRebalance 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 EngineerRecruiter Screen: Current Work, What You Want Next, Level and Work Authorization
Prepare for a recruiter screen for a software engineering role that asks what you are working on now, what you want next along with your current level and promotion history, and your work authorization. Tests concise, concrete answers that give a recruiter what they need to move a candidate forward.
Behavioral & LeadershipHR Screen - OpenAIMediumSoftware EngineerRefactor 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 EngineerRefactor 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 EngineerResolve 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 - OpenAIMediumSoftware EngineerReturn the Lexicographically Smallest Topological Order
Implement a deterministic topological sort using a min-heap to return the lexicographically smallest ordering of a directed graph, or detect cycles and return an empty list.
Coding & AlgorithmsOnsitegraphtopological-sortheap - OpenAIHardSoftware EngineerRotate 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 EngineerSerialize 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 EngineerSimulate 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 EngineerSliding-Window Chat Analytics: Recent Counts, Live Sessions, Out-of-Order Events
A three-part coding exercise: build an in-memory chat analytics service that counts each chat's interactions in a closed 15-minute sliding window, tracks each user's live sessions from touch and close events, and stays correct when events arrive out of order. It tests bounded-memory eviction, efficient updates and queries, and exact window and ordering semantics.
Software Engineering FundamentalsOnsite - OpenAIMediumSoftware EngineerSliding-Window Forklift Telemetry: Pings, Shifts, Late Events
Build an in-memory telemetry service that counts a forklift's recent pings in a 15-minute window, tracks which forklifts are currently on an active shift, and stays correct when pings arrive late and out of order. Tests bounded-memory eviction and exact window semantics.
Software Engineering FundamentalsOnsitesliding-windowstreamingdata-structures - OpenAIMediumSoftware EngineerSocial 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 EngineerSpreading 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 EngineerSpreadsheet engine with setCell/getCell, cell references, and cycle detection
Build a small spreadsheet engine with setCell and getCell, where formulas reference other cells and a write that would create a circular dependency must be detected. The exercise also asks for live unit tests, probing data modeling, dependency graphs, cache invalidation and test design.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerText Editor in Four Stages: Buffer, Undo/Redo, Trie Autocomplete, Collaborative OT
Build a text editor in four stages: a buffer with insert, delete and read, undo and redo with two stacks, trie-based autocomplete ranked by word frequency, and real-time collaborative editing with operational transformation. It tests data structure choice, reversible operations, top-k retrieval and concurrency correctness.
Software Engineering FundamentalsOnsite - OpenAIMediumSoftware EngineerThree-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 - OpenAIHardSoftware EngineerToy Language Types: Render Types and Signatures, Infer Generic Return Types
Model the types of a toy programming language, with primitives, generic type variables and nested tuples, render types and function signatures as strings, then infer a call's concrete return type by binding generics consistently across arguments. It tests recursive data modeling, exact formatting and type inference with clear errors.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerWhy OpenAI, Your View on AGI and AI Safety, and Why You Are Leaving Your Role
Behavioral questions asked by both the recruiter and the hiring manager at a frontier AI lab: why you want to join this company specifically, your views on artificial general intelligence and AI safety, and why you are leaving your current role. It tests specificity, considered views on AI risk and a consistent story.
Behavioral & LeadershipOnsite - OpenAIHardSoftware EngineerWildfire Grid: Days Until Quiet with Expiring Firebreaks
Simulate a wildfire spreading through a forest grid to find how many days until it stops spreading, then extend the model with fire-resistant trees and firebreaks that only hold for a limited number of days before the protected tree becomes flammable.
Software Engineering FundamentalsOnsitebfsgraphssimulation - OpenAIMediumSoftware EngineereSIM Data Wallet with Expiring Bundles and Late Usage Records
Implement a prepaid data wallet where usage draws from the soonest-expiring bundle first and records arrive out of timestamp order, then add checkpointing so balance queries do not replay the full history. Tests event-sourced thinking, heap-based priority consumption, and cache invalidation.
Software Engineering FundamentalsOnsiteheapevent-sourcingout-of-order - OptiverHardSoftware EngineerAnalyze 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 EngineerAnswer why SWE and why Optiver
This prompt evaluates behavioral and leadership competencies within the software engineering domain for low-latency or real-time systems, focusing on motivation, role fit, communication, self-awareness, and interest in trading/financial markets.
Behavioral & LeadershipOnsite - OptiverMediumSoftware EngineerBuild and Validate a Binary Tree from Parent-Child Pairs
This question evaluates understanding of tree and graph concepts, strict string parsing and validation, duplicate and cycle detection, and the construction of canonical S-expressions within the Coding & Algorithms category.
Coding & AlgorithmsOnline Assessment - OptiverMediumSoftware EngineerCalculate Days Between Arbitrary Gregorian Dates
This problem tests the ability to implement a calendar-based calculation algorithm, specifically handling leap year logic and modular arithmetic without iterating through every day.
Coding & AlgorithmsOnline AssessmentAlgorithmsMathCalendar - OptiverHardSoftware EngineerCalculate 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 EngineerCargo 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 EngineerCompare 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 EngineerCompute 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 EngineerCompute negative-price probability after n steps
This question evaluates understanding of discrete probability distributions and random-walk processes within Statistics & Math, testing skills in binomial modeling and numeric computation for probabilistic outcomes.
Statistics & MathOnline Assessment - OptiverEasySoftware EngineerCompute permutations with repeated letters
This question evaluates combinatorics and counting principles within the Statistics & Math domain, focusing on permutations with repeated characters and the generalization to multiple symbol counts.
Statistics & MathOnline Assessment