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 31–60 of 1208 results
Design and implement an in-memory, time-aware task management class that supports scheduling, rescheduling, canceling, and prioritized polling based on timestamps and priorities.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis question evaluates skills in frontend component state design, data modeling, pricing computation, validation logic, error handling, and API integration for a lodging reservation widget.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates a candidate's competence in building robust asynchronous utilities and form validation logic, covering retry/backoff strategies, error classification, per-attempt and overall timeouts, cancellation via AbortSignal, observable retry hooks, cross-field validators, state management, and accessibility considerations in JavaScript/TypeScript web applications. Category: Other / Miscellaneous; domain: web development and systems reliability in JavaScript/TypeScript; it is commonly asked because it probes both conceptual understanding of retry semantics, cancellation and validation constraints and practical implementation skills related to API ergonomics, error propagation, composable validators, and performance trade-offs.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnsiteImplement an in-memory banking system across progressive levels: create users, move money immediately, accept offline transfers that take effect later, and delete transfers that have not completed. It tests state modeling, validation before mutation, conservation of money across every sequence of operations, and extensible class design.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentA four-level in-memory banking system: create accounts, deposit and transfer, rank top spenders by outgoing value, run scheduled payments that must execute in timestamp order before every later operation, and merge accounts while keeping both balances and histories. It tests incremental class design and time-ordered state.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentImplement an in-memory workspace credit system in levels: create workspaces, add credit and transfer it instantly, return the top K workspaces, then schedule and cancel future transfers that must take effect before each later operation. It tests clean state management, deterministic ordering, time-based processing and extensible code under a tight time limit.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentA four-level coding assessment that builds an in-memory task management system: adding, updating and retrieving tasks, name search and priority listing, users with quotas and expiring time-based assignments, then task completion and overdue reporting. It tests extensible design, deterministic ordering and time handling.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentImplement a timestamped in-memory store of parcel attributes with overwriting set, get and a compare-and-set update, then list attributes as name(value) sorted by name with an optional prefix filter, and finally add per-attribute TTLs that hide expired values. It tests precise operation semantics, expiry rules and incremental class design.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentA four-level coding assessment that builds an in-memory credit ledger for workspaces, much like bank accounts. Levels add deposits, instant transfers with a top-k ranking, scheduled transfers with cancellation, and account merges with historical balance lookups, testing stateful class design, time handling and edge cases.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis problem tests your ability to design a robust Command pattern architecture capable of handling complex state transitions, such as data deletions and dependency-aware recalculations, in a spreadsheet environment.
AirtableSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests your understanding of building resilient client-side code that interacts with external HTTP services, focusing on failure handling and operational stability.
AirtableSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates a candidate's competence in resource management, object ownership and lifecycle handling, and safe reuse of pooled database connections.
AirtableSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question evaluates understanding of algorithmic analysis and data-structure design for memory-constrained scheduling, including efficient lookup and update operations for tables and machines and the selection of placement and migration policies, categorized under Software Engineering Fundamentals.
AirtableSoftware EngineerSoftware Engineering FundamentalsOnsiteAn AI-assisted coding exercise: build a two-player Tic-Tac-Toe game, then grow it into an application with a frontend and a backend while using AI tools. Tests correct game rules, server-side validation, API design, and the ability to understand, debug and verify AI-generated code.
AirwallexBackend EngineerSoftware Engineering FundamentalsOtherImplement a JavaScript task scheduler for async functions where tasks sharing a name run strictly in order while tasks with different names run concurrently. Follow-ups add cancelling the running task for a name and clearing every running and queued task by name, testing promise handling, race conditions and API design.
AirwallexFrontend EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests your understanding of language-level performance characteristics, memory management, and development velocity trade-offs in a distributed systems context.
Akuna CapitalSoftware EngineerSoftware Engineering FundamentalsHR ScreenDesign a multi-tiered in-memory item store that enforces tier capacity limits, dynamic expiration, and deterministic retrieval using dual heaps and lazy cleanup.
Akuna CapitalSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTests understanding of bitwise operations, hexadecimal-to-binary mapping, and manual nibble-level alignment without relying on arbitrary-precision integer conversions.
Akuna CapitalSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement a recursive binary tree traversal to find the maximum integer value in a tree, with careful handling of pointer safety, sentinel values, and edge cases like all-negative nodes.
Akuna CapitalSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question evaluates front-end React skills including controlled components, state synchronization, interdependent input validation, keyboard accessibility/ARIA, and unit testing for UI behavior, and it sits in the Front-end/UI development domain (Other/Miscellaneous) with an emphasis on practical implementation rather than purely conceptual reasoning. It is commonly asked because interviewers use it to verify an engineer's ability to enforce input constraints, integrate dropdowns with existing form state and submission flows, maintain accessibility with native controls, and provide test coverage for validation and disabled-option behavior.
Akuna CapitalSoftware EngineerSoftware Engineering FundamentalsHR ScreenThis question tests the ability to join multiple tables, handle date filtering with range conditions, and perform grouped aggregations to calculate average metrics across different resource categories.
Akuna CapitalData EngineerSoftware Engineering FundamentalsOnline AssessmentThis problem tests the ability to build a robust, accessible UI component that manages asynchronous data fetching, state synchronization, and DOM-level focus management.
AmazonFrontend EngineerSoftware Engineering FundamentalsOnsiteThis problem tests your proficiency in creating responsive UI layouts using CSS Flexbox or Grid and your ability to optimize rendering performance for large datasets using virtualization or efficient list rendering.
AmazonSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDesign a repeatedly invoked robot-charging controller with strict battery thresholds, exclusive station assignments, waiting robots, and safe command retries.
AmazonSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDebug an existing Django movie catalog API whose automated tests fail, covering URL routing, query parameter handling, queryset filters on genre, director, writer, rating and year, result ordering with tie-breakers, and HTTP 500 errors. It tests a systematic, layer-by-layer debugging process under a time limit.
AmazonSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis question evaluates backend debugging, RESTful API semantics, data validation and integrity, persistence behavior, and correct HTTP status and error-response handling for watch-list movie operations.
AmazonSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentGiven a layered bookstore search backend with planted bugs, write failing tests for substring matching, scope selection, case-insensitivity, multi-key ordering and visibility, then locate and fix every defect without changing the API contract. Tests test-first debugging across layers and query design.
AmazonSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentAn unfamiliar Node.js car-rental backend with API documentation and failing preset tests has three independent bugs: the My Cars list shows other users' cars, newly added cars never appear, and edits vanish after a refresh. The question tests systematic debugging, ownership checks across endpoints, and confirming that writes really persist.
AmazonSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentTests your ability to design and implement a sliding-window rate limiter with deduplication and state cleanup, reflecting common logic and edge-case errors encountered when debugging test-driven C++ systems.
AmazonSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis problem tests your systematic troubleshooting methodology for a distributed system, focusing on narrowing down the root cause of an API request failure.
AmazonSoftware EngineerSoftware Engineering FundamentalsTechnical Screen