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 5521–5550 of 5874 results

  • UberMediumSoftware Engineer
    Implement Minesweeper and Word Search

    This problem tests your ability to manipulate 2D grids using BFS/DFS for board traversal and randomized state generation.

    Coding & AlgorithmsOnsiteGridBacktrackingDFS
  • UberMediumSoftware Engineer
    Implement Store Autocomplete

    This problem tests proficiency with prefix-based data structures and efficient string retrieval, specifically requiring a design that optimizes for frequent search operations over a static list of store names.

    Coding & AlgorithmsTechnical ScreenTrieString ManipulationData Structures
  • UberMediumSoftware Engineer
    Implement binary search from scratch

    An Uber software engineer onsite coding question asking you to implement binary search on a sorted integer array from scratch, in both iterative and recursive form. It covers plain search, first/last occurrence with duplicates, the insertion-index variant, overflow-safe midpoint computation, loop invariants and correctness, and time/space complexity analysis.

    Coding & AlgorithmsOnsite
  • UberMediumSoftware Engineer
    Implement rate limiter, top-K, scheduler algorithms

    This question evaluates proficiency in concurrent programming and thread-safe design, core algorithm implementation (binary search and top-K logic), data structure usage (including doubly-linked-list techniques), and scheduling and ranking reasoning for meeting and resource allocation.

    Coding & AlgorithmsOnsite
  • UberHardSoftware Engineer
    Implement three interview-style coding tasks

    This set of tasks evaluates algorithm and data-structure design skills within the Coding & Algorithms domain, focusing on array windowing and range constraints, dynamic connectivity with component-size maintenance, and time-windowed streaming counters with per-user rate limiting.

    Coding & AlgorithmsOnsite
  • UberMediumSoftware Engineer
    Implement uniform sampling in squares

    Implement uniform sampling in squares 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
  • UberMediumSoftware Engineer
    Kth Employee Reached in an Ordered Hierarchy

    This problem tests tree traversal techniques, specifically finding the k-th node in an in-order traversal of a binary search tree while handling dynamic updates or specific subtree constraints.

    Coding & AlgorithmsOnline AssessmentTreesBinary Search TreeTraversal
  • UberMediumSoftware Engineer
    Last Truck to Leave a One-Dimensional Lane

    Determine the time and ID of the last truck to exit a one-dimensional lane where trucks travel at constant speed and reverse directions upon colliding.

    Coding & AlgorithmsOnline AssessmentArraysSortingBrainteaser
  • UberHardSoftware Engineer
    Maintain the First Value That Appears Exactly Once

    Practice a Uber coding interview problem focused on maintain the first value that appears exactly once. The prompt emphasizes edge cases, clean implementation, and verifiable test behavior without revealing the solution.

    Coding & AlgorithmsTechnical Screen
  • UberHardSoftware Engineer
    Maximize Minimum Scaled Value

    This problem tests your ability to use binary search on the answer space to solve a constrained resource allocation problem effectively.

    Coding & AlgorithmsOnline AssessmentBinary SearchGreedyOptimization
  • UberMediumSoftware Engineer
    Maximize Throughput and Count Trigger Components

    This problem tests your ability to optimize resource allocation using a greedy strategy and to identify connected components in a grid-based graph using traversal techniques.

    Coding & AlgorithmsTechnical ScreenGreedyGraphsBFS/DFS
  • UberHardSoftware Engineer
    Maximize stock profit with one or two trades

    This question evaluates algorithmic problem-solving skills in array processing and transaction-constrained optimization, exercising greedy and dynamic programming concepts within the Coding & Algorithms domain.

    Coding & AlgorithmsOnsite
  • UberMediumSoftware Engineer
    Maximize the Eligible Carpool Group

    This problem tests your ability to use a sweep-line algorithm or difference array to find the optimal point to maximize the number of overlapping intervals, subject to specific constraints.

    Coding & AlgorithmsOnsiteArraySweep-linePrefix Sum
  • UberHardSoftware Engineer
    Maximum Score with Prime Jumps

    This problem tests dynamic programming and number theory, specifically the ability to combine linear path traversal with jump-based transitions constrained by prime number properties.

    Coding & AlgorithmsOnline AssessmentDynamic ProgrammingPrime NumbersGraph Traversal
  • UberMediumSoftware Engineer
    Minimum Delivery Cost Between Cities

    This problem tests your ability to optimize pathfinding costs in a graph where edge weights are determined by a combination of absolute differences and conditional local minimums.

    Coding & AlgorithmsOnline AssessmentGraphsShortest PathGreedy
  • UberMediumSoftware Engineer
    Minimum Rooms, Merged Busy Blocks and Conflict Handling for Meeting Intervals

    A multi-part coding question built on the classic meeting-room scheduling problem: find the minimum number of rooms for a set of meetings, merge overlapping meetings into busy blocks, and detect and handle booking conflicts. It tests interval ordering, endpoint conventions, sweep reasoning and efficient lookups.

    Software Engineering FundamentalsTechnical Screen
  • 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
    Object-Oriented Parking Lot Design with Check-In and Check-Out

    An object-oriented design interview question asking you to model a parking lot and implement working check-in and check-out methods. It tests class design and relationships, fast free-spot lookup across vehicle sizes, ticket handling, fees, edge cases, and thread safety.

    Software Engineering FundamentalsOnsite
  • UberMediumSoftware Engineer
    Parse and evaluate nested expressions with validation

    This question evaluates a developer's ability to design and implement a robust parser and evaluator for a parenthesized expression language, testing parsing, lexical scoping and variable binding, operator semantics, error detection, and safe integer arithmetic.

    Coding & AlgorithmsOnline Assessment
  • UberMediumSoftware Engineer
    Print directory tree with indentation

    This question evaluates proficiency with representing and traversing hierarchical directory trees and producing depth-based formatted output, testing concepts such as tree traversal, recursion or iterative depth tracking, and string formatting for indentation.

    Coding & AlgorithmsTechnical Screen
  • 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
  • UberMediumSoftware Engineer
    Produce a valid deployment order

    This question evaluates proficiency in graph algorithms and dependency resolution, including concepts such as topological ordering, cycle detection, and complexity analysis, plus systems-level reasoning about service deployment dependencies.

    Coding & AlgorithmsTechnical Screen
  • UberMediumSoftware Engineer
    Quadtree for 2D Geospatial Points

    This problem tests the implementation of a spatial indexing structure by requiring the construction of a Point Quadtree that recursively divides 2D space into four quadrants.

    Coding & AlgorithmsOnsiteTreesGeometryRecursion
  • UberMediumSoftware Engineer
    Reconstruct the Alphabet Order of an Alien Language

    This question tests the ability to model partial ordering constraints using a directed graph and perform a topological sort to deduce a valid sequence.

    Coding & AlgorithmsOnsiteGraphsTopological SortDFS
  • UberMediumSoftware Engineer
    Return a Package Build Order

    This question evaluates a candidate's skills in dependency resolution, graph traversal and cycle detection while reasoning about an externally discovered dependency subgraph and ordering constraints.

    Coding & AlgorithmsTechnical Screen
  • UberMediumSoftware Engineer
    Return the Earliest ID Seen Exactly Once

    Maintain the earliest single-visit ID with counts and queue pruning, handling permanent duplicates, empty results, and strict versus amortized constant-time queries.

    Coding & AlgorithmsTechnical Screen
  • UberMediumSoftware Engineer
    Robot Grid Route with Charging Cells: Fewest Charges, Then Battery, Then Moves

    A grid pathfinding problem in which a robot travels from a start cell to a destination through open, blocked and charging cells, spending one battery unit per move and refilling at chargers. The best route is ranked by fewest charging stops, then smallest required battery capacity, then fewest moves.

    Coding & AlgorithmsOnsite
  • UberHardSoftware Engineer
    Schedule Non-Overlapping Meetings Efficiently

    This problem tests your ability to manage dynamic intervals and determine if a new meeting can be scheduled without overlapping existing appointments using efficient data structures.

    Coding & AlgorithmsOnsiteIntervalsBinary SearchSorting
  • UberMediumSoftware Engineer
    Shortest Path in a Grid with Blocked Cells

    This problem tests your ability to model a 2D grid as a graph and implement a Breadth-First Search (BFS) to find the shortest path between two points while respecting obstacles.

    Coding & AlgorithmsOnsiteBFSGraphsGrid
  • UberMediumSoftware Engineer
    Simulate fixed-shape tiling on a grid

    This question evaluates a candidate's ability to implement grid-based simulation and pattern-matching algorithms, including handling fixed-shape placements, internal holes, bounds checking, collision detection, and explicit scanning/tie-breaking rules.

    Coding & AlgorithmsOnline Assessment