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 841–870 of 1208 results
An object-oriented design question that asks for a fixed-capacity least-recently-used cache whose get and put operations run in constant average time and evict the least recently used entry when the cache is full. It tests class decomposition, data structure choice, recency bookkeeping, edge cases and awareness of thread safety.
OracleSoftware EngineerSoftware Engineering FundamentalsOnsiteBatch concurrent logs into half-open five-second processing-time windows with atomic rotation, a single ordered emitter, late-timer handling, and explicit shutdown and sink-failure policies.
OtherSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign queue-worker retries with exponential backoff, durable delayed delivery, attempt limits, idempotent effects, and dead-letter replay, including AI-code validation.
OtherSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates proficiency in Docker resource management, covering containers, images, and volumes and the ability to perform a complete environment cleanup.
OtherSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentThis interview question evaluates engineering fundamentals, trade-offs, examples, pitfalls, and operational implications in a realistic interview setting. A strong answer for Explain RF/analog IC interview fundamentals states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
OtherSoftware EngineerSoftware Engineering FundamentalsOnsiteTest severity filtering with independent expected results, inclusive boundaries, misleading message text, missing fields, empty records, and preserved order and duplicates.
OtherSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests your ability to perform conditional aggregation in SQL for time-series reporting and your proficiency in recursive shell scripting for system administration tasks.
OthersSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentOptimize coupon activations under a 20-point budget to maximize monetary savings while handling item/category stacking, savings caps, rounding, and tie-breaking.
PalantirSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentEvaluates mastery of data storage and scaling trade-offs (RDBMS vs NoSQL), virtualization and containerization concepts (VMs, Docker), orchestration features (Kubernetes), and language-level performance optimization (Python vs C++).
ParadromicsSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis interview question evaluates engineering fundamentals, trade-offs, examples, pitfalls, and operational implications in a realistic interview setting. A strong answer for Detect memory leaks in C++ states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
PayPalSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTests your ability to present an end-to-end software project you built or led, defend key technical design decisions and trade-offs, and architect a forward-looking feature extension under live questioning.
PerceptyxSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA multi-part coding exercise that builds an in-memory file system with directories, files and listings over absolute paths, then adds a cd command and relative path support to every operation. It tests tree data structures, path normalization with dot and dot-dot components, consistent error handling and safely refactoring earlier code.
PerplexitySoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA two-part coding exercise to build an in-memory file system: first mkdir, touch and ls with strict path validation and no implicit creation of parent directories, then rm, rmdir and a function that executes command sequences. It tests tree modeling, error handling and working against provided tests.
PerplexitySoftware EngineerSoftware Engineering FundamentalsOnsiteThis question tests your understanding of performance optimization techniques in large-scale frontend applications, specifically how to balance initial load time against runtime latency.
PersistenceSoftware EngineerSoftware Engineering FundamentalsOnsiteTests practical database indexing, Kafka event ingestion with idempotency guarantees, and row-level locking strategies to prevent concurrency bugs and deadlocks in an inventory and order processing pipeline.
PersistenceSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates foundational competencies in Python language semantics (list vs tuple, identity vs equality) and web fundamentals (HTTP vs HTTPS, CRUD and API concepts), assessing knowledge of data structures, object identity, protocol security, and how CRUD operations map to web services.
PilotSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests the understanding of Java class loading, static initialization blocks, and the order of operations between class-level and instance-level fields.
PinduoduoSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenIn an AI-assisted coding round, add a read-through cache to an existing service so a product GET API calls ProductRepository less often, then explain the approach. It tests understanding a codebase before prompting, cache placement, expiry, invalidation and concurrency, and proving the change works.
PinterestSoftware EngineerSoftware Engineering FundamentalsOnsiteThis question evaluates a developer's skills in iOS UI interaction, animation frameworks, event scheduling and concurrency, performance optimization, and designing testable application architecture.
PinterestSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests object-oriented design principles, specifically the ability to model a card game with multiple decks, complex state transitions (like splitting), and encapsulation of game rules.
PinterestSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA practical scripting exercise for a site reliability role: send GET requests with a required header to two URLs, pull a text field from each response, extract every valid IP address, and rank the addresses by how often they appear. It tests HTTP error handling, strict IPv4 validation, code reuse and deterministic sorting.
PinterestSite Reliability EngineerSoftware Engineering FundamentalsTechnical ScreenExplain Cartesian-product generation for attribute choices while preserving mixed value types and making ordering, duplicates, and empty cases explicit.
PinterestSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenDesign and implement a regional access control system that handles time-based access overrides on a static tree hierarchy with out-of-order updates.
PinterestSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question evaluates proficiency in mobile UI architecture, grid data structures, connected-component algorithm reasoning, and state management concerns such as undo and memory/stack safety within the mobile app development and iOS domain.
PinterestSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign and implement a recursive JSON schema validator that checks nested objects and arrays, enforces required properties, and returns precise failure paths for validation errors.
PinterestSoftware EngineerSoftware Engineering FundamentalsOnsiteTests finding an Eulerian path in a directed multigraph with lexicographical tie-breaking using Hierholzer's algorithm.
PinterestSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenA coding question about settling shared expenses: turn a list of debts between people into payments that leave everyone even, first with no limit on the number of payments and then with as few payments as possible. It tests net-balance reasoning, matching payers with receivers, heap usage, and judging whether a greedy settlement is truly minimal.
PinterestData EngineerSoftware Engineering FundamentalsTechnical ScreenTurn a list of recorded debts between friends into a list of payments that settles every balance, first with any valid list and then with the fewest payments possible, using net-balance accounting and a backtracking search over who pays whom.
PinterestData EngineerSoftware Engineering FundamentalsTechnical ScreenA data structure design exercise: track the Pins a user has viewed within a sliding time window and, at any moment, return the one with the highest trending score. It asks for methods to add a viewed Pin, remove expired Pins and query the top Pin, plus the runtime complexity of each operation.
PinterestSoftware EngineerSoftware Engineering FundamentalsOnsiteTests the candidate's ability to design a high-throughput, memory-bounded rate limiter using bucketed counters instead of unbounded timestamp queues, balancing concurrency, memory overhead, and precision.
PlaidSoftware EngineerSoftware Engineering FundamentalsOnsite