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 481–510 of 625 results
- RipplingMediumSoftware EngineerTutor 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 EngineerBuild 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 - RobinhoodEasySoftware EngineerDesign 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 - RobinhoodMediumAndroid EngineerJetpack 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 EngineerReason 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 EngineerWrite 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 EngineerBuild 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 EngineerImplement 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 EngineerSelect 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 - RunloopMediumSoftware EngineerDesign 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 - SalesforceMediumSoftware EngineerChoose DynamoDB vs MySQL for a backend
This question tests your ability to evaluate database technologies based on specific application requirements, trade-offs in consistency models, and operational scalability.
Software Engineering FundamentalsTechnical ScreenSystem DesignDatabaseNoSQL - Scale AIMediumSoftware EngineerDesign and Simulate a Four-Player Card Game
Work through a three-stage object-oriented card game covering dealing, follow-suit trick state, configurable scoring, and deterministic tests.
Software Engineering FundamentalsTechnical Screen - Scale AIMediumSoftware EngineerImplement Hook and Modify UI Interactions
This question evaluates a candidate's ability to implement reusable React hooks, manage asynchronous data fetching with loading/error/refetch semantics, transform API responses, and wire component state for modal, collapsible list, and button-driven UI interactions.
Software Engineering FundamentalsTechnical Screen - Schneider ElectricMediumSoftware EngineerCompare JavaScript == and === operators
This question evaluates understanding of JavaScript equality semantics and type coercion, assessing a candidate's competency in language-specific comparison behavior and recognition of subtle runtime differences.
Software Engineering FundamentalsTechnical Screen - Shield AiEasySoftware EngineerExplain How You Would Test a System
This question evaluates your ability to design a comprehensive testing strategy for a distributed system, focusing on reliability, observability, and failure modes.
Software Engineering FundamentalsTechnical ScreenTesting StrategySystem DesignReliability - ShopifyMediumSoftware EngineerBank Account Simulation Class With Self-Written Tests at 90% Coverage
A pair-programming exercise: implement a class that simulates bank account operations, write your own tests reaching at least 90% coverage, and then extend the working code with a new requirement. It tests invariant-driven validation, all-or-nothing transfers, meaningful test design, and clean incremental changes.
Software Engineering FundamentalsTechnical Screen - ShopifyMediumMachine Learning EngineerBuild an Automatic Refund Decision System in a Pair-Programming Session
A pair-programming exercise to build an automatic refund system for an online store, combining light system design with working code across several incremental steps. It tests domain modeling, pluggable eligibility rules, preventing over-refunds and duplicate payouts on retries, and explaining design choices as you code.
Software Engineering FundamentalsTechnical Screen - ShopifyEasySoftware EngineerDesign a Robot Operations CLI
Implement a modular robot controller for a 2D warehouse grid that processes command sequences, enforces boundary and obstacle rules, and returns a detailed execution report.
Software Engineering FundamentalsTechnical ScreenSoftware EngineeringCLI DesignSimulation - ShopifyMediumSoftware EngineerHarden a URL-Caching HTTP Service for Production
This problem tests the ability to scale and harden a simple in-memory cache service, focusing on operational stability, concurrency control, and safe deployment patterns.
Software Engineering FundamentalsTechnical ScreenSystem DesignCachingConcurrency - ShopifyEasySoftware EngineerHow would you improve AI-generated code?
This question evaluates software engineering competencies such as code review, correctness and edge-case reasoning, API design and readability, test strategy, maintainability and extensibility, and performance and failure-mode analysis within the Software Engineering Fundamentals domain.
Software Engineering FundamentalsTechnical Screen - ShopifyMediumSoftware EngineerParse a CSV and Generate a Gift Exchange
This problem tests string parsing, data validation, and algorithm design by requiring the implementation of a secret-santa style matching system from unstructured CSV data.
Software Engineering FundamentalsTechnical ScreenParsingAlgorithmsRandomization - ShopifyMediumData EngineerUse AI Responsibly During SQL Pair Programming
Practice an AI-enabled SQL pair-programming workflow that keeps your reasoning visible. Cover requirement clarification, safe tool boundaries, incremental query design, independent edge-case testing, collaboration, and accountable debugging.
Software Engineering FundamentalsTechnical Screen - SierraMediumSoftware EngineerConversation Agent History: Paginated Fetching, Then Token-Limit Compaction
Build the message-history layer of a conversation agent: fetch the conversation page by page into one ordered list, then compact it whenever the total token count exceeds a limit by dropping the oldest messages. It tests pagination termination and ordering, running totals, and cheap removal from the front.
Software Engineering FundamentalsTechnical Screen - SierraMediumSoftware EngineerFetch Every Page from a Data API, Then Compact Records to a Token Budget
A two-part coding screen: page through a data API until it returns no more records, then, if the fetched records exceed 20,000 tokens, compact them to at most 10,000 tokens by keeping the longest contiguous run that fits. It tests loop termination, failure handling, boundary rules and an efficient way to trim data to a budget.
Software Engineering FundamentalsTechnical Screen - SierraMediumSoftware EngineerLoad a Support Chat Transcript by Pages, Then Trim to a Token Budget
Build the transcript-loading layer for a customer support chat agent: assemble a full conversation from a paginated backend into one ordered list, then trim it down whenever it grows past a token budget by dropping the oldest turns first.
Software Engineering FundamentalsTechnical Screenpaginationdata-structuresapi-design - SierraMediumSoftware EngineerPaginate an Audit-Log API, Then Compact Entries to a Byte Budget
Pull every entry out of a cursor-paginated audit-log API, then, if the entries together exceed a byte budget, keep the longest contiguous run of them (in original order) that fits. Tests correct pagination loop termination and an efficient two-pointer scan instead of re-measuring every candidate run from scratch.
Software Engineering FundamentalsTechnical Screensliding-windowpaginationapi-design - SigmacomputingMediumSoftware EngineerBuild a pivot table class over shirt sales records with running and grand totals
Implement a class that stores shirt sales records and builds pivot tables summing shirts sold by any row field and column field, then extend it with running totals and grand totals along both axes. It tests object-oriented structure, aggregation with dictionaries, deterministic layout, and consistency between cells and totals.
Software Engineering FundamentalsTechnical Screen - SnapchatMediumSoftware EngineerDesign and Implement a Thread-Safe LRU Cache
Design an `O(1)` LRU cache and extend it with clear thread-safety semantics. The solution covers hash-map and doubly linked-list invariants, boundary cases, linearization points, single-lock correctness, sharding trade-offs, eviction callbacks, and concurrent testing.
Software Engineering FundamentalsTechnical Screen - SnapchatMediumSoftware EngineerFind Duplicate Files with a Hand-Written Directory Traversal
This problem tests iterative directory traversal techniques, efficient file hashing strategies to handle large data, and the ability to manage edge cases like file system inconsistencies or symbolic links.
Software Engineering FundamentalsTechnical ScreenFile SystemHashingIteration - SnorkelMediumSoftware EngineerDesign SnapshotMap with Sparse Histories and Constant-Time Snapshots
Design an in-memory key-value store supporting point-in-time snapshots, sparse version histories, binary-search historical reads, tombstones, and write coalescing.
Software Engineering FundamentalsTechnical Screendata-structuresbinary-searchsystem-design