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 31–60 of 1026 results

  • AirbnbMediumSoftware Engineer
    Implement a reservation widget with pricing

    This question evaluates skills in frontend component state design, data modeling, pricing computation, validation logic, error handling, and API integration for a lodging reservation widget.

    Software Engineering FundamentalsOnsite
  • AirbnbHardSoftware Engineer
    Implement retry wrapper and interdependent validators

    This question evaluates a candidate's competence in building robust asynchronous utilities and form validation logic, covering retry/backoff strategies, error classification, per-attempt and overall timeouts, cancellation via AbortSignal, observable retry hooks, cross-field validators, state management, and accessibility considerations in JavaScript/TypeScript web applications. Category: Other / Miscellaneous; domain: web development and systems reliability in JavaScript/TypeScript; it is commonly asked because it probes both conceptual understanding of retry semantics, cancellation and validation constraints and practical implementation skills related to API ergonomics, error propagation, composable validators, and performance trade-offs.

    Software Engineering FundamentalsOnsite
  • AirbnbMediumSoftware Engineer
    In-Memory Banking System with Immediate, Offline and Deletable Transfers

    Implement an in-memory banking system across progressive levels: create users, move money immediately, accept offline transfers that take effect later, and delete transfers that have not completed. It tests state modeling, validation before mutation, conservation of money across every sequence of operations, and extensible class design.

    Software Engineering FundamentalsOnline Assessment
  • AirbnbHardSoftware Engineer
    In-Memory Banking System: Transfers, Top Spenders, Scheduled Payments, Account Merges

    A four-level in-memory banking system: create accounts, deposit and transfer, rank top spenders by outgoing value, run scheduled payments that must execute in timestamp order before every later operation, and merge accounts while keeping both balances and histories. It tests incremental class design and time-ordered state.

    Software Engineering FundamentalsOnline Assessment
  • AirbnbMediumSoftware Engineer
    In-Memory Workspace Credit System With Transfers, Top-K and Scheduled Transfers

    Implement an in-memory workspace credit system in levels: create workspaces, add credit and transfer it instantly, return the top K workspaces, then schedule and cancel future transfers that must take effect before each later operation. It tests clean state management, deterministic ordering, time-based processing and extensible code under a tight time limit.

    Software Engineering FundamentalsOnline Assessment
  • AirbnbMediumSoftware Engineer
    Task Management System: Priorities, Name Search, User Quotas and Expiring Assignments

    A four-level coding assessment that builds an in-memory task management system: adding, updating and retrieving tasks, name search and priority listing, users with quotas and expiring time-based assignments, then task completion and overdue reporting. It tests extensible design, deterministic ordering and time handling.

    Software Engineering FundamentalsOnline Assessment
  • AirbnbMediumSoftware Engineer
    Timestamped Parcel Attribute Store With Compare-and-Set, Prefix Listing and TTL

    Implement a timestamped in-memory store of parcel attributes with overwriting set, get and a compare-and-set update, then list attributes as name(value) sorted by name with an optional prefix filter, and finally add per-attribute TTLs that hide expired values. It tests precise operation semantics, expiry rules and incremental class design.

    Software Engineering FundamentalsOnline Assessment
  • AirbnbMediumSoftware Engineer
    Workspace Credit Ledger: Transfers, Top-K, Scheduled Transfers, Merges, Balance History

    A four-level coding assessment that builds an in-memory credit ledger for workspaces, much like bank accounts. Levels add deposits, instant transfers with a top-k ranking, scheduled transfers with cancellation, and account merges with historical balance lookups, testing stateful class design, time handling and edge cases.

    Software Engineering FundamentalsOnline Assessment
  • AirtableMediumSoftware Engineer
    Design Extensible Undo and Redo for a Spreadsheet

    This problem tests your ability to design a robust Command pattern architecture capable of handling complex state transitions, such as data deletions and dependency-aware recalculations, in a spreadsheet environment.

    Software Engineering FundamentalsTechnical ScreenSystem DesignDesign PatternsCommand Pattern
  • AirtableMediumSoftware Engineer
    Explain how to make robust HTTP API calls

    This problem tests your understanding of building resilient client-side code that interacts with external HTTP services, focusing on failure handling and operational stability.

    Software Engineering FundamentalsOnsiteAPI DesignReliabilityHTTP
  • AirtableMediumSoftware Engineer
    Implement a Connection Pool

    This question evaluates a candidate's competence in resource management, object ownership and lifecycle handling, and safe reuse of pooled database connections.

    Software Engineering FundamentalsTechnical Screen
  • AirtableEasySoftware Engineer
    Optimize a dispatcher’s scheduling data structures

    This question evaluates understanding of algorithmic analysis and data-structure design for memory-constrained scheduling, including efficient lookup and update operations for tables and machines and the selection of placement and migration policies, categorized under Software Engineering Fundamentals.

    Software Engineering FundamentalsOnsite
  • Akuna CapitalHardSoftware Engineer
    Choose Between Python, Java, and C++ for a Service

    This question tests your understanding of language-level performance characteristics, memory management, and development velocity trade-offs in a distributed systems context.

    Software Engineering FundamentalsHR ScreenSystem DesignPerformanceConcurrency
  • Akuna CapitalHardSoftware Engineer
    Design a Tiered Expiring Item Store

    Design a multi-tiered in-memory item store that enforces tier capacity limits, dynamic expiration, and deterministic retrieval using dual heaps and lazy cleanup.

    Software Engineering FundamentalsTechnical ScreenData StructuresHeapsCache Design
  • Akuna CapitalMediumSoftware Engineer
    Evaluate a Hexadecimal Bitwise AND

    Tests understanding of bitwise operations, hexadecimal-to-binary mapping, and manual nibble-level alignment without relying on arbitrary-precision integer conversions.

    Software Engineering FundamentalsTechnical ScreenBit ManipulationStringsSystems Programming
  • Akuna CapitalMediumSoftware Engineer
    Find the Maximum Value in a Binary Tree Recursively

    Implement a recursive binary tree traversal to find the maximum integer value in a tree, with careful handling of pointer safety, sentinel values, and edge cases like all-negative nodes.

    Software Engineering FundamentalsTechnical Screenbinary-treerecursioncpp
  • Akuna CapitalMediumSoftware Engineer
    Implement React check-in/out month dropdowns

    This question evaluates front-end React skills including controlled components, state synchronization, interdependent input validation, keyboard accessibility/ARIA, and unit testing for UI behavior, and it sits in the Front-end/UI development domain (Other/Miscellaneous) with an emphasis on practical implementation rather than purely conceptual reasoning. It is commonly asked because interviewers use it to verify an engineer's ability to enforce input constraints, integrate dropdowns with existing form state and submission flows, maintain accessibility with native controls, and provide test coverage for validation and disabled-option behavior.

    Software Engineering FundamentalsHR Screen
  • AmazonMediumSoftware Engineer
    Build a responsive grid of fixed boxes

    This problem tests your proficiency in creating responsive UI layouts using CSS Flexbox or Grid and your ability to optimize rendering performance for large datasets using virtualization or efficient list rendering.

    Software Engineering FundamentalsTechnical ScreenReactCSS GridFrontend
  • AmazonMediumSoftware Engineer
    Control Robot Charging with Repeated Polling and Exclusive Station Assignments

    Design a repeatedly invoked robot-charging controller with strict battery thresholds, exclusive station assignments, waiting robots, and safe command retries.

    Software Engineering FundamentalsTechnical Screen
  • AmazonHardSoftware Engineer
    Debug Failing Tests in a Django Movie Search and Filter API

    Debug an existing Django movie catalog API whose automated tests fail, covering URL routing, query parameter handling, queryset filters on genre, director, writer, rating and year, result ordering with tie-breakers, and HTTP 500 errors. It tests a systematic, layer-by-layer debugging process under a time limit.

    Software Engineering FundamentalsOnline Assessment
  • AmazonMediumSoftware Engineer
    Debug Watch List Movie Operations

    This question evaluates backend debugging, RESTful API semantics, data validation and integrity, persistence behavior, and correct HTTP status and error-response handling for watch-list movie operations.

    Software Engineering FundamentalsOnline Assessment
  • AmazonHardSoftware Engineer
    Debug a Layered Book Search Service Against Five Search Rules

    Given a layered bookstore search backend with planted bugs, write failing tests for substring matching, scope selection, case-insensitivity, multi-key ordering and visibility, then locate and fix every defect without changing the API contract. Tests test-first debugging across layers and query design.

    Software Engineering FundamentalsOnline Assessmentdebuggingtestingsearch
  • AmazonMediumSoftware Engineer
    Debug a Node.js car-rental backend: leaked cars, missing new cars, lost edits

    An unfamiliar Node.js car-rental backend with API documentation and failing preset tests has three independent bugs: the My Cars list shows other users' cars, newly added cars never appear, and edits vanish after a refresh. The question tests systematic debugging, ownership checks across endpoints, and confirming that writes really persist.

    Software Engineering FundamentalsOnline Assessment
  • AmazonMediumSoftware Engineer
    Debug a Test-Driven C++ Project

    Tests your ability to design and implement a sliding-window rate limiter with deduplication and state cleanup, reflecting common logic and edge-case errors encountered when debugging test-driven C++ systems.

    Software Engineering FundamentalsOnline AssessmentSliding WindowDesignHash Table
  • AmazonHardSoftware Engineer
    Debug an Issue-Creation API Failure

    This problem tests your systematic troubleshooting methodology for a distributed system, focusing on narrowing down the root cause of an API request failure.

    Software Engineering FundamentalsTechnical ScreenDebuggingSystem ArchitectureDistributed Systems
  • AmazonMediumSoftware Engineer
    Describe Linux and SQL experience

    Prepare an engineering interview answer on Linux commands and SQL experience. Covers shell workflows, log debugging, file and process commands, SQL joins, aggregations, CTEs, window functions, and translating business questions into queries.

    Software Engineering FundamentalsTechnical Screen
  • AmazonMediumSoftware Engineer
    Design a Linked Queue with Deletion Follow-Ups

    Implement a linked-list-based FIFO queue supporting constant-time core operations, extended with value-based deletion methods that correctly maintain queue integrity and pointer boundaries.

    Software Engineering FundamentalsOnsitelinked-listqueuedata-structures
  • AmazonHardSoftware Engineer
    Design a Recursive File-Search API

    Implement a secure, recursive file-search API that validates search boundaries, handles symlink cycles, catches permission errors gracefully, and returns deterministically sorted matching paths.

    Software Engineering FundamentalsHR ScreenFile SystemsSecurityRecursion
  • AmazonMediumSoftware Engineer
    Design a Structure That Returns the Max of the Last k Inserted Numbers

    A data structure design question: support inserting numbers into a stream and returning the maximum of the most recent k values. It covers a basic version with complexity analysis, reducing memory to O(k), comparing arrays, hash maps, linked lists and heaps, and building the optimal solution with a monotonic deque.

    Software Engineering FundamentalsOnsite
  • AmazonMediumSoftware Engineer
    Design a TTL-Aware LRU Cache Without Full Expiration Scans

    Design a TTL-aware LRU cache with synchronized access, capacity eviction, and expiration heaps or timing wheels instead of full-table scans.

    Software Engineering FundamentalsOnline Assessment