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 EngineerFind 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 EngineerFind 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 EngineerFind 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 EngineerImplement 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 EngineerValidate 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 EngineerRepair 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 EngineerExpand 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 EngineerExplain 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 EngineerImplement 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 EngineerImplement 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 EngineerImplement 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 EngineerBuild 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 EngineerChoose 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 EngineerDesign 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 EngineerGetting 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 EngineerJava, 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 EngineerReason 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 EngineerBuild 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 EngineerBuild 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 EngineerCheck 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 EngineerContent 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDot 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 EngineerKnight 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 EngineerMerge 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 EngineerPropose 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 EngineerRemove 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