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 781–810 of 2336 results

  • DoorDashMediumSoftware Engineer
    Design a Refund Workflow as a Directed Acyclic Graph

    Design a resilient, stateful workflow orchestration engine to process complex order refunds as a Directed Acyclic Graph (DAG), ensuring idempotency, crash recovery, and financial consistency.

    System DesignOnsitesystem-designdistributed-systemsworkflow-engine
  • DoorDashMediumSoftware Engineer
    Design a Review and Rating System for Food Delivery Menu Items

    Design a review and rating system for a food-delivery platform, where customers review the individual menu items they received and every menu shows each item's rating. It tests data modeling, purchase verification, incremental rating aggregation, caching for read-heavy menus, moderation, and handling bursts on popular items.

    System DesignOnsite
  • DoorDashMediumSoftware Engineer
    Design a Sliding-Hour Top-Restaurants Service

    This problem tests the ability to design a high-throughput, real-time analytics system that maintains a top-k leaderboard over a sliding time window.

    System DesignOnsiteStreamingAnalyticsDistributed Systems
  • DoorDashMediumSoftware Engineer
    Design a Store Recommendation System and Explain ML Trade-offs

    Design a personalized store recommendation feed for an on-demand delivery platform and evaluate key machine learning modeling trade-offs.

    ML System DesignOnsiteRecommendation SystemsMulti-Task LearningRanking
  • DoorDashHardSoftware Engineer
    Design a distributed cron job scheduler

    Design a distributed cron job scheduler evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnsite
  • DoorDashMediumSoftware Engineer
    Design a donations service with 3-day rolling totals

    This question evaluates a candidate's competency in designing scalable, low-latency streaming data systems, covering event-time windowing, rolling-window aggregation, idempotency for duplicate events, late/out-of-order handling, and auditability.

    System DesignOnsite
  • DoorDashMediumSoftware Engineer
    Design a hierarchical path registry

    Design a hierarchical path registry evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Coding & AlgorithmsOnsite
  • DoorDashHardSoftware Engineer
    Design an Online Course Marketplace Review System Schema

    Design the review and rating feature of an online course marketplace where only learners who completed a course may rate it, with the discussion centered on table design, keys, constraints, and the indexes each read path needs.

    System DesignOnsitesystem-designdatabase-designschema
  • DoorDashHardSoftware Engineer
    Design an async donation payment platform

    This question evaluates a candidate's ability to design scalable, reliable payment systems and asynchronous processing pipelines, covering competencies in distributed systems, idempotency, data modeling, security/PCI compliance, retry and dead-letter strategies, and observability.

    System DesignOnsite
  • DoorDashHardSoftware Engineer
    Design consistent hashing for sharding

    This question evaluates understanding of consistent hashing, replica placement, dynamic membership, weighted load distribution, rebalancing impact, and related distributed-systems competencies for routing and sharding.

    System DesignOnsite
  • DoorDashMediumSoftware Engineer
    Design dasher-to-order assignment algorithm

    This question evaluates a candidate's skills in real-time algorithm design and systems thinking for dynamic matching and optimization, including scalability, time/space complexity analysis, and handling partial or delayed information.

    Coding & AlgorithmsOnsite
  • DoorDashMediumSoftware Engineer
    Design dynamic connectivity with alive nodes

    This question evaluates understanding of dynamic graph data structures, connectivity algorithms, state management for node activation/deactivation, complexity analysis, and concurrent operation considerations.

    Coding & AlgorithmsOnsite
  • DoorDashHardSoftware Engineer
    Design 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 Engineer
    Discuss project experience and teamwork

    Discuss project experience and teamwork evaluates behavioral evidence, ownership, communication, trade-offs, and measurable outcomes in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Behavioral & LeadershipOnsite
  • DoorDashMediumSoftware Engineer
    Explain AI Tool Use, Model Selection, and Engineering Validation

    Explain practical AI use across coding and summaries, with honest contribution measures, task-specific model choices, validation, and cost awareness.

    Behavioral & LeadershipOnsite
  • DoorDashMediumSoftware Engineer
    Explain Performance, OKRs, Failure, and Project Learning

    This question tests your ability to navigate complex project lifecycles by evaluating your ownership of OKRs, your response to significant failure, and your capacity for introspective learning.

    Behavioral & LeadershipOnsiteLeadershipOKRsBehavioral
  • DoorDashMediumSoftware Engineer
    Explain Project Impact from Prototype to Shared Ownership

    Describe a proud project's impact, evidence of time saved, transition from prototype to supported use, and cross-functional ownership.

    Behavioral & LeadershipOnsite
  • DoorDashHardSoftware Engineer
    Explain Why You Are Changing Roles

    This question tests your ability to articulate a clear career trajectory, demonstrating that your move is driven by professional growth rather than dissatisfaction with your current situation.

    Behavioral & LeadershipOnsiteCareer StrategyCommunicationProfessionalism
  • DoorDashMediumSoftware Engineer
    Explain a Project's Most Complex Technical Component in Depth

    Explain a project's most complex technical component through its invariants, design alternatives, implementation details, and failure-case validation.

    Software Engineering FundamentalsOnsite
  • DoorDashHardSoftware Engineer
    Explain an AI-Assisted Project

    Tests your ability to articulate the engineering realities of an AI- or LLM-driven project, focusing on rigorous evaluation, production guardrails, failure modes, and personal ownership rather than high-level buzzwords.

    Behavioral & LeadershipOnsiteBehavioralAI & MLSystem Reliability
  • DoorDashHardSoftware Engineer
    Explain conflict resolution and growth

    This question evaluates collaboration, ownership, technical leadership, conflict resolution, incident management, decision-making, and the ability to learn from and prevent mistakes.

    Behavioral & LeadershipOnsite
  • DoorDashMediumSoftware Engineer
    Explain handling conflicts and learning from mistakes

    This interview question evaluates behavioral evidence, ownership, communication, trade-offs, and measurable outcomes in a realistic interview setting. A strong answer for Explain handling conflicts and learning from mistakes states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Behavioral & LeadershipOnsite
  • DoorDashMediumSoftware Engineer
    Find Each Cell's Nearest Source

    This question evaluates understanding of shortest-path computation and distance labeling in grid-based graphs, measuring competency in algorithmic problem solving and efficient traversal strategies.

    Coding & AlgorithmsOnsite
  • DoorDashHardSoftware Engineer
    Find longest common ordered restaurant list

    This question evaluates a candidate's understanding of sequence algorithms, dynamic programming, and string/list manipulation by requiring computation of the longest common subsequence between two ordered lists of restaurant IDs.

    Coding & AlgorithmsOnsite
  • DoorDashMediumSoftware Engineer
    Find the Minimum Delivery Processing Speed

    This problem tests binary search on the answer space to find the minimum throughput capacity required to process a set of delivery orders within a fixed deadline.

    Coding & AlgorithmsOnsiteBinary SearchOptimizationMath
  • DoorDashMediumSoftware Engineer
    Find the Minimum Parenthesis Deletions and Their Positions

    This problem tests string manipulation, stack-based parsing, and greedy logic to identify the indices of parentheses that must be removed to transform a string into a valid sequence.

    Coding & AlgorithmsOnsiteStringsStackGreedy
  • DoorDashMediumSoftware Engineer
    Fix a Round-Robin Load Balancer, Then Implement Consistent Hashing

    A debugging-style coding round on request routing: make a round-robin load balancer behave correctly as servers join and leave, then implement consistent hashing so requests with the same key stay on the same server. It tests careful state handling, concurrency, edge cases such as an empty pool, and reasoning about how many keys move when membership changes.

    Software Engineering FundamentalsOnsite
  • DoorDashMediumSoftware Engineer
    Generate the next lexicographic array arrangement

    This interview question evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer for Generate the next lexicographic array arrangement states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Coding & AlgorithmsOnsite
  • DoorDashEasySoftware Engineer
    Handle payment-service outages

    This question evaluates a candidate's competence in designing fault-tolerant payment workflows and operational resilience, covering concepts such as idempotency, retry strategies, queuing and dead-letter handling, circuit breaking, reconciliation, and monitoring.

    Software Engineering FundamentalsOnsite
  • DoorDashEasySoftware Engineer
    How do you discuss mistakes and trade-offs?

    This question evaluates competency in accountability, leadership, incident management, and product/operational decision-making within the Behavioral & Leadership domain for software engineers.

    Behavioral & LeadershipOnsite