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 5461–5490 of 5874 results

  • 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 Parking Garage Object Model

    This question evaluates object-oriented design, domain modeling, data structure selection, and concurrency control for resource allocation in a multi-level parking garage.

    Software Engineering FundamentalsOnsite
  • UberMediumSoftware Engineer
    Design a Parking Lot

    This problem tests object-oriented design principles and the ability to manage resource allocation and concurrency in a multi-threaded environment.

    Software Engineering FundamentalsOnsiteObject-Oriented DesignConcurrencySystem Design
  • 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
  • UberMediumSoftware Engineer
    Design a Rolling Event Counter

    This question evaluates understanding of data structures and time-windowed counting, performance and memory trade-offs, expiration policies, and concurrency when implementing an in-memory rolling event counter.

    Software Engineering FundamentalsTechnical Screen
  • UberMediumSoftware Engineer
    Design a meeting room reservation API

    This problem tests your ability to design an in-memory scheduling system that efficiently manages room availability and handles time-interval overlaps.

    Software Engineering FundamentalsOnsiteSystem DesignInterval SchedulingData Structures
  • 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 an Iterative Path Tree and Clarify File Lookup Semantics

    Design an in-memory directory tree supporting iterative path insertion and file lookup using an explicit stack. The problem tests handling of duplicate component names, memory-efficient tree representation, and clarifying ambiguous file search contracts.

    Software Engineering FundamentalsTechnical ScreenTreeDFSDesign
  • UberMediumSoftware Engineer
    Design an object-oriented parking lot system

    This question evaluates object-oriented design competency, including class modeling, responsibility assignment, relationships (inheritance and composition), and familiarity with design patterns and SOLID principles for representing constraints like spot sizes and vehicle types.

    Software Engineering FundamentalsTechnical Screen
  • 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
  • UberMediumSoftware Engineer
    Design follow/follower classes

    This problem tests your ability to design a system for managing directed relationships between users, requiring careful selection of data structures to balance write performance and query latency.

    Software Engineering FundamentalsTechnical ScreenOODGraphsData Structures
  • UberMediumSoftware Engineer
    Design mkdir and ls for a Basic File System

    Design an in-memory file system supporting path creation (`mkdir`) and directory listing (`ls`). Tests tree-based data structures, path parsing, and clean object-oriented design.

    Software Engineering FundamentalsOnsitetrietreedesign
  • 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
    Design top-K frequency structure

    This question evaluates ability to design efficient in-memory data structures for frequency tracking, including handling recency-based tie-breaking, memory bounds under churn, and concurrency implications.

    Coding & AlgorithmsOnsite
  • UberMediumSoftware Engineer
    Design top-K tracker with linked lists

    Design top-K tracker with linked lists 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
  • UberHardSoftware Engineer
    Determine Whether a Word Exists in a Character Grid

    Practice a Uber coding interview problem focused on determine whether a word exists in a character grid. The prompt emphasizes edge cases, clean implementation, and verifiable test behavior without revealing the solution.

    Coding & AlgorithmsTechnical Screen
  • UberMediumSoftware Engineer
    Determine balanced k values in a permutation

    This question evaluates algorithmic reasoning about permutations and contiguous subarray properties, testing skills in array manipulation, positional reasoning, combinatorial insight, and complexity-aware algorithm design within the Coding & Algorithms domain.

    Coding & AlgorithmsOnline Assessment