Katkat

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 931–960 of 1208 results

  • RipplingHardSoftware Engineer
    Extend an Expense Rules Engine with Nested Boolean Conditions

    Extend an expense rules engine with validated AND/OR/NOT expression trees, typed leaf operators, explicit missing-field semantics, and explainable evaluation.

    Software Engineering FundamentalsTechnical Screen
  • RipplingEasySoftware Engineer
    Extensible Logger With Independent Handlers and Any-Keyword Search Over Stored Logs

    An object-oriented design and coding question about a logger with independent handlers that strip a configured string, truncate, uppercase or store messages, followed by a case-sensitive any-keyword search over stored logs. It tests extensible design patterns, indexing for fast search, and scaling a logger to production volume.

    Software Engineering FundamentalsTechnical Screen
  • RipplingMediumSoftware Engineer
    Implement A Prioritized Task Scheduler With Parent Dependencies

    Implement a task scheduler that manages parent-child task dependencies, applies custom multi-field tie-breaking priority rules, supports filtering, and handles dependency cycles.

    Software Engineering FundamentalsTechnical ScreenHeap / Priority QueueGraph / DAGTopological Sort
  • RipplingMediumSoftware Engineer
    Implement a RESTful Q&A service

    This question evaluates a candidate's ability to design and implement a RESTful web service, covering HTTP API design, CRUD operations, data modeling and persistence choices, input validation, pagination/sorting, and basic testing and documentation practices.

    Software Engineering FundamentalsOnsite
  • RipplingHardSoftware Engineer
    Implement a minimal local HTTP server

    This question evaluates proficiency in network programming, HTTP/1.1 protocol parsing, concurrent server design, request routing and security (including path traversal protection), observability, testing, and graceful shutdown using only the language standard library.

    Software Engineering FundamentalsOnsite
  • RipplingMediumSoftware Engineer
    Plan CI Build Job Order with Prerequisites, Urgency and Filters

    Order CI build jobs so that prerequisites come first, more urgent jobs go earlier, filtered-out jobs are skipped without breaking ordering through them, and jobs can be grouped into parallel waves. Tests Kahn's algorithm, deterministic tie-breaking, cycle reporting, and turning a detailed spec into code.

    Software Engineering FundamentalsTechnical Screentopological-sortheapgraphs
  • RipplingMediumBackend Engineer
    Process a Task List: Deduplicate, Drop Completed, Sort by Priority, and Nest Subtasks

    Senior backend coding question: process a batch of scheduler tasks by removing duplicates on description and due date, dropping completed tasks, sorting by priority, and placing each subtask directly after its parent. It tests clarifying ambiguous policies, orphan and cycle handling, O(n log n) design, and verified use of an AI coding assistant.

    Software Engineering FundamentalsOnsite
  • RipplingHardSoftware Engineer
    Propagate Task Filtering Through Ancestors

    Design an algorithm to filter a hierarchy of tasks where any task failing a predicate—or having any ancestor that fails or is missing—is excluded along with all its descendants, running in linear time and preserving original order.

    Software Engineering FundamentalsTechnical Screenrecursiongraphmemoization
  • RipplingMediumSoftware Engineer
    Rank five-card hands by type, then find best and worst completions of unknown cards

    A two-part coding question on a poker-like card game: compare two five-card hands by a fixed type priority with ties broken card by card, then find the best and worst complete hands when the last cards are unknown. Tests hand classification, ordering keys, testing discipline and search over completions.

    Software Engineering FundamentalsTechnical Screen
  • RipplingMediumSoftware Engineer
    Stagehand Wage Ledger With Accrued and Settled Pay

    Design an in-memory class that tracks hourly pay for theater stagehands across logged call times, keeps running cost totals, and settles wages up to a cutoff without ever paying the same minute twice.

    Software Engineering FundamentalsTechnical Screenoop-designpayrollidempotency
  • RipplingMediumSoftware Engineer
    Task Scheduler with Dependencies, Priorities and Filters

    Coding question that asks for a task scheduler built from a detailed specification: tasks must come after their dependencies, follow priority or importance rules, and pass configurable filters. It tests topological ordering, deterministic tie-breaking, cycle handling and turning many interacting requirements into correct, tested code.

    Software Engineering FundamentalsTechnical Screen
  • RipplingMediumSoftware Engineer
    Tutor Billing Ledger With Idempotent Invoice Cutoffs

    Implement an in-memory ledger for hourly tutors that logs sessions, reports total and outstanding amounts in O(1), and invoices work up to a cutoff without ever billing the same minute twice. Tests stateful design, exact arithmetic, and handling of partial and late-logged work.

    Software Engineering FundamentalsTechnical Screenobject-oriented-designidempotencymoney
  • RobinhoodMediumFrontend Engineer
    Build a Chainable Rectangle Manipulation API

    This problem tests your ability to design a fluent interface (method chaining) that manages an internal queue of asynchronous operations to ensure tasks execute sequentially.

    Software Engineering FundamentalsTechnical ScreenJavaScriptFluent-APIAsync
  • RobinhoodMediumSoftware Engineer
    Clarify Friendship Rules and Money-Transfer Semantics Before Choosing an Algorithm

    Clarify friendship and money-transfer requirements, separate graph reachability from accounting, and reason about a conditional implementation and invariants.

    Software Engineering FundamentalsOnsite
  • RobinhoodMediumSoftware Engineer
    Define and Calculate Employee Referral Counts

    Implement an algorithm to compute direct and total downstream referral counts for every employee in a directed graph that may contain duplicates, converging paths, and cycles.

    Software Engineering FundamentalsOnsiteGraphBFSDFS
  • RobinhoodEasySoftware Engineer
    Design an iOS Timer App with Consistent State and Asynchronous UI Updates

    Design an iOS timer around explicit state transitions, clock-based elapsed time, main-thread UI updates, callback ownership, and lifecycle behavior.

    Software Engineering FundamentalsTechnical Screen
  • RobinhoodMediumSoftware Engineer
    Explain auth, key rotation, secrets, and incident response

    This question tests your knowledge of secure microservice communication, the lifecycle management of sensitive credentials, and the operational procedures for mitigating security breaches.

    Software Engineering FundamentalsOnsiteSecurityMicroservicesAuthentication
  • RobinhoodMediumSoftware Engineer
    Give a Project Deep Dive Grounded in Personal Ownership

    Tests your ability to present a deep dive into an impactful software project you led or contributed heavily to, emphasizing architectural trade-offs, personal ownership, failure modes, and measurable outcomes.

    Software Engineering FundamentalsOnsiteProject Deep DiveSystem ArchitectureBehavioral
  • RobinhoodMediumSoftware Engineer
    Give a Technical Deep Dive into a Software Project

    Practice a project deep dive covering architecture, personal ownership, implementation decisions, validation, outcomes, and lessons learned.

    Software Engineering FundamentalsOnsite
  • RobinhoodMediumAndroid Engineer
    Jetpack Compose Auto-Scrolling List with a Start/Stop Toggle and Hex Color Switching

    Tests Jetpack Compose UI state management, coroutine lifecycle side-effects with LazyListState, and defensive hex color string parsing.

    Software Engineering FundamentalsTechnical ScreenAndroidJetpack ComposeCoroutines
  • RobinhoodMediumSoftware Engineer
    Reason About Dependency Loading with Topological Sort

    Tests graph construction, topological sorting (Kahn's algorithm or DFS), cycle detection, and deterministic tie-breaking for modular dependency resolution.

    Software Engineering FundamentalsTechnical ScreenGraphTopological SortHeap
  • RobinhoodHardData Engineer
    Write SQL to analyze CA residency history

    This question evaluates a candidate's ability to write SQL for temporal state reconstruction, including correct joins on composite keys, interpreting edit/audit logs, and reasoning about inclusive/exclusive timestamps.

    Software Engineering FundamentalsTechnical Screen
  • RobloxHardFrontend Engineer
    Build a Configurable Two-Player Tic-Tac-Toe Board in React

    Tests your ability to architect a scalable, accessible React component with dynamic state, efficient win-detection logic for large grid sizes, and robust handling of prop updates.

    Software Engineering FundamentalsTechnical ScreenReactFrontendState Management
  • RobloxMediumSoftware Engineer
    Build an Auto-Rotating Traffic Light in Vanilla JavaScript Without a Framework

    A frontend coding question asking for a traffic light that cycles through its colors automatically, built with plain HTML, CSS, and JavaScript and no framework. It tests state machine design, timer management and cleanup, efficient DOM updates, accessibility, and how to test time-based UI code.

    Software Engineering FundamentalsOnsite
  • RobloxMediumSoftware Engineer
    Implement a Rolling-Window Rate Limiter

    Implement an in-memory, rolling-window rate limiter supporting per-client limits, precise boundary expiration, and stale state cleanup.

    Software Engineering FundamentalsTechnical ScreenData StructuresQueueSystem Design
  • RobloxMediumSoftware Engineer
    Select Maximum Call Stacks Across Threads

    Design an in-memory profiler aggregator to track sampled call stacks across threads, returning the most frequent stacks globally and per-thread with deterministic tie-breaking.

    Software Engineering FundamentalsTechnical ScreenHash MapData StructuresDesign
  • RokuMediumBackend Engineer
    Explain concurrency and distributed fundamentals

    This question tests fundamental knowledge of thread-safe collections in Java and core distributed systems architectural patterns, specifically partitioning strategies.

    Software Engineering FundamentalsOnsiteJavaConcurrencyDistributed Systems
  • RunloopMediumSoftware Engineer
    Design a Minesweeper Bot That Decides Which Cell to Flag or Reveal Next

    Design a bot that plays Minesweeper and maximizes its chance of winning. The question tests how the bot turns revealed numbers into constraints, finds cells that are certainly mines or certainly safe, estimates the risk of every hidden cell when it must guess, and keeps each move fast and measurable over many games.

    Software Engineering FundamentalsTechnical Screen
  • SIG (Susquehanna)EasySoftware Engineer
    Design a Cash Register with Inventory and Profit Tracking

    Design an object-oriented cash register that manages multi-lot product inventory using FIFO accounting, executes atomic multi-item sales, and accurately tracks realized gross profit.

    Software Engineering FundamentalsOnsiteObject-Oriented DesignData StructuresQueue
  • SIG (Susquehanna)MediumSoftware Engineer
    Find and Fix C++ Ownership Bugs: Double Free, Shallow Copy, and Object Slicing

    Tests a candidate's ability to identify and fix critical C++ resource management bugs, specifically shallow copies leading to double-free errors and object slicing caused by improper pass-by-value semantics with polymorphic types.

    Software Engineering FundamentalsOnsiteC++Memory ManagementRAII