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 391–420 of 1189 results
- DoorDashHardSoftware EngineerDesign limited-time donation platform
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 Design limited-time donation platform states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignTechnical Screen - DoorDashHardSoftware EngineerDesign notification and project architecture
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 Design notification and project architecture states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignTechnical Screen - DoorDashHardSoftware EngineerDesign review system with voting and rewards
This system design question evaluates a candidate's ability to architect a scalable review platform with voting, counter aggregation, and rewards at high traffic volumes. It tests practical knowledge of distributed counter strategies, idempotent write handling, read/write path separation, and abuse prevention — core competencies assessed in senior software engineer interviews.
System DesignOnsite - DoorDashMediumSoftware EngineerHandling Duplicate Upstream Order Records in Dasher Pay Calculation
Explain how a Dasher pay calculation driven by upstream order records stays correct when those records contain duplicates. Tests deciding when two records describe the same fact, making processing safe against replayed records, handling conflicting and late data or corrections after payout, and preventing double payouts.
System DesignTechnical Screen - DoorDashMediumSoftware EngineerPaying Dashers Reliably When the Payment Service Is Unavailable
A system design follow-up about paying delivery drivers when the downstream payment service is unavailable. It tests reasoning about timeouts with unknown outcomes, durable records of amounts owed, retries that must never double-pay, recovery after long outages, reconciliation, and what drivers and operators see while payouts are delayed.
System DesignTechnical Screen - DoorDashMediumSoftware EngineerProcess Orders Through a DAG with Completion and Timeout Refunds
Design order DAG execution with prerequisite state, atomic completion-versus-timeout decisions, idempotent refunds, durable recovery, and accurate status queries.
System DesignOnsite - DoorDashMediumSoftware EngineerProtect SLA and Choose Storage
This question evaluates system design competencies in service reliability and storage architecture, focusing on SLA protection during upstream latency spikes and trade-offs in choosing in-memory caches (e.g., Redis), relational databases, or alternative storage for order and payment state.
System DesignTechnical Screen - DoorDashHardSoftware EngineerScale the cache to a distributed system
This question evaluates a candidate's ability to design and scale a distributed caching system, testing competencies in sharding and consistent hashing, replication and consistency models, request routing, failure detection, cache invalidation, capacity planning, and operational trade-offs for high-throughput, low-latency workloads.
System DesignTechnical Screen - DropboxMediumSoftware EngineerDesign a recursive distributed file crawler
This prompt evaluates expertise in distributed systems, asynchronous task orchestration, recursive job scheduling, data modeling for job and file metadata, and reliability concerns such as retries, idempotency, deduplication, and partial failure handling.
System DesignOnsite - DropboxMediumSoftware EngineerDesign an S3-like Object Store
This problem evaluates your ability to design a distributed, highly available, and scalable object storage system capable of handling massive volumes of unstructured data.
System DesignOnsiteDistributed SystemsStorageScalability - DropboxMediumSoftware EngineerDesign file-processing API with long-running jobs
This question evaluates a candidate's ability to design HTTP APIs and scalable backend architectures for long-running file-processing jobs, covering competencies in API design, job orchestration, distributed systems, fault tolerance, state persistence, and idempotency.
System DesignOnsite - DropboxMediumSoftware EngineerScale a file-crawling API using async jobs
This question tests the ability to design an asynchronous distributed system for crawling large file structures, focusing on job orchestration, state management, and scalability under high-latency operations.
System DesignTechnical ScreenDistributed SystemsAsynchronous ProcessingScalability - DuolingoHardSoftware EngineerDesign Animal Chess game classes
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 Design Animal Chess game classes states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignTechnical Screen - EngelhartMediumSoftware EngineerDesign a Daily Weather-Forecast Pipeline That Runs Power Models for Energy Traders
Design a pipeline that ingests a weather forecast CSV published daily at a variable time, validates and stores it, runs black-box demand, wind, solar, hydro and price models across every scenario, and serves aggregated forecasts to traders. It tests scheduling, DAG design, failure handling, dashboard delivery and scaling to thousands of scenarios.
System DesignTechnical Screen - ExpediaMediumSoftware EngineerConsolidate Three Partner APIs into a Query Service
This problem tests your ability to design a robust middleware layer that abstracts heterogeneous downstream APIs into a unified, reliable, and performant service.
System DesignOnsiteAPI AggregationMiddlewareMicroservices - ExpediaHardSoftware EngineerDesign a listing connectivity ingestion service
This question evaluates a candidate's ability to design scalable, reliable REST APIs and distributed ingestion pipelines, testing competencies in API specification, idempotency, authentication/authorization, asynchronous processing, observability, and integration with downstream validation services.
System DesignTechnical Screen - ExpediaHardSoftware EngineerDesign a natural-disaster notification system
This problem tests your ability to design a high-throughput, geo-aware notification system that must deliver time-sensitive alerts to users based on their current or planned location during natural disasters.
System DesignOnsiteGeospatialScalabilityEvent-Driven - ExpediaHardSoftware EngineerDesign an employee directory with reporting queries
This question tests the ability to design a scalable hierarchical data structure, select appropriate storage backends for recursive queries, and handle write-heavy concurrent updates to organizational charts.
System DesignOnsiteDatabase ModelingHierarchical DataAPI Design - FaireMediumSoftware EngineerDesign a product likes system for a marketplace of brands and retailers
Design the backend for product likes on a marketplace where retailers like or dislike products, list the products they liked and see like counts in search results, while brands see the likes on their own products. Tests data modeling for two access directions, counter maintenance, idempotent writes and scaling the search read path.
System DesignOnsite - FanaticsHardSoftware EngineerDesign a retail trading platform
This question evaluates a candidate's competencies in designing scalable, low-latency retail trading systems, covering system architecture, order routing and state management, market data ingestion, cash and position ledger consistency, risk controls, and compliance/observability.
System DesignOnsite - FigmaMediumSoftware EngineerDesign Comments for a Collaborative Whiteboard
Design a real-time, durable commenting system for an infinite collaborative whiteboard where comments attach to dynamic canvas objects or fixed coordinates.
System DesignTechnical ScreenReal-Time SystemsWebSocketsData Modeling - FigmaMediumSoftware EngineerDesign Permission-Aware Retrieval for Design Files
Design a permission-aware search and retrieval system for collaborative design files and assets that enforces hierarchical access control, supports hybrid search, and prevents data leakage.
System DesignOnsiteSearchAccess ControlVector Search - FigmaMediumSoftware EngineerDesign Real-Time Collaborative Comments
Prepare for a real-time collaborative comments system design prompt for shared documents or canvases. The question covers durable comment writes, WebSocket fanout, reconnect backfill, ordering, permissions, hot-document scaling, and missed-update recovery.
System DesignTechnical Screen - FigmaMediumSoftware EngineerDesign Trending Collaborative Files
This problem tests the ability to design a distributed streaming architecture that aggregates real-time user activity while maintaining strict privacy and performance requirements.
System DesignTechnical ScreenStream ProcessingScalabilityDistributed Systems - FigmaHardSoftware EngineerDesign a trending-articles platform
This question evaluates system design competence for building large-scale, near-real-time trending and feed systems, testing skills in streaming ingestion, event modeling, ranking algorithms, caching, consistency and fault-tolerance, capacity planning, and operational observability within the System Design domain.
System DesignOnsite - FigmaMediumSoftware EngineerDesign an Async Job Scheduler
This question evaluates a candidate's ability to design reliable, fault-tolerant asynchronous job scheduling systems, covering concepts such as immediate versus delayed execution, failure handling, retries, duplicate execution prevention, worker crashes, scheduler failover, and the feasibility of exactly-once semantics.
System DesignOnsite - FigmaHardSoftware EngineerDesign and operate a monolith on Kubernetes
This question evaluates a candidate's competency in designing and operating a monolithic application on Kubernetes, covering platform engineering topics such as deployment topology, networking and traffic management, CI/CD and rollout strategies, resource management and autoscaling, stateful dependencies, observability, incident response, and disaster recovery. Commonly asked in System Design interviews to assess practical application of distributed systems and SRE principles—specifically the ability to reason about operational trade-offs, reliability, and incremental migration paths—this prompt sits in the System Design domain and emphasizes practical application with architectural reasoning rather than purely conceptual understanding.
System DesignHR Screen - FivetranEasySoftware EngineerDesign a Simplified WhatsApp: Message Send and Receive, Schema, and Scaling
Design a simplified WhatsApp focused on sending and receiving messages: the online and offline delivery flow, client APIs, the database schema, and scaling. It tests connection routing, delivery guarantees and ordering, and a choice between relational and NoSQL storage justified by access patterns.
System DesignTechnical Screen - FlexportHardSoftware EngineerDesign Container Assignment with Incompatible Goods
Design a shipment-planning and container-packing service that assigns cargo items to ocean containers subject to physical dimensions, weight limits, and hazardous/incompatibility rules while supporting async workflows and plan approvals.
System DesignOnsiteDistributed SystemsOptimizationConcurrency - FlipsterEasySoftware EngineerDesign 64-bit distributed IDs and a parking lot
The question evaluates distributed-systems and scalability competencies for globally unique 64-bit ID generation (including sharding, time-ordering, fault tolerance and clock issues) as well as object-oriented design, concurrency control, API design, and data modeling for a parking lot backend.
System DesignTechnical Screen