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 361–390 of 1208 results
- DatabricksHardSoftware EngineerDesign a Cache with Hit Counts
This question tests the ability to design a thread-safe, high-performance cache that maintains frequency metadata alongside data, requiring an understanding of efficient data structures and concurrency control.
Software Engineering FundamentalsOnsiteConcurrencyData StructuresHash Maps - 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 - DatabricksHardSoftware EngineerDesign a Key-Value Store with Hit Counting
Design a concurrent, in-memory key-value store that tracks read-access frequency using a sliding-window hit counter per key while keeping memory footprint bounded.
Software Engineering FundamentalsOnsiteconcurrencysliding-windowsystem-design - DatabricksHardSoftware EngineerDesign a Write-Ahead Log Writer with Batch Writes
Design and implement a concurrent write-ahead log (WAL) engine featuring group commit, monotonic sequence assignment, torn-tail crash recovery, and explicit durability promises.
Software Engineering FundamentalsOnsitestorage-enginesconcurrencysystems-programming - DatabricksMediumSoftware EngineerDesign a multithreaded event logger
This problem tests your ability to design a thread-safe, high-throughput logging system that balances memory efficiency with I/O performance under concurrent load.
Software Engineering FundamentalsOnsiteConcurrencyMultithreadingDesign Patterns - DatabricksMediumSoftware EngineerExplain storing files to disk with concurrency
This question tests your understanding of OS-level file I/O operations, the risks of concurrent writes to the same file descriptor, and how to implement robust thread-safe mechanisms to maintain file integrity.
Software Engineering FundamentalsOnsiteConcurrencyFile I/OOS Fundamentals - DatabricksMediumSoftware EngineerImplement Column Pruning and Filter Pushdown on a Query Plan Tree
Given a SQL query represented as a tree of scan, filter, project and join nodes, write runnable rewrites that prune unused columns from every scan and push filter conditions down toward the tables. Tests query-optimizer fundamentals, recursive tree rewriting and preserving query results.
Software Engineering FundamentalsOnsite - DatabricksMediumFrontend EngineerImplement Resilient Autocomplete Data Fetching
Implement resilient autocomplete fetching with a quiet period, bounded retries, newest-query precedence, and reuse of recent results. Cover empty input, out-of-order responses, cancellation during waits and requests, error classification, freshness and capacity policies, unmount safety, accessibility, shared requests, and responsive ranking.
Software Engineering FundamentalsOnsite - DatabricksMediumSoftware EngineerImplement a Concurrent Buffered File Logger
Design and implement a thread-safe, buffered logger that aggregates concurrent writes across multiple threads and flushes them to disk efficiently with documented ordering guarantees.
Software Engineering FundamentalsOnsiteConcurrencyMultithreadingObject-Oriented Design - DatabricksMediumSoftware EngineerInteger Set with O(1) Snapshot Iterators Unaffected by Later Changes
Design a set of integers with amortized constant-time add and remove whose iterators capture the exact contents at creation time without copying, stay independent of later changes and of each other, and fit in linear total space. Also compares a shared history log with per-key logs.
Software Engineering FundamentalsOnsite - 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 - 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