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 2731–2760 of 2810 results

  • 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
  • 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
    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
    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
  • 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
  • Wells FargoMediumSoftware Engineer
    Reason About Kafka Consumers and Partitions

    This question tests your understanding of Kafka's consumer group protocol, partition assignment logic, and the mechanics of horizontal scaling in distributed message queues.

    Software Engineering FundamentalsTechnical ScreenKafkaDistributed SystemsMessaging
  • WhatnotHardSoftware Engineer
    Build User Journey Path Summary

    This question evaluates the ability to transform unordered user action logs into a trie-like path tree, exercising skills in grouping and time-sorting per user, maintaining stable insertion order, counting distinct users per prefix, and producing deterministic preorder string output.

    Coding & AlgorithmsTechnical Screen
  • WhatnotMediumSoftware Engineer
    Build a Tic-Tac-Toe App

    This question evaluates proficiency in interactive UI development and stateful game logic, including turn management, board state representation, win/draw detection, input validation, and reset flow.

    Coding & AlgorithmsTechnical Screen
  • WhatnotEasySoftware Engineer
    Check Whether a String Can Become a Palindrome by Deleting at Most One Character

    A string coding problem that asks whether a lowercase string can be turned into a palindrome by deleting at most one character, returning a boolean. It tests careful handling of mismatched characters, strings that are already palindromes, and an efficient solution for strings of up to 100,000 characters.

    Coding & AlgorithmsTechnical Screen
  • WhatnotMediumSoftware Engineer
    Content Safety Filter

    Tests string tokenization, interval tracking, and Trie-based multi-word pattern matching to redact prohibited phrases from live-stream messages.

    Coding & AlgorithmsTechnical ScreenStringTrieHash Table
  • WhatnotMediumSoftware Engineer
    Design a Charity Donation Website

    Tests your ability to architect a resilient, high-throughput charity donation platform with strict payment idempotency, asynchronous transaction processing, real-time campaign counters, and financial auditability.

    System DesignTechnical ScreenPaymentsDistributed SystemsIdempotency
  • WhatnotMediumSoftware Engineer
    Design a Direct Messaging System for an E-commerce Marketplace

    Design a scalable 1:1 direct messaging platform for an e-commerce marketplace that supports real-time chat, message ordering, read receipts, and offline push notifications across multiple devices.

    System DesignTechnical ScreenDistributed SystemsMessagingWebSockets
  • WhatnotMediumSoftware Engineer
    Design an Online Coding Contest Platform

    This problem tests your ability to design a distributed architecture for an online coding platform, focusing on secure code execution, high-concurrency submission handling, and real-time leaderboard updates.

    System DesignTechnical ScreenDistributed SystemsSandboxingScalability
  • WhatnotEasySoftware Engineer
    Design an Online Coding Judge

    This question evaluates system design and scalability skills, including distributed architectures, API and data model design, secure sandboxed code execution, artifact storage with signed URLs, and operational concerns such as observability, fault tolerance, and security.

    System DesignTechnical Screen
  • WhatnotMediumSoftware Engineer
    Dot Product of Two Vectors (Dense, then Sparse)

    Tests data structure design and algorithmic optimization for sparse vector operations, transitioning from standard array traversal to pointer-based or hash-based solutions that scale with non-zero elements.

    Coding & AlgorithmsTechnical Screenarrayhash-tabletwo-pointers
  • WhatnotMediumSoftware Engineer
    Knight Dialer: Count Dialable Digit Sequences

    Calculate the number of distinct n-digit phone numbers reachable by standard chess knight moves on a numeric keypad, modulo 10^9 + 7.

    Coding & AlgorithmsTechnical Screendynamic-programminggraphcombinatorics
  • WhatnotHardSoftware Engineer
    Merge Two Sorted Arrays

    Implement a linear-time merge of two sorted arrays into a new sorted array using two pointers, preserving duplicates without modifying the input arrays.

    Coding & AlgorithmsTechnical Screenarraystwo-pointerssorting
  • WhatnotMediumSoftware Engineer
    Propose and Validate a Mobile App Improvement

    This question evaluates product design and system-design skills for mobile applications, including product thinking, high-level implementation planning, experimentation design, and metrics-driven decision-making within the system design category.

    System DesignTechnical Screen
  • WhatnotHardSoftware Engineer
    Remove All Adjacent Duplicate Pairs

    Implement an algorithm to repeatedly eliminate adjacent identical character pairs from a string until no adjacent duplicates remain, handling Unicode inputs in linear time.

    Coding & AlgorithmsTechnical Screenstackstringsunicode