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 1561–1590 of 2810 results
- 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 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 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 - MicrosoftMediumSoftware EngineerDesign a ChatGPT-like serving system
This question tests the ability to design a scalable, low-latency LLM inference system, focusing on request handling, KV-cache optimization, and horizontal scaling strategies.
System DesignTechnical ScreenLLMScalabilityInference - MicrosoftMediumSoftware EngineerDesign a To-Do List Service (CRUD, Auth, Rate Limiting, Caching & API Versioning)
This question tests the ability to design a scalable, multi-tenant To-Do service, focusing on API versioning, authentication, rate limiting, and data integrity.
System DesignTechnical ScreenAPI DesignCachingRate Limiting - MicrosoftMediumSoftware EngineerDesign a URL Shortener (High-Level and Low-Level Design)
This question tests the ability to design a distributed, scalable URL shortening service by addressing key generation strategies, storage schema, and caching policies.
System DesignTechnical ScreenScalabilityDatabaseCaching - MicrosoftMediumSoftware EngineerDesign a Versioned Key-Value Store
This problem tests your ability to design a data structure that supports storing multiple values for the same key indexed by timestamps, requiring efficient retrieval of the latest value at or before a specific point in time.
Coding & AlgorithmsTechnical ScreenHash MapBinary SearchData Structures - MicrosoftMediumSoftware EngineerDesign a high-level logging system
This System Design question evaluates a candidate's ability to design scalable, reliable centralized logging and observability infrastructure, covering distributed systems concepts such as ingestion, durable storage, querying/indexing, access control, and multi-tenant separation.
System DesignTechnical Screen - MicrosoftHardSoftware EngineerDesign a replicated cloud storage service
This problem tests your ability to design a distributed, highly available object storage system by addressing metadata management, data consistency, and replication strategies.
System DesignTechnical ScreenDistributed SystemsStorageReplication - MicrosoftHardSoftware EngineerDesign a typeahead search service
This question evaluates competency in large-scale system design, including scalable data modeling, low-latency prefix lookup, ranking and personalization strategies, API design, caching, and trade-off analysis.
System DesignTechnical Screen - MicrosoftMediumSoftware EngineerDesign an Ad Impression Reconciliation and Aggregation Service
This problem tests the ability to design a distributed, idempotent pipeline that reconciles inconsistent event streams into a consistent, aggregated state for billing and analytics.
System DesignTechnical ScreenDistributed SystemsData PipelinesIdempotency - MicrosoftMediumSoftware EngineerDesign an online ticket booking system
This question tests the ability to design a distributed system that manages high-concurrency inventory, specifically focusing on consistency models, race condition prevention during seat selection, and reliable payment processing.
System DesignTechnical ScreenConcurrencyDistributed SystemsScalability - MicrosoftMediumSoftware EngineerDesign cache with least-recently-used eviction
This question evaluates understanding of in-memory key–value cache design, eviction policies, and appropriate data-structure choices to achieve amortized O(1) get and put operations.
Coding & AlgorithmsTechnical Screen - MicrosoftHardSoftware EngineerDetect Repeated Patterns in a String Sequence
This problem tests string manipulation, hashing, and the ability to detect repeating sub-sequences of a fixed length k across a stream.
Coding & AlgorithmsTechnical ScreenStringsHashingSliding Window - MicrosoftMediumSoftware EngineerDetermine most popular concert city
This interview question evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer for Determine most popular concert city states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Coding & AlgorithmsTechnical Screen - MicrosoftMediumSoftware EngineerExperimentation Platform: Sync vs Async Validation, Latency Budgets and Health Checks
A senior experimentation-platform deep dive that asks which validations should block versus run in the background, how variant assignment stays inside callers' latency budgets, and which health checks catch broken experiments. It tests trade-off reasoning about online A/B testing infrastructure.
System DesignTechnical Screen - MicrosoftHardSoftware EngineerExplain OOP design and API rollout
This question evaluates object-oriented design and API release engineering competencies, covering identification of core domain objects, separation of orchestration from business rules, testability and extensibility of backend logic, and safe modification of public APIs including backward compatibility, versioning, testing, rollout, monitoring, and client communication, and it is categorized under Software Engineering Fundamentals. It is commonly asked because employers need assurance that engineers can both conceptually design maintainable, extensible systems and practically apply release processes and testing strategies to evolve public interfaces without disrupting clients.
Software Engineering FundamentalsTechnical Screen - MicrosoftMediumSoftware EngineerExplain deadlock cases and how to prevent them
This question evaluates understanding of deadlocks, concurrency control, and resource synchronization in concurrent programming, testing competency in identifying the necessary conditions for deadlock, analyzing concrete scenarios including circular waits, and considering engineering approaches for prevention, detection, and recovery.
Software Engineering FundamentalsTechnical Screen - MicrosoftHardSoftware EngineerExplain owning and debugging infra modules
This question evaluates ownership, debugging, and operational competence for low-level infrastructure components such as storage, distributed systems, and other reliability-critical infra, emphasizing reliability/performance goals, incident investigation, trade-off reasoning, and executional ownership.
Behavioral & LeadershipTechnical Screen - MicrosoftMediumSoftware EngineerFind Unique Zero-Sum Triplets
Find unique zero-sum triplets with distinct indices, deterministic ordering, careful duplicate suppression, and explicit time and space analysis.
Coding & AlgorithmsTechnical Screen - MicrosoftHardSoftware EngineerFind all balanced k in a permutation
This question evaluates understanding of permutations, array range reasoning, index mapping, and efficient algorithm design for detecting contiguous subarrays that exactly contain the prefix set {1..k}.
Coding & AlgorithmsTechnical Screen - MicrosoftMediumSoftware EngineerFind longest substring without repeating characters
This problem tests your ability to use the sliding window technique combined with a hash map to efficiently find a maximal subarray meeting a specific constraint.
Coding & AlgorithmsTechnical ScreenSliding WindowHash MapString - MicrosoftMediumSoftware EngineerFind lowest common ancestor in tree
This question evaluates understanding of tree data structures and the lowest common ancestor concept, contrasting use of binary search tree ordering with the general binary tree case while requiring algorithmic time and space complexity reasoning in the Coding & Algorithms domain.
Coding & AlgorithmsTechnical Screen - MicrosoftMediumSoftware EngineerFind the Bugs in an AI-Generated URL Shortener
Tests code review, debugging, and refactoring skills by identifying flaws in an AI-generated in-memory URL shortener and implementing a robust, thread-safe replacement.
Software Engineering FundamentalsTechnical ScreenCode ReviewConcurrencyHashing - MicrosoftMediumSoftware EngineerGreedy and Top-k Beam Search Decoding That Returns the Sentence Probability
A coding question on decoding a sequence from a next-token probability distribution: implement greedy decoding, extend it to beam search that keeps the top k partial sequences, and return the chosen sequence with its overall probability. It also probes why long sequences tend to receive low probability and how decoding should account for that.
Machine LearningTechnical Screen - MicrosoftHardSoftware EngineerGroup GPUs by node and partition by links
This problem tests your ability to model a network as a graph and perform partitioning to optimize internal connectivity constraints.
Coding & AlgorithmsTechnical ScreenGraph TheoryBipartite MatchingCombinatorial Optimization - MicrosoftMediumSoftware EngineerImplement a Bounded Per-Key Ordered Task Executor
Design and implement a thread-safe, bounded task executor that guarantees sequential execution per key while enforcing a global concurrency limit across all keys.
Software Engineering FundamentalsTechnical Screenconcurrencymultithreadingsystem-design-basics - MicrosoftMediumSoftware EngineerImplement a Snapshot Set Iterator
This problem tests your ability to design a data structure that maintains point-in-time consistency for an iterator despite subsequent modifications to the underlying collection.
Coding & AlgorithmsTechnical ScreenData StructuresDesignIterator - MicrosoftMediumSoftware EngineerImplement a type-based mutex for tasks
This problem tests knowledge of synchronization primitives, dictionary-based locking mechanisms, and the ability to manage resource contention based on dynamic categorization.
Coding & AlgorithmsTechnical ScreenConcurrencySynchronizationMultithreading - MicrosoftHardSoftware EngineerImplement array and tree traversal tasks
This problem tests your ability to optimize an array-based trading algorithm using a greedy approach and your mastery of level-order tree traversal to extract a specific view of a binary tree.
Coding & AlgorithmsTechnical ScreenGreedyBFSDFS