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 5731–5760 of 5874 results

  • WaymoMediumSoftware Engineer
    Find Every Island in a Grid and Measure Its Boundary with Water

    A grid coding problem that asks you to find every island of land cells and report the length of each island's boundary with water, including enclosed lakes and grid edges. It tests grid traversal, connected components, careful edge counting, and deterministic output ordering.

    Coding & AlgorithmsTechnical Screen
  • WaymoMediumSoftware Engineer
    Find Shortest Knight Path

    This problem tests the ability to model a constrained movement pattern on a 2D grid as an unweighted graph and efficiently find the shortest path using Breadth-First Search (BFS).

    Coding & AlgorithmsTechnical ScreenBFSGraphGrid
  • WaymoMediumSoftware Engineer
    Find Shortest Paths to Target Nodes

    This question evaluates knowledge of graph algorithms and algorithmic problem-solving, specifically computing shortest paths in weighted directed graphs and handling unreachable targets.

    Coding & AlgorithmsTechnical Screen
  • WaymoHardSoftware Engineer
    Find a Repeating Vehicle Program Under Fuel and Memory Limits

    Find any repeating vehicle program of at most ten commands with fuel and obstacles, using complete bounded search, terminating simulation, and explicit execution assumptions.

    Coding & AlgorithmsOnsite
  • WaymoMediumSoftware Engineer
    Find the Best Meeting Point on a Grid

    This problem tests your ability to use multi-source Breadth-First Search (BFS) to find a point that minimizes total travel distance across a grid with obstacles.

    Coding & AlgorithmsTechnical ScreenBFSGraphGrid
  • WaymoMediumSoftware Engineer
    Fixed-Capacity Least-Recently-Used Cache Driven by Get and Put Operations

    Design a fixed-capacity least-recently-used cache as an object-oriented exercise, driven here by a list of get and put operations whose read results you return. Tests O(1) lookup, recency updates on reads and writes, and correct eviction order.

    Coding & AlgorithmsOnsite
  • WaymoMediumSoftware Engineer
    Format Bytes as a Hex and ASCII Dump

    This problem tests string manipulation, modular arithmetic, and careful handling of formatting constraints to produce a standardized hexadecimal memory dump.

    Coding & AlgorithmsOnsiteStringsFormattingImplementation
  • WaymoMediumSoftware Engineer
    Handle Competing Work Priorities

    This question evaluates your ability to evaluate trade-offs between conflicting engineering tasks, manage stakeholder expectations when commitments change, and adapt plans when new data emerges.

    Behavioral & LeadershipOnsiteBehavioralPrioritizationStakeholder Management
  • WaymoMediumSoftware Engineer
    Implement Fibonacci generator, balanced BST, frozenset

    This problem tests your understanding of Python generators for sequence generation, the mechanics of tree rotations in self-balancing data structures, and the requirements for implementing immutable, hashable collections.

    Coding & AlgorithmsTechnical ScreenPythonGeneratorsBST
  • WaymoMediumSoftware Engineer
    Implement an ObjectTracker That Merges Observations From Two Perception Systems

    Two perception systems track the same objects under different IDs. Implement an ObjectTracker with addLink, addObservation and getHistory that returns an object's observations from both systems in timestamp order, testing identity grouping and history merging.

    Software Engineering FundamentalsOnsite
  • WaymoMediumSoftware Engineer
    In-Place Rectangle Copy Within a 2D Array Using O(1) Extra Memory

    Copy a rectangular block of a 2D array to another position in the same array, in place with O(1) extra memory, where the source and destination blocks may overlap. Tests choosing a safe copy direction so that no value is overwritten before it is read.

    Coding & AlgorithmsOnsite
  • WaymoMediumSoftware Engineer
    Insert +, -, * and Parentheses Between Ordered Numbers to Reach a Target

    Given numbers in a fixed order and a target, insert +, - or * between them and add parentheses to reach the target, returning the lexicographically smallest fully parenthesized expression or an empty string. Starts with three numbers and generalizes to n, testing exhaustive search over expression trees.

    Coding & AlgorithmsOnsite
  • WaymoMediumSoftware Engineer
    Lowest Horizontal Cut That Splits Square Cakes Into Equal Total Areas

    Square cakes sit on a table with sides parallel to its edges; find the lowest horizontal cut line that splits the total cake area equally, returned as an exact fraction. Tests sweeping over heights, piecewise-linear area accumulation and exact arithmetic.

    Coding & AlgorithmsOnsite
  • WaymoMediumSoftware Engineer
    Minimize Total Grid Distance to Every Building

    Find an empty land cell in a 2D grid that minimizes the sum of shortest travel distances to all buildings without traversing through obstacles or other buildings.

    Coding & AlgorithmsOnsiteBreadth-First SearchMatrixShortest Path
  • WaymoMediumSoftware Engineer
    Parse a Raw CSV String Into a Structure for Downstream Teams, Handling Corrupted Rows

    Parse a raw CSV string from scratch into a data structure other engineering teams can consume, with the prompt given verbally and only one sample record. The follow-up handles corrupted rows where the header is trusted but rows may be missing fields, testing tokenizing, API design and error reporting.

    Software Engineering FundamentalsOnsite
  • WaymoMediumSoftware Engineer
    Respond to On-Call Pressure, Feedback, and Team Conflict

    This question assesses a candidate's ability to navigate high-pressure production incidents, manage interpersonal conflict under uncertainty, and drive long-term systemic improvements.

    Behavioral & LeadershipOnsiteBehavioralOn-callConflict Resolution
  • WaymoMediumSoftware Engineer
    Sort the Results of Applying a Quadratic Function to a Sorted Array

    Apply the quadratic function a*x*x + b*x + c to every element of a sorted integer array and return the results in sorted order, where a may be negative or zero. Tests reasoning about the parabola's shape and merging values from both ends in linear time.

    Coding & AlgorithmsOnsite
  • WaymoMediumSoftware Engineer
    Validate a Parent-Child Forest

    This problem tests graph theory fundamentals by requiring the validation of a forest structure, specifically checking for cycle-free properties and valid parent-child node connectivity constraints.

    Coding & AlgorithmsTechnical ScreenGraph TheoryDFSDSU
  • WayveEasySoftware Engineer
    Repair Unsafe C++ Ownership with Smart Pointers

    Review a C++ ownership sketch with raw allocations and redesign its interfaces around RAII and appropriately restrictive smart pointers. Discuss factory ownership, copying and moving, exception safety, non-owning access, shared lifetimes, cycles, and polymorphic destruction.

    Software Engineering FundamentalsTechnical Screen
  • WeRideMediumSoftware Engineer
    Expand algebraic expression with distribution

    This question evaluates parsing of algebraic expressions, application of the distributive law, string manipulation, and algorithmic reasoning about time and extra-space complexity.

    Coding & AlgorithmsTechnical Screen
  • WeRideMediumSoftware Engineer
    Explain PhD relevance to software engineering

    This question evaluates the candidate's ability to translate PhD research into practical software engineering competencies, including technical skills (programming, algorithms, systems design, data processing), engineering practices (testing, version control, CI/CD), and communication of measurable impact.

    Behavioral & LeadershipTechnical Screen
  • WeRideMediumSoftware Engineer
    Implement Several Core Algorithmic Components

    This problem tests your ability to implement fundamental algorithms, including caching mechanisms, probability transformations, and geometric counting patterns.

    Coding & AlgorithmsTechnical ScreenHashMapsLinked-ListsProbability
  • WeRideMediumSoftware Engineer
    Implement expression expansion to plus-only form

    This question evaluates understanding of expression parsing and algebraic expansion via the distributive property, along with skills in string manipulation, stack-managed state for nested parentheses, and time/space complexity analysis.

    Coding & AlgorithmsTechnical Screen
  • WeRideMediumSoftware Engineer
    Implement matrix multiplication and fast exponentiation

    This question evaluates competency in matrix multiplication, modular arithmetic, and exponentiation algorithms as applied to large-scale numeric computations such as sequence generation.

    Coding & AlgorithmsTechnical Screen
  • WeRideMediumSoftware Engineer
    Validate Bracket Sequence

    This problem tests the ability to manage nested structures using a stack to ensure that all opening brackets are closed in the correct order and type.

    Coding & AlgorithmsOnline AssessmentStackStringData Structures
  • Wells FargoMediumSoftware Engineer
    Build Spring Boot POST, PUT, and GET Endpoints

    Design and implement RESTful endpoints in Spring Boot for an account resource, covering controller annotations, validation, HTTP status codes, error handling, and MockMvc tests.

    Software Engineering FundamentalsTechnical ScreenSpring BootJavaREST API
  • Wells FargoMediumSoftware Engineer
    Choose LLMs for Software Engineering Tasks

    Design an evaluation, privacy, and integration framework to select and verify Large Language Models for enterprise software engineering tasks.

    Software Engineering FundamentalsTechnical ScreenLLM EvaluationSystem DesignSoftware Engineering
  • Wells FargoMediumSoftware Engineer
    Design Cursor Pagination for a Large Dataset

    This problem tests the ability to design a performant, stable pagination system for large datasets using cursor-based navigation instead of offset-based pagination.

    System DesignTechnical ScreenPaginationDatabase IndexingAPI Design
  • Wells FargoMediumSoftware Engineer
    Getting Unblocked When Your Tech Lead Won't Help

    This question evaluates your problem-solving maturity, ability to manage dependencies, and communication skills when facing roadblocks caused by unresponsive stakeholders.

    Behavioral & LeadershipTechnical ScreenBehavioralConflict ResolutionCommunication
  • Wells FargoMediumSoftware Engineer
    Java, Spring & Kafka Fundamentals Deep-Dive

    Tests practical knowledge of Java concurrency and memory visibility, Kafka at-least-once delivery and idempotency patterns, and Spring Security context propagation across asynchronous thread boundaries.

    Software Engineering FundamentalsTechnical ScreenJavaSpring BootApache Kafka