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 1111–1140 of 1189 results

  • Two SigmaMediumSoftware Engineer
    Design and Scale Quantitative Optimization Workflows

    Design a scalable, deterministic quantitative optimization and backtesting platform capable of executing 30,000 portfolio optimization runs with strict point-in-time data correctness and full data lineage.

    System DesignTechnical ScreenDistributed SystemsQuantitative FinanceBatch Processing
  • UberHardSoftware Engineer
    Compare Paxos and Raft

    This question evaluates understanding of distributed consensus protocols, replicated logs, linearizability, fault tolerance, and operational concerns such as leader election, quorum semantics, log replication, membership changes, and failure recovery.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Design A URL Shortener

    This question tests your ability to design a high-scale, distributed URL shortening service that handles billions of requests while ensuring low latency and data durability.

    System DesignOnsiteDistributed SystemsCachingScalability
  • UberHardSoftware Engineer
    Design Distributed Storage for Large Structured Data

    Design distributed storage with versioned metadata, block replicas, layered caches, failure repair, locality-aware jobs, and resource-aware load balancing.

    System DesignOnsite
  • UberHardSoftware Engineer
    Design Food Delivery Cart

    This question tests the ability to design a distributed, highly concurrent shopping cart service for a food delivery platform, focusing on transactional integrity, race conditions, and eventual consistency.

    System DesignOnsiteConcurrencyDistributed SystemsCaching
  • UberMediumSoftware Engineer
    Design MapReduce for schedule aggregation

    Design MapReduce for schedule aggregation 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
  • UberHardSoftware Engineer
    Design MapReduce for schedules

    This question evaluates proficiency in scalable stream and batch data processing, windowed aggregation, event-time semantics, deduplication, skew mitigation, and distributed computation using MapReduce/Spark paradigms; it falls under System Design and Big Data/stream-processing and is commonly asked to assess designing correct, high-throughput windowed aggregations and handling late or duplicated events at scale. The level of abstraction is practical application with architectural and operational considerations rather than low-level coding, and this English summary frames the competency and interview focus for search engines.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Design Product Page View Tracking

    This question evaluates a candidate's ability to design scalable, reliable event-collection and analytics systems, covering client- and server-side instrumentation, event schemas/APIs, counting total versus unique views, handling high write volumes for popular products, storage choices for raw events and aggregated counters, and operational concerns such as bot filtering, deduplication, privacy, fraud prevention, freshness, reliability, and monitoring. It is commonly asked in the System Design domain to assess architectural thinking and operational trade-offs, testing both conceptual understanding of distributed systems and practical application of scalable data pipelines, storage, and observability.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Design Stock Price Alerts

    This question evaluates a candidate's ability to design scalable, low-latency alerting and notification systems, covering system architecture, APIs, data modeling, event-driven alert evaluation, deduplication, and multi-channel delivery; it is in the System Design category and assesses practical application skills.

    System DesignTechnical Screen
  • UberHardSoftware Engineer
    Design Uber Eats-style search function

    An Uber Software Engineer system design onsite question: design the search function for an Uber Eats-style food delivery platform, covering APIs, data ingestion, geo-aware indexing and retrieval, multi-stage ranking, real-time availability updates, scaling, caching, fault tolerance, monitoring, and freshness-vs-latency trade-offs. It tests the ability to build a low-latency, location-aware, highly available search system with strong observability.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Design a Distributed Logging System

    This problem evaluates the ability to design a high-throughput, fault-tolerant logging infrastructure capable of ingesting and storing massive volumes of telemetry data from diverse distributed services.

    System DesignOnsiteDistributed SystemsScalabilityData Pipeline
  • UberMediumSoftware Engineer
    Design a Driver Leaderboard Based on Reviews

    This problem tests the ability to design a scalable, low-latency leaderboard system that handles high-frequency write throughput from reviews and supports read-heavy leaderboard queries.

    System DesignOnsiteScalabilityCachingData Modeling
  • UberMediumSoftware Engineer
    Design a Food Delivery Cart

    This question tests the ability to design a distributed, low-latency, and fault-tolerant shopping cart service for a high-concurrency food delivery platform.

    System DesignOnsiteDistributed SystemsAPI DesignCaching
  • UberMediumSoftware Engineer
    Design a Food-Delivery Backend (Uber Eats-style)

    This problem evaluates your ability to design a distributed system that manages real-time interactions between three distinct user types: customers, restaurants, and couriers, with a focus on geospatial querying and high-concurrency event streaming.

    System DesignTechnical ScreenMicroservicesGeospatialCaching
  • UberMediumSoftware Engineer
    Design a Highly Available URL Shortener

    This question tests your ability to design a distributed, highly available system that handles high-read traffic and ensures data integrity for short-URL mappings.

    System DesignOnsiteScalabilityCachingDatabases
  • UberMediumSoftware Engineer
    Design a Real-Time Chat System

    This question tests the ability to design a highly available and scalable real-time chat service, focusing on persistent connections, message routing, and reliable delivery mechanisms.

    System DesignOnsiteWebSocketsDistributed SystemsScalability
  • UberMediumSoftware Engineer
    Design a Real-Time Nearby-Driver Service

    Tests the ability to architect a high-throughput, low-latency geospatial ingestion and query service that tracks millions of moving entities, handles state transitions, and avoids boundary/hot-spot bottlenecks.

    System DesignOnsiteGeospatialDistributed SystemsIn-Memory Caching
  • UberHardSoftware Engineer
    Design a ride-hailing platform like Uber

    This question evaluates a candidate's competency in large-scale system design, covering distributed systems architecture, data modeling, real-time location streaming, matching algorithms, scalability, fault tolerance, and secure payment handling.

    System DesignOnsite
  • UberHardSoftware Engineer
    Design a search autocomplete system

    This system design question evaluates the ability to architect a large-scale search autocomplete service, testing knowledge of prefix data structures, distributed indexing, and latency-sensitive serving pipelines. It is commonly asked in senior engineering interviews to assess trade-off reasoning between freshness, read performance, and system complexity at scale.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Design cart and pricing engine classes

    This question evaluates object-oriented system design and domain modeling skills related to cart operations, item customizations, composable pricing rules (surge, promotions, membership) and producing an itemized receipt.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Design cart management lifecycle service

    This question evaluates system design and backend engineering competencies, focusing on data modeling, indexing strategy, concurrency control, transactional correctness, and scalability for a multi-device cart lifecycle and one-time checkout.

    System DesignTechnical Screen
  • UberHardSoftware Engineer
    Design driver heat map and discuss consensus

    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 driver heat map and discuss consensus states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnsite
  • UberHardSoftware Engineer
    Design real-time driver heatmap system

    This question evaluates a candidate's ability to design real-time distributed systems for geospatial aggregation, covering skills in spatial partitioning, high-throughput streaming ingestion, low-latency cell counting, WebSocket-based client updates, and top-K ranking within a fault-tolerant multi-region architecture.

    System DesignOnsite
  • UberHardSoftware Engineer
    Design the Data Flow Behind a Food Delivery App's Restaurant List

    A system design interview question asking you to design the data flow behind a food delivery app's restaurant list for a customer's delivery address. It tests geographic indexing of delivery areas, propagating restaurant status and delivery-time changes, read-path latency, caching, and freshness trade-offs.

    System DesignOnsite
  • UberMediumSoftware Engineer
    Model user-to-resource access permissions in a graph database and migrate to it

    Design how to store and check which people can access which resources using a graph database, including the vertex and edge schema, access-check traversals, and scaling with caching and partitioning. It also covers migrating from the existing database without downtime, testing access modeling, bounded traversals and safe data migration.

    System DesignOnsite
  • UberHardSoftware Engineer
    Prioritize rooms for allocation

    This question evaluates a candidate's ability to design a real-time room allocation and ranking service in the System Design domain, testing competencies in architectural design, ranking and scoring functions, data sourcing and freshness, fairness mechanisms, and online evaluation and experimentation.

    System DesignOnsite
  • Uber FreightMediumSoftware Engineer
    Design a Distributed URL Shortener for Very High Redirect Traffic

    A system design interview question asking you to design a distributed URL shortener. It tests API design, unique short-code and distributed ID generation, collision handling, storage and sharding, caching for very high redirect traffic, availability, fault tolerance, and link expiration.

    System DesignOnsite
  • Uber FreightMediumSoftware Engineer
    Design a Real-Time Restaurant Analytics Dashboard

    This problem tests the ability to design a distributed, low-latency analytics pipeline capable of handling high-throughput event ingestion, time-windowed aggregations, and efficient cache retrieval.

    System DesignOnsiteDistributed SystemsStreamingCaching
  • UiPathHardSoftware Engineer
    Explain database design and consistency

    This question evaluates proficiency in database design and consistency concepts, covering competencies such as data modeling, datastore selection, partitioning and indexing strategies, consistency semantics, operational trade-offs, validation and testing, and privacy/compliance considerations.

    System DesignTechnical Screen
  • ValonMediumSoftware Engineer
    Design a Loan System with Borrower Repayments and Periodic Investor Payouts

    System design question about a loan system in which borrowers make repayments and the investors who own the loans are paid on a schedule. It tests loan and ownership modeling, repayment allocation, exact ledger accounting, idempotent payout runs, cent-level splitting among investors, and handling of payments reversed after a payout.

    System DesignOnsite