Topic
Software Engineering Fundamentals interview questions
1208 Software Engineering Fundamentals questions from 253 companies, with hints, runnable code and solution walkthroughs.
123 easy887 medium198 hard
Software Engineering Fundamentals interview questions by the numbers
Last updated
Katkat has 1,208 Software Engineering Fundamentals interview questions from 253 companies; the most come from OpenAI (5%), Stripe (4%) and Amazon (3%). By difficulty: 10% easy, 73% medium and 16% hard. The most common round is Technical Screen (52%). Frequent concepts include Data Structures, Concurrency, System Design and Algorithms.
Companies (253)
Difficulty
- Easy10% · 123
- Medium73% · 887
- Hard16% · 198
Interview rounds
- Technical Screen52% · 625
- Onsite37% · 448
- Online Assessment8% · 96
- HR Screen2% · 28
- Other1% · 11
Roles
- Software Engineer85% · 1026
- Frontend Engineer4% · 51
- Machine Learning Engineer2% · 30
- Backend Engineer2% · 25
- Data Scientist1% · 17
Frequent concepts
- Data Structures8% · 97
- Concurrency8% · 96
- System Design8% · 93
- Algorithms3% · 42
- API Design3% · 42
- Object-Oriented Design3% · 35
Most mentioned in interview experiences
- 1.Plant Infection Grid Simulation: Days to Stabilize, Immune Plants, Expiring Immunity5 reports
- 2.Bootstrap Service: Aggregate Downstream Services and Return the Right HTTP Status4 reports
- 3.Crawl an HTTP-served maze to its exit with 503 retries, dead ends and cycles4 reports
- 4.Find the Exit of an HTTP URL Maze Despite Flaky 503s and Bad JSON4 reports
- 5.In-Memory Workspace Credit System With Transfers, Top-K and Scheduled Transfers4 reports
- 6.Virtual Card Case Study: Trade-offs, Card Number Rule Checks, and Debugging a Filter4 reports
- 7.Virtual Card Numbers Case: Trade-offs, Payment Validation Rules, Debugging4 reports
- 8.Workspace Credit Ledger: Transfers, Top-K, Scheduled Transfers, Merges, Balance History4 reports
- 9.Build a UVM testbench: driver, monitor, scoreboard and coverage-driven closure3 reports
- 10.Debug a Layered Book Search Service Against Five Search Rules3 reports
Counted from 425 candidate interview experiences on Katkat. How we collect and count
Showing 601–630 of 1208 results
Design an append-friendly, compact columnar file format optimized for fast analytical scans over tabular financial market data (e.g., tick feeds or order book snapshots). Define the on-disk binary layout, reader/writer abstractions, serialization rules, and operational trade-offs.
Jump TradingSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement a log parser and query engine that converts raw server log lines into structured records and supports filtering via prefix-operator tokens.
KikoffSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement a pipeline that validates a third-party identity verification response against schema requirements and business rules while returning sanitized failure reason codes.
KikoffSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTests your ability to design a concurrent, thread-safe bounded blocking queue using synchronization primitives, handle edge cases like spurious wakeups and timeouts, and cleanly coordinate shutdown across multiple threads.
LatitudeaiBackend EngineerSoftware Engineering FundamentalsOnsiteEvaluate whether delayed arrivals can support a fixed polling interval that always yields exactly one new record. Use worst-case reasoning, then define a practical live contract covering observation limits, warm-up, buffering, cursors, deduplication, retries, out-of-order data, and multiple pollers.
LayerzeroSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDesign a provider-neutral object storage upload client that unifies cloud SDK behaviors while supporting streaming, multipart uploads, error normalization, and provider-specific escape hatches.
LegoraBackend EngineerSoftware Engineering FundamentalsOnsiteDesign a modular, provider-agnostic upload adapter interface that enables clients to perform direct uploads to cloud storage (e.g., S3, GCS, Azure Blob). The problem evaluates object-oriented API design, error normalization, capability negotiation, and idempotent verification workflows.
LegoraSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates practical implementation skills in game logic, real-time state and event management, piece rotation and movement handling, line-clearing algorithms, and clean, testable code organization.
LiftoffSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question tests your ability to identify and rectify a logical error in a Transformer's multi-head self-attention mechanism, specifically focusing on tensor dimensionality, causality masking, and numerical stability.
LilaMachine Learning EngineerSoftware Engineering FundamentalsOnsiteDesign a drum that holds raffle ticket codes, where the same code can be dropped in more than once, and supports adding a ticket, pulling a specific ticket out, and drawing one at random so every physical ticket in the drum is equally likely to come out — all in average O(1) time. Tests combining an array with a hash index so removal and random draw both stay constant time even with string keys and duplicates.
LinkedInSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests your ability to design a thread-safe scheduling system using interval management techniques and efficient data structures for range querying.
LinkedInSoftware EngineerSoftware Engineering FundamentalsOnsiteCommunicate a project through a simple data-flow diagram, then explain design choices, implementation ownership, failure behavior, and validation.
LinkedInSoftware EngineerSoftware Engineering FundamentalsOnsiteTests your ability to communicate software design clearly by breaking down a production feature into its architecture, trade-offs, individual ownership, and verification strategy.
LinkedInSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests graph traversal, state-space representation, and pathfinding in an environment where the map must be discovered dynamically.
LinkedInDevOps EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates a candidate's skills in vanilla JavaScript utility implementation and DOM rendering, covering array and plain-object iteration semantics, higher-order functions, input validation, error handling, and safe text rendering for browser environments.
LinkedInSoftware EngineerSoftware Engineering FundamentalsHR ScreenTests recursive tree manipulation, immutable merging semantics, and robust string serialization/deserialization with input validation.
LinkedInSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDesign a collection of strings that allows duplicates and supports insert, remove and a random pick in average constant time, where each stored occurrence is equally likely to be returned. It tests hash map and array layout, index bookkeeping on removal, and how string keys change the cost analysis.
LinkedInSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA take-home asks you to reverse-engineer the undocumented API behind an existing app and rebuild the app with a better user experience, then review its fragility and extend it with safe write support. Tests API discovery, schema inference, resilient client design, credential and legal judgment, and UX scoping.
Luma AISoftware EngineerSoftware Engineering FundamentalsOnsiteDesign a globally versioned key-value store with sparse key histories, binary-search reads, atomic version publication, and correct history retention.
LyftSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign a transactional in-memory key-value store with correct value counts, efficient rollback, and explicitly defined command semantics.
LyftSoftware EngineerSoftware Engineering FundamentalsOnsiteImplement a stateful fetchN wrapper over a paginated upstream that returns items in source order across repeated calls. Define buffering, page-token progression, exhaustion, empty pages, invalid input, and retry behavior without losing or duplicating items.
LyftSoftware EngineerSoftware Engineering FundamentalsOnsiteA coding question to implement an in-memory key-value store with begin, set, unset, commit and rollback, where transaction blocks can be nested and committed changes can no longer be rolled back. It tests how state is recorded per block, restoring keys that were absent, nested commit semantics, and operation complexity.
LyftSoftware EngineerSoftware Engineering FundamentalsOnsiteA coding question that wraps an external paginated API, where each page returns a variable number of words, behind a fetch(n) method that returns the next n words in order. It tests handling words left over between calls, requests that span several or empty pages, lazy fetching, the end of the content, and API failures.
LyftSoftware EngineerSoftware Engineering FundamentalsOnsiteCompare pointer ownership and storage duration, HTTP with HTTPS, and TCP with UDP using concrete technical examples. Strong responses separate guarantees from common implementations, connect concepts to production failures, and avoid simplistic claims about memory or network speed.
MathWorksSoftware EngineerSoftware Engineering FundamentalsOnsiteThis set evaluates quantitative reasoning and probabilistic thinking, testing competencies in combinatorics, probability, expectation, conditional probability, enumeration, and logical deduction.
Maven SecuritiesQuantitative TraderSoftware Engineering FundamentalsOnline AssessmentReview a ticket-checkout handler that bills a card through a remote gateway and then saves an order row, explain every way it breaks when calls fail or are retried, and redesign it. Tests reasoning about partial failure, idempotency, and reconciliation.
MercorSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenReview a Java method that charges a rider's card through an external processor and then writes a trip record, and explain what goes wrong if the caller fails mid-call and how to fix it.
MercorSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA Python code review question about a function that memoizes an expensive computation in a module-level dictionary. It tests whether a candidate can find correctness, memory, concurrency and key-equality problems in simple caching code and propose fixes with clear trade-offs.
MercorSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA Java code-reading question: review a short method that concatenates a list of rows into a CSV string and propose improvements. It tests knowledge of string-building performance, separator and escaping rules for CSV, null handling, streaming output for large exports, and risks when files are opened in spreadsheets.
MercorSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA Java code-reading question about a payment method that charges an external provider and then inserts a database record, focused on what happens when the client fails in the middle of the call. It tests reasoning about partial failures, retries, idempotency keys, payment states, and reconciliation with the provider.
MercorSoftware EngineerSoftware Engineering FundamentalsTechnical Screen