Katkat

practice a little every day, paws crossed ♡

Software Engineer 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 4651–4680 of 5874 results

  • RipplingHardSoftware Engineer
    Explain Your Reason for Changing Roles and Your Interest in the Team

    Explain job-change motivation and role interest with specific goals, evidence-backed fit, professional framing, and honest open questions.

    Behavioral & LeadershipHR Screen
  • 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
  • RipplingMediumSoftware Engineer
    Extend rules for trip-level aggregates and outputs

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Extend rules for trip-level aggregates and outputs states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical 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
    Find bounding boxes of connected houses

    This problem tests your ability to perform graph traversal (BFS/DFS) on a 2D grid to identify distinct connected components and compute their spatial extent.

    Coding & AlgorithmsOnline AssessmentGraphsDFSBFS
  • RipplingMediumSoftware Engineer
    Find median of two sorted arrays

    This question evaluates algorithmic problem-solving skills related to sorted arrays and median computation, testing competency in handling numeric order properties and complexity analysis within the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • RipplingMediumSoftware Engineer
    Find minimum of unknown convex function

    This question evaluates a candidate's understanding of convex optimization and zeroth-order (query-based) algorithm design, including reasoning about sample complexity, interval-reduction strategies, and robustness to noisy function evaluations.

    Machine LearningTechnical Screen
  • RipplingMediumSoftware Engineer
    Find the Best and Worst Completion of a Partial Numeric Hand

    Find the strongest and weakest five-card completions of a partial numeric hand under custom category and right-to-left tie-break rules while sharing one extensible comparison engine.

    Coding & AlgorithmsTechnical Screen
  • RipplingMediumSoftware Engineer
    How would you present a project deep dive?

    This question evaluates communication, technical ownership, architectural reasoning, decision-making, and impact measurement competencies, and is categorized as Behavioral & Leadership with relevance to system design and product execution; it tests both conceptual understanding and practical application.

    Behavioral & LeadershipOnsite
  • RipplingEasySoftware Engineer
    How would you scale rule evaluation?

    This question tests your ability to design a high-throughput, rule-based processing engine that balances performance, scalability, and maintainability under high load.

    System DesignTechnical ScreenRule EngineScalabilityCaching
  • 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 Article Vote Tracking

    Design an in-memory article vote tracking system that manages user upvotes/downvotes, detects vote flips to maintain an LRU-style flip history per user, and provides top-k article rankings by net score.

    Coding & AlgorithmsTechnical Screenhash-tableheapordered-map
  • RipplingMediumSoftware Engineer
    Implement Courier Delivery Cost Tracking

    Design an in-memory billing system that tracks courier pay rates over time and calculates prorated delivery costs across half-open time intervals.

    Coding & AlgorithmsTechnical ScreenDesignBinary SearchIntervals
  • RipplingMediumSoftware Engineer
    Implement Food Delivery Billing

    This problem tests your ability to implement complex billing logic involving conditional fee structures, time-based surcharges, and data aggregation.

    Coding & AlgorithmsOnsiteAlgorithmsDatetimeData Processing
  • 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
    Implement an In-Memory File System

    Design and implement an in-memory file system supporting directory creation, file appending, reading, and lexicographically sorted path listings.

    Coding & AlgorithmsOnsitetrietreedesign
  • RipplingEasySoftware Engineer
    Implement an article voting tracker

    This question evaluates a candidate's ability to design efficient stateful data structures and algorithms for tracking user votes, including correct handling of idempotent repeated votes, vote changes, deduplication, and retrieval of the most recent events.

    Coding & AlgorithmsTechnical Screen
  • 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
  • RipplingHardSoftware Engineer
    Present a Project and Reflect

    This question assesses the candidate's ability to articulate the end-to-end lifecycle of a complex project, focusing on technical decision-making, team collaboration, and the ability to critically analyze one's own performance.

    Behavioral & LeadershipOnsiteBehavioralLeadershipCommunication
  • RipplingMediumSoftware Engineer
    Prevent Duplicate Payments Under High Load

    Design a highly reliable payment processing system that guarantees exactly-once execution and prevents duplicate charges during high-concurrency spikes and downstream failure scenarios.

    System DesignOnsiteDistributed SystemsPaymentsConcurrency
  • 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
  • RipplingHardSoftware Engineer
    Solve listed algorithm problems

    This problem tests your ability to model exchange rates as a graph and use path-finding algorithms to detect profitable arbitrage opportunities.

    Coding & AlgorithmsHR ScreenGraphsShortest PathBellman-Ford
  • RipplingMediumSoftware Engineer
    Staff Engineer Hiring-Manager Round: Platform Ownership, AI Adoption, and Cross-Team Influence

    This question assesses the candidate's ability to drive complex, cross-functional engineering initiatives and their strategic approach to integrating emerging technologies like AI into legacy or established platforms.

    Behavioral & LeadershipOnsiteLeadershipSystem ArchitectureStakeholder Management
  • 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
  • RipplingHardSoftware Engineer
    Studio Session Billing with Rate Schedules and Exact Rounding

    Build a command-driven billing ledger where technicians' hourly rates change over time, bookings are deduplicated, and fractional cents are kept exactly until an invoice is printed with a configurable rounding mode. Tests rate lookup by time, idempotency rules, and integer-exact money handling.

    Coding & AlgorithmsTechnical Screenhash-mapbinary-searchmoney-arithmetic
  • 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
    Track article votes and last three flips

    This question evaluates a developer's ability to design in-memory data structures that support constant-time vote updates, score aggregation, and recent flip-event tracking while handling vote-change semantics.

    Coding & AlgorithmsOnsite
  • 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