practice a little every day, paws crossed ♡
Software Engineering Fundamentals 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 151–180 of 625 results
- CoinbaseMediumSoftware EngineerImplement a blog feed with fetching and state
This problem tests your ability to handle asynchronous data fetching, state synchronization, and UI interactions in React, specifically managing a list of blog posts with optimistic updates and sorting.
Software Engineering FundamentalsTechnical ScreenReactFrontendAsync - CoinbaseMediumSoftware EngineerImplement debounced async autocomplete input
Implement debounced async autocomplete input evaluates requirements, assumptions, structured reasoning, trade-offs, and verification in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Software Engineering FundamentalsTechnical Screen - CoinbaseMediumSoftware EngineerImplement debounced autocomplete component
This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Implement debounced autocomplete component states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Software Engineering FundamentalsTechnical Screen - CoinbaseHardSoftware EngineerPick Mempool Transactions for a Block with Parent Dependencies and CPFP
A multi-part coding problem about filling a block of capacity 100 from a large, unsorted mempool of transactions with fees and sizes, where speed matters more than optimality. Later parts add parent transactions that must be included first, child-pays-for-parent across multi-level chains, and an optional minimum fee for a new child.
Software Engineering FundamentalsTechnical Screen - Color HealthMediumSoftware EngineerBuild and Review an Employee Expense Reimbursement Application
This problem tests your ability to design a simple RESTful API and implement core CRUD operations with server-side validation for an expense tracking system.
Software Engineering FundamentalsTechnical ScreenAPI DesignCRUDValidation - ConfluentHardSoftware EngineerExplain variadic functions
Explain variadic functions evaluates requirements, assumptions, structured reasoning, trade-offs, and verification in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Software Engineering FundamentalsTechnical Screen - CoreweaveEasySoftware EngineerBuild a Resilient Concurrent Python CLI for Local-Service Lookups
Design a Python CLI for serial-number lookups with timeout, HTTP, and JSON handling, bounded thread-pool concurrency, and ordered results.
Software Engineering FundamentalsTechnical Screen - CoreweaveMediumSoftware EngineerCoordinate Basic Threads and Inspect Them on Linux
Use basic Python threading primitives for bounded concurrent function calls, exception capture and joining, then inspect native threads with Linux tools.
Software Engineering FundamentalsTechnical Screen - CoreweaveMediumSoftware EngineerDesign a predicate structure and filter records with comparison, AND and OR
Design a data structure for predicates that combine greater-than and less-than comparisons with AND and OR, then implement filter(data, predicate) to return the matching items. Tests recursive structure design, extensibility to new operators, evaluation with early exit, and handling of missing fields and type mismatches.
Software Engineering FundamentalsTechnical Screen - CostcoMediumSoftware EngineerDebug a Google Cloud Web App Where 80% of Users See Only a Loading Spinner
A production debugging scenario: a web app deployed on Google Cloud loads for only 20% of users while the other 80% see a loading spinner forever. It tests a systematic walkthrough that scopes the failure, gathers browser and server evidence, and tests explanations for the split one at a time.
Software Engineering FundamentalsTechnical Screen - Credit GenieMediumSoftware EngineerImplement FastAPI CRUD endpoints from skeletons
This question evaluates a candidate's ability to implement RESTful CRUD endpoints with FastAPI, focusing on API contract consistency, HTTP status codes and idempotency, input validation and exception handling, and unit testing.
Software Engineering FundamentalsTechnical Screen - CrestaMediumSoftware EngineerJob Dispatcher with Least-Loaded, Round-Robin Assignment and Executor Removal
A coding exercise to implement Executor and JobDispatcher classes that send each integer job ID to the executor with the fewest pending jobs, breaking ties round-robin, while executors join and leave. It tests precise tie-break semantics, consistent load tracking, reassigning a removed executor's queued jobs, and edge cases.
Software Engineering FundamentalsTechnical Screen - CrowdstrikeMediumBackend EngineerImplement a Risk-Score Priority DetectionStore With Put and GetNext in C++
Implement a C++ DetectionStore whose Put stores security detections with an id, an unsigned risk score and a payload, and whose GetNext removes and returns the next detection by risk score as a unique_ptr. Tests priority-structure choice, ownership semantics, tie and duplicate-id policies, and thread safety.
Software Engineering FundamentalsTechnical Screen - CubistMediumSoftware EngineerDesign a class to submit jobs with dependencies and track their status
Design and implement a job tracker class that accepts job submissions with dependencies, hands out jobs that are ready to run, and reports each job's status. It tests state-machine design, dependency-graph bookkeeping, handling of failures and cycles, and thread safety when several workers call the class at once.
Software Engineering FundamentalsTechnical Screen - CubistMediumSoftware EngineerDesign a reusable event-driven framework for trading strategies
Design a reusable, event-driven framework for trading strategies that a team can keep extending after a take-home handoff. It tests event modeling and dispatch ordering, strategy interfaces, backtest and live parity, order and risk management, and the tests and documentation that make a framework maintainable.
Software Engineering FundamentalsTechnical Screen - CursorMediumSoftware EngineerBuild a Merkle Tree over a Directory with Hash Lookup and Tree Diff
Implement a Merkle tree over a real directory in Python, with N-ary directory nodes, a build method, a hash lookup by path, and a diff that compares two trees, and write the tests yourself. It tests deterministic hashing design, file-system traversal, pruning identical subtrees, and disciplined testing under time pressure.
Software Engineering FundamentalsTechnical Screen - CursorHardSoftware EngineerBuild 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 EngineerHash 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 EngineerImplement 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 EngineerImplement 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 - CursorMediumSoftware EngineerImplement 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 - DatabricksMediumSoftware EngineerDesign 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 - DatadogMediumSoftware EngineerImplement DeleteTree With Limited Filesystem APIs
Implement a robust recursive tree-deletion algorithm using a restricted set of filesystem primitives. This question tests post-order traversal, managing call-stack and heap memory across deep and wide directory structures, and handling edge cases cleanly.
Software Engineering FundamentalsTechnical Screentreestackdfs - DatologyaiHardSoftware EngineerCursor-Based Text Editor: Typing, Backspace, and Four-Way Cursor Movement
Implement a TextEditor class with a single cursor that supports typing a character, backspace, and rendering the text with a | at the cursor, then extend it with left/right and up/down cursor movement. Tests choice of representation, per-operation cost, and boundary handling across lines of different lengths.
Software Engineering FundamentalsTechnical Screen - DatologyaiEasySoftware EngineerText Editor with a Cursor: Typing, Backspace, and Four-Way Cursor Movement
Implement a text editor class that types characters at a cursor, deletes with backspace, and renders the text with a bar marking the cursor. Follow-ups add left/right and then up/down cursor movement, testing the choice of data structure for cheap edits, boundary handling, and line-aware navigation.
Software Engineering FundamentalsTechnical Screen - DatologyaiEasySoftware EngineerWord Count and Multiset Intersect Using Only a Mock Spark RDD API
Given a minimal mock of a Spark RDD with only flatMap, groupByKey, union and collect, implement a word count function and a duplicate-preserving intersect of two RDDs. Tests composing transformations without map or reduce, tracking which input an item came from, and reasoning about the cost of grouping.
Software Engineering FundamentalsTechnical Screen - DecagonHardSoftware EngineerAdd Nested Begin, Commit, and Abort Semantics to a Shopping Cart
Design and implement an in-memory shopping cart that supports nested transactions via begin, commit, and abort operations with proper scope isolation.
Software Engineering FundamentalsTechnical ScreenTransactionsData StructuresDesign Patterns - DecagonMediumSoftware EngineerDeliver Messages in Fixed Batches with Per-Message Retry Delays
Send a list of outbound messages to a provider that only accepts five per call, then retry failed messages only after the provider's own per-message cooldown has elapsed. Tests chunking, scheduling retries by readiness time instead of busy-waiting, and handling partial batch failures cleanly.
Software Engineering FundamentalsTechnical Screenschedulingretriesqueues - 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