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 1141–1170 of 1208 results
This problem tests your ability to model hierarchical data structures and design an efficient state management strategy for an interactive UI component.
UiPathFrontend EngineerSoftware Engineering FundamentalsOnsiteImplement a small Python scheduler that registers ETL tasks with dependencies and runs a pipeline so that each task executes only after its upstream tasks succeed. It tests clean interface design, dependency ordering with validation, failure and retry handling, and clear reporting of what happened to each task.
UnitySoftware EngineerSoftware Engineering FundamentalsOnsitePresent Python experience through maintained production work, correctness practices, operational judgment, and honest tool-selection limits.
UpstartSoftware EngineerSoftware Engineering FundamentalsHR ScreenA staged, roughly two-hour coding exercise to build a banking service: ATM balance, deposits and withdrawals, per-account statements that include failed transactions, instant transfers, external transfers that charge a fee, and slow transfers that hold funds until they arrive. It tests exact money handling, ledger design and extensible code.
ValonSoftware EngineerSoftware Engineering FundamentalsOnsiteImplement loan accounting handlers in Python where fees increase the fee balance and payments pay down fees before principal, then build a ledger that accepts payment and fee events out of order. It tests keeping events ordered by accounting sequence, updating later balances without reprocessing the whole history, handling ties and overpayments, and analyzing per-call cost.
ValonSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement billing event handlers where credits pay down usage before the subscription fee, then build a ledger that accepts charge and credit events out of chronological order and recomputes only the balances that a backdated event actually invalidates.
ValonSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDesign exact external-memory global line deduplication with sorting or partitioning, full equality checks, and optional first-occurrence order preservation.
VantaSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests your ability to build a modular React dashboard that handles state synchronization, efficient list filtering, and semantic UI structure.
VerkadaFrontend EngineerSoftware Engineering FundamentalsOnsiteImplement a responsive React camera-card list with fixed preview ratios, status and missing-image states, semantic selection, and a clear visual-verification method.
VerkadaFrontend EngineerSoftware Engineering FundamentalsTechnical ScreenImplement a JavaScript frame player controller 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.
VerkadaSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement a middle-tier REST API server that lets cameras upload their logs and lets users request them back, with fake logs supplied by the tests. It tests endpoint design, request validation and status codes, storage organized for time-range queries, and thread-safe request handling.
VerkadaSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenWrite a Python program that streams a multi-gigabyte host log file and parses each line into a dict holding its timestamp and key-value fields. It tests tokenizing quoted values with spaces, inner equals signs and escaped quotes, handling two timestamp formats, skipping blank lines, and keeping memory constant with a generator.
VerkadaSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests full-stack proficiency, focusing on efficient database querying with optional filters, secure backend API design, and responsive frontend state management.
VersemedicalSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests the ability to handle API integration, data stream processing, and sliding window logic while managing error handling and rate-limiting constraints.
VersemedicalSoftware EngineerSoftware Engineering FundamentalsOnsiteA Java fundamentals question pair: explain polymorphism, including overriding, dynamic dispatch and overload resolution, and compare monolithic and microservices architectures. It tests precise language mechanics, concrete examples, and balanced reasoning about deployment, scaling, consistency and operational trade-offs.
VisaSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign a grounded weather assistant with typed model tool calls, server-side credentials, validated live data, provenance, and safe failure behavior.
VoleonMachine Learning EngineerSoftware Engineering FundamentalsTechnical ScreenExplain a sorting algorithm of your choice, such as merge sort, in a technical screen for a quantitative role. Tests whether you can describe the split and merge steps, trace a small example, argue correctness, derive time and space complexity, and discuss stability and alternatives.
VoleonQuantitative ResearcherSoftware Engineering FundamentalsTechnical ScreenThis problem tests your understanding of Spring Boot MVC architecture, specifically how to manage session-scoped state, optimize view rendering, and implement robust server-side validation using Thymeleaf.
Walmart LabsSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests your deep understanding of sorting algorithm internals beyond asymptotic complexity, focusing on practical trade-offs in memory, stability, and data characteristics.
Walmart LabsSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDesign and implement an in-memory job scheduler that runs submitted jobs after a delay and supports cancellation and shutdown. It tests choosing a structure ordered by due time, thread-safe coordination without busy waiting, worker concurrency, failure isolation and the trade-offs of recurring or persistent jobs.
Walmart LabsSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests your ability to design a robust object-oriented structure using interfaces and concrete class implementations, focusing on polymorphism and data encapsulation.
Walmart LabsSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests object-oriented design skills by requiring the modeling of physical interactions (vehicles, spots, sensors) and transactional state management in an automated parking system.
WayfairSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem evaluates your ability to implement a robust, performant search component that handles asynchronous race conditions and user accessibility requirements.
WaymoFrontend EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates a candidate's ability to design frontend state and UI logic—specifically React component structure, state management, click-handling semantics, and derived sunk-detection logic for a Battleship-style board.
WaymoFrontend EngineerSoftware Engineering FundamentalsTechnical ScreenBuild an autocomplete search bar that fetches suggestions as the user types, with a hand-written debounce. Tests timer handling across renders, out-of-order responses and request cancellation, keyboard navigation, accessibility, cleanup and testing with fake timers.
WaymoFrontend EngineerSoftware Engineering FundamentalsOnsiteThis problem tests your ability to debug an Angular component, specifically focusing on Change Detection strategies, memory leaks in RxJS subscriptions, and asynchronous state management.
WaymoFrontend EngineerSoftware Engineering FundamentalsOnsiteRemove duplicate records from a single 256 GB file on a machine with only 128 MB of memory. Tests external-memory techniques such as hash partitioning and external merge sort, skew handling, I/O cost, open-file limits, and preserving the original order.
WaymoSoftware EngineerSoftware Engineering FundamentalsOnsite- Design a Ride SchedulerMedium
This problem tests your ability to design a robust scheduling system that handles dynamic task insertion, state transitions, and time-based prioritization using object-oriented principles.
WaymoSoftware EngineerSoftware Engineering FundamentalsOnsite This problem tests your ability to design an efficient data structure for maintaining and merging temporal events associated with multiple system-generated IDs for the same physical object.
WaymoSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA car must reach an unseen destination while only learning which directions are open at each step. Implement the search that finds it without driving in circles, testing depth-first exploration, visited tracking, physical backtracking, and cost in moves.
WaymoSoftware EngineerSoftware Engineering FundamentalsOnsite