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 331–360 of 1026 results
- DecagonHardSoftware EngineerDesign a Space-Efficient Versioned Recipe Shopping Cart
Design an in-memory versioned shopping cart that aggregates recipe ingredients for bulk discounts, supports atomic mutations, and allows rolling back and checking out earlier cart snapshots efficiently.
Software Engineering FundamentalsTechnical Screendata-structuresdesignevent-sourcing - DecagonMediumSoftware EngineerSend Requests in Batches of Five and Retry Failures After a Per-Request Delay
A practical coding exercise: send a list of requests to an API that accepts at most five per call, then retry failed requests only after the per-request delay returned by the API. It tests batching, retry scheduling with timestamps, waiting without busy loops and clean handling of partial failures.
Software Engineering FundamentalsTechnical Screen - DecagonMediumSoftware EngineerShopping Cart with Undo and Redo for Add and Remove Operations
A coding exercise to build a shopping cart class whose add and remove operations can be undone and redone. It tests how history entries are represented, how capped removals and deleted lines are reversed exactly, what a new change does to the redo history, and how empty-history cases are handled.
Software Engineering FundamentalsOnsite - DecagonMediumSoftware EngineerSolve 3x3 Tic-Tac-Toe with Backtracking: Perfect-Play Result and Best Move
Write a backtracking solver for 3x3 tic-tac-toe that determines the result of a given position under perfect play by both sides and returns a best move for the player to move. It tests win detection, recursive game-tree search, undoing moves correctly, and reasoning about search cost, memoization and pruning.
Software Engineering FundamentalsTechnical Screen - DeshawMediumSoftware EngineerCompare Linux Containers and Virtual Machines
Tests in-depth understanding of Linux operating system virtualization mechanisms, contrasting hardware-level hypervisors with OS-level container isolation primitives across security, performance, and operational dimensions.
Software Engineering FundamentalsTechnical ScreenLinuxOperating SystemsDocker - DeshawMediumSoftware EngineerExplain What Happens When a Linux Shell Runs ls
Tests end-to-end understanding of Linux OS fundamentals, systems programming concepts, system calls, and how a POSIX shell interacts with the kernel to execute a command.
Software Engineering FundamentalsTechnical ScreenLinuxOperating SystemsSystem Calls - Deutsche BankHardSoftware EngineerExplain Java follow-ups after solving coding problem
This question evaluates proficiency in Java programming and software engineering fundamentals, covering competencies such as refactoring for changing requirements, input validation, performance analysis for large datasets, selection of Java collections, generics, exception design, and unit testing.
Software Engineering FundamentalsOnsite - DigitaloceanMediumSoftware EngineerClarify a Longest-Repeating-Character Replacement Problem
Clarify replacement and substring semantics, then analyze the conditional sliding-window criterion based on window size and maximum character frequency.
Software Engineering FundamentalsOnsite - DigitaloceanMediumSoftware EngineerSpecify House-Selection Constraints Before Choosing a Robbery Dynamic Program
Clarify house layout and selection conflicts, derive a conditional linear dynamic program, and explain how circular or graph constraints change it.
Software Engineering FundamentalsOnsite - DiscordMediumSoftware EngineerDemonstrate effective AI-assisted coding workflow
This question evaluates a candidate's proficiency with AI-assisted coding workflows, including prompt formulation, tool and library selection, design critique, testing approaches, and iterative feature development to demonstrate engineering judgment and ownership.
Software Engineering FundamentalsOnsite - DiscordHardSoftware EngineerExplain C++ alignment and ABI stability
This question evaluates mastery of C++ low-level memory concepts—memory alignment, padding and struct/class layout—and understanding of ABI stability, including calling conventions, name mangling, vtable layout and other binary compatibility concerns, reflecting competence in systems-level C++ and binary interfacing.
Software Engineering FundamentalsHR Screen - DiscordHardSoftware EngineerExplain your database experience and debugging approach
This question assesses the candidate's depth in database architecture, specifically regarding isolation levels and race conditions, while testing their methodology for validating code generated by AI or external tools.
Software Engineering FundamentalsHR ScreenDatabasesConcurrencyDebugging - DisneyMediumSoftware EngineerBuild a sortable, searchable movie list UI
This question tests the ability to design a performant, reactive frontend component that handles data manipulation, asynchronous API integration, and efficient DOM rendering.
Software Engineering FundamentalsOnsiteFrontendReactPerformance - DisneyMediumSoftware EngineerDiscuss Terraform, Infrastructure as Code, and AWS Experience
Describe infrastructure-as-code experience through reviewed changes, state management, cloud validation, drift, partial failures, and honest ownership.
Software Engineering FundamentalsHR Screen - DisneyEasySoftware EngineerHow would you run a mentoring-focused code review?
This question evaluates mentoring-focused code review competencies, including code quality and maintainability analysis, frontend architecture (React/TypeScript), testing strategy, accessibility and security awareness, plus written and interpersonal feedback skills.
Software Engineering FundamentalsOnsite - DisneyMediumSoftware EngineerImplement a Set Data Structure with a Resizable Array, Then Improve It with Hashing
Tests low-level data structure design by implementing a set from scratch using an array-backed hash table, focusing on collision resolution, dynamic resizing, load factor management, and amortized complexity.
Software Engineering FundamentalsTechnical ScreenData StructuresHash TableArrays - DisneyMediumSoftware EngineerThread-Safe Buffered Batch Writer for Streaming Records into a Database
Design and implement a thread-safe batch buffer that collects streaming records from multiple producer threads and flushes them to a database using batch inserts based on size, timeout, or shutdown triggers.
Software Engineering FundamentalsTechnical ScreenConcurrencyMultithreadingData Structures - DocuSignEasySoftware EngineerDesign a JSON Schema Validator
Design and implement a modular JSON schema validator that verifies data against structural schemas, supporting primitive types, nested objects, arrays, regex patterns, numeric ranges, and strict field controls.
Software Engineering FundamentalsOnsiterecursionoopdesign - DoorDashMediumSoftware EngineerBootstrap Service: Aggregate Downstream Services and Return the Right HTTP Status
Implement a bootstrap service that calls several independent downstream services concurrently, aggregates their data into one response for a client app, and returns an HTTP status code that reflects partial or total failure. It tests concurrent calls, timeouts, per-section error reporting, and mapping downstream failures to client-facing status codes.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerBuild Resilient Aggregation and Debug Routing
This question evaluates skills in building resilient API aggregation, fault-tolerant retry handling and test coverage for transient failures, as well as debugging and improving load-balancer routing policies including adding round-robin distribution and reasoning about consistent hashing.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerBuild Two Interacting Services That Carry Out a Realistic Refund Flow
A senior coding exercise, with an AI assistant allowed, to build two cooperating services that carry out a refund end to end. It tests service boundaries, a refund state machine, idempotent retries, handling of declines and timeouts, and a runnable simulation of realistic refund scenarios.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerBuild a Delivery Payout Calculation API
Build a payout endpoint that retrieves delivery activity and accrues 30 cents per minute for each concurrent order. The solution covers interval sweeps, malformed events, exact money, day boundaries, final rounding, upstream timeouts, retry limits, caching, and layered tests.
Software Engineering FundamentalsTechnical Screen - DoorDashMediumSoftware EngineerBuild a Resilient Bootstrap API with Partial Upstream Results
Combine Consumer, Payment, and Address APIs with correct identifier dependencies, partial success, bounded timeouts, and complete response fields.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerBuild a Running Late-Order Refund Workflow as Separate Python Services
Build a continuously running Python system of separate services that executes a small workflow graph in which late orders trigger refunds, then discuss new features, API evolution, adding payments, and testing. It tests scoping under time pressure, service boundaries, idempotent refunds, and effective AI-assisted development.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerBuild a Three-Service Refund Workflow over HTTP
Implement and orchestrate a multi-service refund pipeline over HTTP, ensuring idempotent execution, safe concurrency limits, and crash recovery across separate process boundaries.
Software Engineering FundamentalsTechnical Screendistributed-systemshttp-apisidempotency - DoorDashMediumSoftware EngineerBuild an Order-Exception Microservice with Explicit Refund Policies
Design and demonstrate a local service for missing or delayed orders, with explicit refund rules, duplicate handling, and auditable decisions.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerBuild and Debug a Dasher-to-Order Assignment Service, Then Prepare It for Production
A DoorDash onsite exercise to finish and debug starter code for a service that assigns delivery drivers to orders. It tests constant-time bookkeeping, defending a list versus hash map storage choice, invariant-based testing, and how to make the service safe and scalable in production.
Software Engineering FundamentalsOnsite - DoorDashHardSoftware EngineerCompare front-end state management approaches
DoorDash software-engineer onsite front-end question: compare Redux with modern state and data management approaches (Redux Toolkit/RTK Query, React Query, SWR, Zustand, Recoil, MobX, Context) and design an end-to-end strategy for a React SPA that needs offline viewing, pagination, optimistic updates, and error retries. It tests separating client UI state from server cache, caching/invalidation, performance, type safety, testing, and an incremental migration plan off Redux.
Software Engineering FundamentalsOnsite - DoorDashMediumSoftware EngineerDebug Round-Robin and Consistent-Hash Routing
This problem tests the ability to identify flaws in load balancing implementations by evaluating consistency, distribution, and edge-case handling in Round-Robin and Consistent Hashing logic.
Software Engineering FundamentalsOnsiteLoad-BalancingConsistent-HashingDistributed-Systems - DoorDashMediumSoftware EngineerDebug a Random Dasher Registry
Debug a random dasher registry backed by a dense array and an ID-to-index map. Repair empty and swap-delete edge cases, preserve representation invariants, narrow error handling, and extend the design for concurrency and slow dependencies.
Software Engineering FundamentalsOnsite