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 931–960 of 2629 results

  • GoogleHardSoftware Engineer
    Compute Turnstile Crossing Times

    This problem tests your ability to manage state in a queue-based simulation and implement complex tie-breaking logic using data structures like heaps or prioritized queues.

    Coding & AlgorithmsTechnical ScreenSimulationQueueHeap
  • GoogleMediumSoftware Engineer
    Compute a Depth-Weighted Sum of a Nested List

    Implement and compare recursive and iterative traversals to compute the depth-weighted sum of an arbitrarily nested list of integers, handling deep nesting and edge cases.

    Coding & AlgorithmsOnsitedfsbfsstack
  • GoogleMediumSoftware Engineer
    Compute distance to nearest taxi in grid

    This problem tests your ability to efficiently compute shortest path distances from multiple sources to all reachable grid cells using multi-source Breadth-First Search (BFS).

    Coding & AlgorithmsTechnical ScreenBFSGraphGrid
  • GoogleEasySoftware Engineer
    Compute max coins with 3-step token moves

    This question evaluates combinatorial optimization, state-space reasoning, and algorithmic design for constrained token movements on a linear board, and falls under the Coding & Algorithms domain.

    Coding & AlgorithmsOnline Assessment
  • GoogleHardSoftware Engineer
    Compute minimax grid path and network delay

    This question tests the ability to solve pathfinding problems using non-standard cost metrics: first, finding a minimax path in a grid, and second, calculating the earliest arrival time in a network with weighted edges.

    Coding & AlgorithmsTechnical ScreenDynamic ProgrammingDijkstraBinary Search
  • GoogleMediumSoftware Engineer
    Compute minimum servers for cyclic tasks

    This problem tests your ability to manage overlapping intervals in a circular domain by converting cyclic tasks into linear sub-intervals and applying a sweep-line or greedy approach to determine resource requirements.

    Coding & AlgorithmsTechnical ScreenIntervalsGreedySweep-line
  • GoogleMediumSoftware Engineer
    Compute servers needed for daily recurring jobs

    This question evaluates understanding of interval-based resource allocation and job grouping by identifier, testing competency in managing overlapping time intervals, capacity planning, and handling day-boundary truncation.

    Coding & AlgorithmsTechnical Screen
  • GoogleMediumSoftware Engineer
    Compute shortest delivery route with dangerous stops

    This question evaluates understanding of graph traversal and shortest-path techniques under constraints, including avoidance of forbidden nodes, multi-criteria optimization (minimizing dangerous-node visits then steps), and reasoning about augmented state and visited-structure design.

    Coding & AlgorithmsOnsite
  • GoogleMediumSoftware Engineer
    Compute shortest paths with blocked nodes

    This question evaluates proficiency with graph algorithms, shortest-path and reachability concepts when nodes are removed or blocked, and the ability to analyze time and space complexity across directed and undirected graphs.

    Coding & AlgorithmsTechnical Screen
  • GoogleMediumSoftware Engineer
    Compute sliding-window average excluding top k

    This problem tests your ability to maintain order statistics in a sliding window using balanced data structures or heaps to perform efficient removals and updates while excluding the top k elements.

    Coding & AlgorithmsTechnical ScreenSliding WindowOrder StatisticsData Structures
  • GoogleMediumSoftware Engineer
    Compute the Union of Two Sorted Interval Lists

    Merge two sorted lists of disjoint closed intervals into a single sorted list of disjoint intervals in linear time.

    Coding & AlgorithmsOnsiteIntervalsTwo PointersMerge Sort
  • GoogleMediumSoftware Engineer
    Consolidate On-Call Rotation Segments

    Consolidate overlapping on-call shift intervals into non-overlapping segments, each annotated with the sorted list of active engineers.

    Coding & AlgorithmsOnline Assessmentintervalsweep-linesorting
  • GoogleMediumSoftware Engineer
    Count Clusters of 2D Points Within a Radius

    This problem tests your ability to model geometric data as a graph and identify connected components using traversal algorithms or Disjoint Set Union (DSU).

    Coding & AlgorithmsTechnical ScreenGraphsGeometryDFS/BFS
  • GoogleMediumSoftware Engineer
    Count Connected Clusters of Two-Dimensional Points

    Tests modeling geometric proximity as a graph problem, using Disjoint Set Union or graph traversal to identify connected components while ensuring exact integer arithmetic and handling duplicate coordinates.

    Coding & AlgorithmsTechnical Screengraphsunion-findgeometry
  • GoogleMediumSoftware Engineer
    Count Prefix-Matching Simple Paths in a Labeled Graph

    Tests graph traversal, bitmask dynamic programming or backtracking with pruning, and prefix counting on small labeled graphs.

    Coding & AlgorithmsTechnical Screengraphbitmask-dpbacktracking
  • GoogleEasySoftware Engineer
    Count Rectangle Coverage on a Grid

    Implement an algorithm to compute cell-by-cell coverage counts for an n x n grid given multiple inclusive rectangular regions.

    Coding & AlgorithmsOnsitematrixprefix-sumdifference-array
  • GoogleMediumSoftware Engineer
    Count Up-Right/Right/Down-Right Grid Paths Through Ordered Checkpoints

    Count the paths across an n by m grid from the bottom-left to the bottom-right cell when each move goes up-right, right or down-right, optionally passing through checkpoints in a required order, modulo a large prime. It tests column-by-column dynamic programming and reducing memory use.

    Coding & AlgorithmsOnsite
  • GoogleMediumSoftware Engineer
    Count user sessions from logs

    This question evaluates a candidate's ability to parse and process large-scale event logs, perform sessionization based on time gaps, handle out-of-order records and memory constraints, and reason about time and space complexity and optimization strategies in the Coding & Algorithms domain.

    Coding & AlgorithmsOnsite
  • GoogleMediumSoftware Engineer
    Decide string transform with directional tokens and walls

    Decide string transform with directional tokens and walls 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 & AlgorithmsTechnical Screen
  • GoogleMediumSoftware Engineer
    Decompress encoded string with nested repeats

    This question tests the ability to handle nested structures using recursion or a stack-based approach to expand string patterns based on repetition factors.

    Coding & AlgorithmsOnsiteStackRecursionString Manipulation
  • GoogleMediumSoftware Engineer
    Dependency-Safe Deletion Order

    Tests directed graph modeling, cycle detection, and Kahn's algorithm using a min-heap to produce a lexicographically smallest topological sort.

    Coding & AlgorithmsOnsiteTopological SortHeapGraph
  • GoogleMediumSoftware Engineer
    Design Tic-Tac-Toe With K Players

    This question evaluates a candidate's ability to design and implement a game engine, manage board state and turn logic, validate moves, and apply efficient data structures and algorithms for win detection within the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • GoogleMediumSoftware Engineer
    Design a logger that returns top-K messages

    Design an in-memory message logger that records timestamped messages and queries the top-K most frequent messages within any given time range.

    Coding & AlgorithmsTechnical Screendesignhash-tableheap
  • GoogleMediumSoftware Engineer
    Design a rolling hit counter API

    This question tests the ability to design an efficient data structure for time-series aggregation using a sliding window approach with O(1) time complexity per operation.

    Coding & AlgorithmsTechnical ScreenData StructuresConcurrencyDesign
  • GoogleEasySoftware Engineer
    Design compressed vector and compute dot product

    This problem tests your ability to design a memory-efficient data structure for sparse or repetitive vector data and implement an arithmetic operation without fully decompressing the representation.

    Coding & AlgorithmsOnsiteArraysTwo PointersData Structures
  • GoogleMediumSoftware Engineer
    Design server allocation for multi-type nodes

    This question evaluates understanding of scalable resource-allocation and matching systems, encompassing data-structure and index design, availability tracking, fragmentation minimization, concurrency control, and failure handling for large node pools.

    Coding & AlgorithmsTechnical Screen
  • GoogleMediumSoftware Engineer
    Design set with O(1) random access

    This question evaluates skill in designing a composite data structure that supports average O(1) insertion, deletion, and uniform random access, and tests understanding of hashing, indexing, randomness, and concurrency control.

    Coding & AlgorithmsTechnical Screen
  • GoogleMediumSoftware Engineer
    Design structure for insert and k-th largest

    This problem tests your ability to design a dynamic data structure that maintains elements while efficiently querying the k-th largest value, necessitating a balance between insertion speed and retrieval performance.

    Coding & AlgorithmsOnsiteData StructuresHeapBinary Search Tree
  • GoogleMediumSoftware Engineer
    Determine All Players with Fixed Rankings

    Determine which players in a competition have a uniquely determined ranking given a set of pairwise match outcomes.

    Coding & AlgorithmsOnsitegraphbfsdfs
  • GoogleMediumSoftware Engineer
    Determine Reporting Relationships

    This question evaluates understanding of hierarchical relationship modeling, transitive inference across relations, and dynamic data-structure design for tracking manager and peer links.

    Coding & AlgorithmsTechnical Screen