practice a little every day, paws crossed ♡
Software Engineering Fundamentals Interview Questions
Practice 9403 coding, system design and machine learning questions from 546 companies, sorted by role, topic and interview round. Every question has step-by-step hints, a code runner that supports 8 languages and an AI mentor; members also get the full solution walkthrough.
- 9403
- Questions
- 546
- Companies
- 11
- Topics
- 8
- Languages
Showing 301–330 of 448 results
- OpenAIMediumSoftware EngineerGPU Credit Ledger: Spend Earliest-Expiring Credits First, Stop on Overdraft
A coding and design question about an in-memory GPU credit ledger that grants expiring credits, charges usage against the credit that expires soonest, and returns no balance once any charge overdraws the account. It tests data structure choice, expiry and boundary conventions, and optimizing the ledger for a very large number of credit changes.
Software Engineering FundamentalsOnsite - OpenAIMediumSoftware EngineerGame Telemetry Windows: Match Counts, Live Sessions, Late Events
Build an in-memory service that counts per-match actions inside a global 10-minute window, tracks each player's live client sessions from heartbeats and logouts, and stays correct when events arrive late. Tests bounded-memory eviction, amortized analysis, lazy deletion and exact window semantics.
Software Engineering FundamentalsOnsitesliding-windowheapqueue - OpenAIMediumSoftware EngineerImplement a GPU credit ledger with expiring grants and out-of-order operations
Implement a GPU credit ledger with grant, subtract and get-balance operations, where grants expire and spending draws from the soonest-expiring grant first. Operations can arrive out of timestamp order, and a follow-up asks how to avoid replaying the whole history from time zero on every query in production.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerImplement a Set with Readable Snapshots
Design and implement a versioned set data structure that supports membership modifications, instant snapshotting, and historical point-in-time queries efficiently.
Software Engineering FundamentalsOnsiteData StructuresDesignBinary Search - OpenAIMediumSoftware EngineerImplement a Simple Memory Allocator
This question evaluates low-level memory management and allocator design skills, including block header layout, free-list/data-structure choices, pointer arithmetic, fragmentation concepts, and analysis of time/space complexity.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerIn-Memory Key-Value Store with Crash Recovery from a Log and Concurrent Access
Implement an in-memory key-value store, make it recover from a log file after a crash, including a half-written final record, and make it correct and fast under many concurrent threads. It tests write-ahead logging, crash consistency, compaction, and lock design with group commit.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerIndexed Vector as a Linked List with Checkpoints Every k Nodes
Implement an indexed dynamic sequence of strings, in the sense of an array list, that supports inserting at a position and reading by position. Starting from a plain singly linked list, build a linked list with a checkpoint every k nodes so reads cost O(k), and keep the checkpoints correct as insertions shift positions.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerModel particle hits on a screen
This question evaluates geometric reasoning and probability theory skills, specifically transformation of random variables and derivation of CDF/PDF from angular sampling, together with practical competence in Monte Carlo simulation and interpretation of numerical and visualization artifacts; domain: Software Engineering Fundamentals.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerPlant Infection Grid Simulation: Days to Stabilize, Immune Plants, Expiring Immunity
A progressive grid simulation: infection spreads daily between adjacent plants, and you compute how many days the garden takes to stabilize, then add permanently immune plants and immunity that expires after a countdown. It tests multi-source breadth-first search, Dijkstra-style waiting times and precise day counting.
Software Engineering FundamentalsOnsite - OpenAIMediumSoftware EngineerReactive Budget Notebook With Live Formulas and Cycle Rejection
Build a small reactive calculator where named variables hold integers or formulas that reference other variables, values stay correct as inputs change, and any definition that would create a circular dependency is rejected. Tests graph modeling, cache invalidation, cycle detection, and writing tests live.
Software Engineering FundamentalsOnsitedependency-graphcycle-detectioncaching - OpenAIMediumSoftware EngineerSliding-Window Chat Analytics: Recent Counts, Live Sessions, Out-of-Order Events
A three-part coding exercise: build an in-memory chat analytics service that counts each chat's interactions in a closed 15-minute sliding window, tracks each user's live sessions from touch and close events, and stays correct when events arrive out of order. It tests bounded-memory eviction, efficient updates and queries, and exact window and ordering semantics.
Software Engineering FundamentalsOnsite - OpenAIMediumSoftware EngineerSliding-Window Forklift Telemetry: Pings, Shifts, Late Events
Build an in-memory telemetry service that counts a forklift's recent pings in a 15-minute window, tracks which forklifts are currently on an active shift, and stays correct when pings arrive late and out of order. Tests bounded-memory eviction and exact window semantics.
Software Engineering FundamentalsOnsitesliding-windowstreamingdata-structures - OpenAIMediumSoftware EngineerSpreadsheet engine with setCell/getCell, cell references, and cycle detection
Build a small spreadsheet engine with setCell and getCell, where formulas reference other cells and a write that would create a circular dependency must be detected. The exercise also asks for live unit tests, probing data modeling, dependency graphs, cache invalidation and test design.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerText Editor in Four Stages: Buffer, Undo/Redo, Trie Autocomplete, Collaborative OT
Build a text editor in four stages: a buffer with insert, delete and read, undo and redo with two stacks, trie-based autocomplete ranked by word frequency, and real-time collaborative editing with operational transformation. It tests data structure choice, reversible operations, top-k retrieval and concurrency correctness.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerToy Language Types: Render Types and Signatures, Infer Generic Return Types
Model the types of a toy programming language, with primitives, generic type variables and nested tuples, render types and function signatures as strings, then infer a call's concrete return type by binding generics consistently across arguments. It tests recursive data modeling, exact formatting and type inference with clear errors.
Software Engineering FundamentalsOnsite - OpenAIHardSoftware EngineerWildfire Grid: Days Until Quiet with Expiring Firebreaks
Simulate a wildfire spreading through a forest grid to find how many days until it stops spreading, then extend the model with fire-resistant trees and firebreaks that only hold for a limited number of days before the protected tree becomes flammable.
Software Engineering FundamentalsOnsitebfsgraphssimulation - OpenAIMediumSoftware EngineereSIM Data Wallet with Expiring Bundles and Late Usage Records
Implement a prepaid data wallet where usage draws from the soonest-expiring bundle first and records arrive out of timestamp order, then add checkpointing so balance queries do not replay the full history. Tests event-sourced thinking, heap-based priority consumption, and cache invalidation.
Software Engineering FundamentalsOnsiteheapevent-sourcingout-of-order - OracleMediumSoftware EngineerApply operations efficiently using Command pattern
This problem tests the application of the Command design pattern to encapsulate, track, and optimize a series of state mutations on a shared object.
Software Engineering FundamentalsOnsiteDesign PatternsOOPCommand Pattern - OracleMediumSoftware EngineerExplain Java String Storage and Construction Choices
Tests deep understanding of Java string memory representation, the string constant pool, immutability, and construction performance trade-offs.
Software Engineering FundamentalsOnsiteJavaJVMMemory Management - OracleMediumSoftware EngineerExplain a Team-Owned System Architecture
This question tests your ability to articulate the high-level architecture of a complex system you have worked on, focusing on data consistency, system scalability, and the rationale behind specific design choices.
Software Engineering FundamentalsOnsiteSystem DesignArchitectureReliability - OracleMediumSoftware EngineerExtend and optimize an existing CLI tool
This problem tests your ability to refactor legacy CLI code, implement modular features, and optimize performance for large-scale data processing.
Software Engineering FundamentalsOnsiteRefactoringCLIPerformance - OracleEasySoftware EngineerImplement a Key-Value Cache with Fixed TTL, Renewal and a Live-Entry Count
Implement an in-memory key-value cache whose entries expire a fixed time-to-live after their last write, with put, get, renew and a count of live entries, and write your own tests for it. It tests expiry boundary semantics, renewal rules, efficient cleanup of expired entries and test design.
Software Engineering FundamentalsOnsite - OracleMediumSoftware EngineerObject-oriented design of a fixed-capacity LRU cache with O(1) get and put
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.
Software Engineering FundamentalsOnsite - OtherMediumSoftware EngineerBatch Concurrent Logs into Five-Second Windows
Batch 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.
Software Engineering FundamentalsOnsite - OtherMediumSoftware EngineerBuild a Queue Worker with Backoff and a Dead-Letter Queue
Design queue-worker retries with exponential backoff, durable delayed delivery, attempt limits, idempotent effects, and dead-letter replay, including AI-code validation.
Software Engineering FundamentalsOnsite - OtherMediumSoftware EngineerExplain RF/analog IC interview fundamentals
This 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.
Software Engineering FundamentalsOnsite - OtherMediumSoftware EngineerTest Severity Filtering with Contract-Distinguishing Cases
Test severity filtering with independent expected results, inclusive boundaries, misleading message text, missing fields, empty records, and preserved order and duplicates.
Software Engineering FundamentalsOnsite - PerplexityHardSoftware EngineerIn-Memory File System: Strict mkdir, touch, ls, rm, rmdir and a Command Runner
A 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.
Software Engineering FundamentalsOnsite - PersistenceMediumSoftware EngineerExplain Lazy Loading and Frontend Code Splitting
This question tests your understanding of performance optimization techniques in large-scale frontend applications, specifically how to balance initial load time against runtime latency.
Software Engineering FundamentalsOnsiteFrontendPerformanceArchitecture - PersistenceMediumSoftware EngineerReason About Indexes, Kafka, and Database Locking
Tests 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.
Software Engineering FundamentalsOnsiteDatabasesPostgreSQLKafka