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 1–30 of 1208 results
A hardware design verification question on building a SystemVerilog UVM testbench for an RTL block. It covers agents, drivers, monitors and scoreboards, checking results that may leave out of order, catching missing outputs, and using code and functional coverage to steer constrained-random stimulus toward sign-off.
AMDSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTwo C++ code-reading exercises: find the bug in a singly linked list insertAfter function that is missing a pointer update and predict what the program prints, then predict and explain the output of code mixing virtual overriding, name hiding, constructors, default arguments and pass-by-value. It tests precise tracing of pointers and dispatch rules.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign and implement a fixed-capacity least-recently-used cache whose get and put operations run in constant time, while answering follow-up probes during coding. It tests data structure composition, careful iterator handling, eviction edge cases, and extensions such as thread safety and expiry.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsitePractical DevOps questions: describe your DevOps experience, explain how Jenkins pipelines, agents and plugins are used to build and test software, and show how to fetch and search a log file too large to open or load into memory. It tests hands-on CI/CD knowledge and efficient handling of large files.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteExplain cache-set conflicts with address mapping, then distinguish eviction from false sharing and GPU bank conflicts so padding and layout changes target the right cause.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteExplain GPU register spills through live-variable pressure, compiler allocation, spill traffic, occupancy tradeoffs, and measured optimization choices.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteExplain reusable agent skills, prompt context, progressive disclosure, selection metadata, referenced resources, and the boundaries of permissions and validation.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteConceptual questions on data storage and retrieval: what a database is and how to find data quickly in a very large dataset, how sharding differs from indexing, and how red-black trees and tries work. It tests understanding of access paths, horizontal scaling and core search data structures.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteAnalyze row-major GPU transpose accesses and use tiled shared staging for coalesced reads and writes, with barrier safety, edge handling, and device-specific bank checks.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteA PCI Express protocol deep dive for a verification role. It covers TS1 and TS2 training ordered sets, LTSSM link training from Detect to L0 and through Recovery, TLP headers and the Posted, Non-Posted and Completion categories, and the ordering rules that decide when one transaction may pass another.
AMDSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenProfile a GPU workload from its critical path to kernel counters, then choose parallelism based on independence, memory capacity, communication, and measured end-to-end gains.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteApply roofline analysis to LLM prefill and decoding using arithmetic intensity, sustainable bandwidth, batching, KV-cache traffic, and measured kernel behavior.
AMDSoftware EngineerSoftware Engineering FundamentalsOnsiteTests your ability to design and implement an extensible, plugin-based security event processing engine supporting multi-tenant enrichments and dynamic rule suppression.
Abnormal AiSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests the ability to manage time-based sliding windows and prefix-based path aggregation to trigger alerts based on request thresholds.
AddeparSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests data structure manipulation, fuzzy matching logic, and evaluation metrics for comparing extracted AI document data against ground-truth schemas.
Additive AiSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests the ability to perform relational database joins and use aggregate functions (COUNT) with grouping to summarize event-level data.
AdiaData ScientistSoftware Engineering FundamentalsTechnical ScreenDesign a high-card game in which tied rounds carry a persistent pot into later rounds, first for two players and then for many. Define card ownership, tie and exhaustion policies, deterministic shuffling, termination rules, extensible classes, and tests for tricky state transitions.
AffirmSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenModel a shuffled 52-card game in which each round the higher top card wins both cards, then report the player with the most cards won. Starts with two players and generalizes to N players with uneven round-robin dealing, testing object design, rule clarification, and deterministic tests.
AffirmSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question evaluates understanding of continuous probability and geometric probability, focusing on independent uniform random variables and reasoning about time-window overlap.
AgodaSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement an in-memory loyalty-points ledger that grows in three stages: atomic transfers between accounts, transfers scheduled for a future point on a simulated clock, and cancellation of a transfer before it fires. Tests incremental state-machine design, validating before mutating, and keeping point totals correct across every sequence of calls.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentImplement an in-memory cloud file store that supports file creation, copying, prefix/suffix search, per-user storage quotas, and atomic file compression/expansion.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentDesign a multi-tiered in-memory cloud storage system supporting staged uploads, capacity limits, prefix search ranking, and conflict-aware backup and restore operations.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentDesign an in-memory stateful banking system that supports account creation, transfers, spending leaderboards, scheduled payments with deterministic backlog processing, and account merges.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentDesign an in-memory working hours and compensation tracking register that supports badge events, top-k leaderboards, scheduled rate changes, and interval-based historical earnings calculations.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis question tests your ability to design a robust database schema and service logic for a banking system, focusing on data integrity, transaction atomicity, and handling high-concurrency balance updates.
AirbnbSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement an in-memory cloud storage system supporting user storage limits, globally unique files, ranked file queries, account merges, and transactional backup and restore operations.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis question evaluates a candidate's ability to design extensible and robust retry mechanisms, covering competencies in API/interface design, fault tolerance, backoff and jitter strategies, cancellation/deadline handling, idempotency considerations, and observability.
AirbnbSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests a software engineer's ability to conduct structured, high-signal code reviews under time pressure and limited context. It evaluates judgment in prioritizing correctness issues over style, communicating feedback clearly, and handling ambiguity — core competencies in software engineering fundamentals interviews.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign and implement an in-memory recipe management service supporting deterministic querying, defensive data isolation, atomic updates, and secondary index maintenance.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentDesign and implement a stateful, time-aware in-memory banking ledger that handles atomic transfers, deferred/scheduled executions, account mergers, historical balance queries, and activity rankings.
AirbnbSoftware EngineerSoftware Engineering FundamentalsOnline Assessment