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 3391–3420 of 5874 results
- MicrosoftMediumSoftware EngineerBucket Words That Are Letter Rearrangements of One Another
A coding exercise that partitions a list of lowercase words into groups whose members use exactly the same letters with the same counts, returned in a fixed canonical order. It tests efficient grouping over up to ten thousand words, handling duplicates and empty strings, and producing deterministic sorted output.
Coding & AlgorithmsOnsite - MicrosoftMediumSoftware EngineerBuild a CSV Query Engine
This problem tests your ability to parse structured text, perform basic type inference, and implement a filtering mechanism for tabular data.
Coding & AlgorithmsTechnical ScreenParsingData ModelingType Inference - MicrosoftMediumSoftware EngineerCheck a Linked List Palindrome Without Mutating It
Check whether a singly linked list is a palindrome in O(n) time and O(1) pointer space without leaving it modified. Practice finding the midpoint, reversing the second half, comparing values, and restoring every link before return.
Coding & AlgorithmsOnsite - MicrosoftMediumSoftware EngineerCheck palindrome and find next larger palindrome
This question tests string manipulation, edge-case handling, and algorithmic efficiency in generating the smallest palindrome greater than a given numeric string.
Coding & AlgorithmsTechnical ScreenStringsTwo PointersMath - MicrosoftMediumSoftware EngineerCheck palindrome number and next palindrome
This question tests your ability to manipulate digits of an integer to identify palindromes and efficiently construct the smallest palindrome greater than a given number.
Coding & AlgorithmsOnsiteMathStringsAlgorithms - MicrosoftHardSoftware EngineerChoose lock granularity for concurrent storage
This problem tests your understanding of concurrency control by asking you to design a locking strategy for a multi-threaded key-value store, focusing on the trade-offs between throughput and latency.
Software Engineering FundamentalsTechnical ScreenConcurrencyLockingSystem Design - MicrosoftEasySoftware EngineerCollaborating With Teammates Across Regions and Working From Home
A behavioral question about collaborating with teammates spread across regions and time zones and with teammates who work from home, followed by a request for a story that shows how you collaborate. It tests asynchronous communication, inclusive hybrid practices, and a concrete personal contribution.
Behavioral & LeadershipOnsite - MicrosoftHardSoftware EngineerCompute discounted prices and full-price indices
This question evaluates array-processing skills, competency with next-smaller-or-equal element patterns, and the ability to compute aggregated results under ordering constraints.
Coding & AlgorithmsTechnical Screen - MicrosoftMediumSoftware EngineerCompute most popular location with weights
This question evaluates a candidate's ability to perform weighted aggregation, data cleaning, tie-breaking logic, and handling of malformed or missing text fields using SQL and/or Python.
Data Manipulation (SQL/Python)Technical Screen - MicrosoftHardSoftware EngineerCompute product of array except self
This problem tests your ability to manipulate array prefixes and suffixes to compute aggregate values efficiently without using the division operator, while handling constraints like modular arithmetic.
Coding & AlgorithmsOnline AssessmentArrayPrefix SumOptimization - MicrosoftMediumSoftware EngineerCompute shortest path in cyclic graph
This question tests the ability to implement a shortest-path algorithm in a directed graph that may contain cycles, specifically evaluating the selection between Dijkstra's algorithm and Bellman-Ford based on edge weight constraints.
Coding & AlgorithmsTechnical ScreenGraphsShortest-PathDijkstra - MicrosoftMediumSoftware EngineerCompute sum of longest positive subarray
Compute sum of longest positive subarray 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 - MicrosoftMediumSoftware EngineerConvert a Hexadecimal Address to Dotted IPv4
Convert an eight-digit hexadecimal address to network-order dotted IPv4 with strict validation, optional prefixes, and correct high-bit handling.
Coding & AlgorithmsOnsite - MicrosoftMediumSoftware EngineerCount Binary Substrings with Two Equal Blocks
Tests string traversal, run-length grouping, and recognizing how adjacent homogeneous blocks contribute to valid balanced substrings.
Coding & AlgorithmsOnline AssessmentStringsTwo PointersGreedy - MicrosoftHardSoftware EngineerCount Non-Decreasing Arrays with Prescribed Digit Sums
Count non-decreasing arrays whose values are at most 5000 and match specified decimal digit sums, returning the total modulo 1000000007.
Coding & AlgorithmsOnline Assessment - MicrosoftMediumSoftware EngineerCount Occurrences of Each Suffix Maximum
This problem tests your ability to use a monotonic stack and a hash map (or frequency array) to efficiently answer suffix queries about the occurrences of the maximum value.
Coding & AlgorithmsTechnical ScreenArrayGreedyOptimization - MicrosoftMediumSoftware EngineerCount integer pairs satisfying 1/x + 1/y = 1/N
This question evaluates understanding of number theory and algorithmic problem-solving, focusing on Diophantine equation manipulation, divisor counting, and translating algebraic constraints into combinatorial counts.
Coding & AlgorithmsOnline Assessment - MicrosoftMediumSoftware EngineerCount k for consecutive-sum generator
This question evaluates number-theoretic reasoning and understanding of arithmetic progressions, focusing on how sums of consecutive positive integers can be characterized and counted.
Coding & AlgorithmsTechnical Screen - MicrosoftMediumSoftware EngineerCount non-decreasing arrays by digit sums
This question evaluates combinatorics and constrained counting skills, including reasoning about digit-sum properties, monotonic sequences, modular arithmetic, and efficient algorithm design within the Coding & Algorithms domain.
Coding & AlgorithmsTechnical Screen - MicrosoftMediumSoftware EngineerCount the Separate Land Regions in a Binary Grid Map
A coding exercise that counts the separate land regions in a grid map of land and water cells, where land cells connect only through shared edges. It tests systematic exploration of a two-dimensional grid, correct neighbor handling at borders and corners, and scaling to large grids where one region may cover everything.
Coding & AlgorithmsOnsite - MicrosoftMediumSoftware EngineerCount words in a document robustly
This question evaluates text-processing and algorithmic engineering skills, specifically precise tokenization rule definition, robust handling of Unicode and punctuation, streaming/large-file processing, unit testing for corner cases, and analysis of time and space complexity.
Data Manipulation (SQL/Python)Onsite - MicrosoftMediumSoftware EngineerDebug a Numerical Underflow in an A/B Testing Analytics Repo When the AI Agent Is Wrong
An AI-assisted debugging exercise set in a multi-file A/B testing analytics codebase with five reported issues, centered on a numerical underflow that makes a sequential test stall on large experiments. It tests triage under a time limit, numerical root-cause analysis, and judging when an AI agent's proposed fix is wrong.
Software Engineering FundamentalsOnsite - MicrosoftMediumSoftware EngineerDebug distributed-system performance problems
This question evaluates a candidate's competency in diagnosing performance regressions in distributed systems and understanding of observability signals, latency and throughput trade-offs, and cross-component interactions within the Software Engineering Fundamentals domain.
Software Engineering FundamentalsOnline Assessment - MicrosoftHardSoftware EngineerDecode a JWT string without libraries
This problem tests your understanding of the JSON Web Token (JWT) structure and your ability to manually implement Base64URL decoding and JSON deserialization in a constrained environment.
Coding & AlgorithmsOnsiteString ManipulationEncodingSecurity - MicrosoftMediumSoftware EngineerDeep-Clone a Hand-Built Doubly Linked List with an Arbitrary Special Pointer
Implement your own doubly linked list whose nodes also carry a special pointer to any node in the list, then write a deep clone without using a built-in list type or adding fields to the node class. It tests pointer handling, mapping nodes by identity, edge cases such as null or self pointers, and proving the copy is fully independent.
Software Engineering FundamentalsOnsite - MicrosoftMediumSoftware EngineerDescribe a recent innovation you delivered
This question evaluates innovation, problem identification, stakeholder influence, trade-off management, measurable impact assessment, and reflective learning within the Behavioral & Leadership domain.
Behavioral & LeadershipOnline Assessment - MicrosoftMediumSoftware EngineerDescribe background and motivations
This interview question evaluates behavioral evidence, ownership, communication, trade-offs, and measurable outcomes in a realistic interview setting. A strong answer for Describe background and motivations states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Behavioral & LeadershipTechnical Screen - MicrosoftMediumSoftware EngineerDescribe handling ambiguity and resolving design conflicts
This question evaluates a software engineer's competencies in handling ambiguity, prioritization and delivery with limited guidance, risk management during migrations and experiments (including staged rollouts and A/B testing), and resolving technical design conflicts through stakeholder communication.
Behavioral & LeadershipOnsite - MicrosoftMediumSoftware EngineerDesign A Low-Latency Product Price Update API
Prepare for a read-heavy product pricing system design interview where prices update infrequently but launch-page reads must be low latency. The prompt focuses on versioned price records, caching, bulk reads, invalidation, rollback, and consistency after daily updates.
System DesignOnsite - MicrosoftMediumSoftware EngineerDesign A Scalable Web Crawler
This question evaluates scalable system architecture and distributed systems competencies, specifically testing web crawler concepts such as URL discovery and deduplication, scheduling and prioritization, politeness-aware fetching, parsing and link extraction, storage of content and metadata, failure handling, and monitoring.
System DesignTechnical Screen