practice a little every day, paws crossed ♡
Software Engineering Fundamentals 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 661–690 of 1208 results
- Micro1MediumSoftware EngineerCompare Promise.all, Promise.any, and Promise.allSettled
Analyze and compare the behavior of JavaScript's `Promise.all`, `Promise.any`, and `Promise.allSettled` across resolution semantics, failure handling, result ordering, and empty inputs, then apply them to real-world distributed service orchestration.
Software Engineering FundamentalsOnline Assessmentjavascriptpromisesconcurrency - 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 - MicrosoftMediumMachine Learning EngineerCompute precision/recall from a flaky top-k API
This question evaluates understanding of binary classification evaluation metrics (precision and recall) and competency in handling unreliable API behavior for robust metric computation, testing both conceptual understanding and practical application.
Software Engineering FundamentalsTechnical Screen - 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 - 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 EngineerDesign a Dictionary for Heterogeneous Key and Value Types
Design a heterogeneous dictionary with explicit type-aware equality, hashing, collision resolution, variable-length ownership, resizing, and persistence boundaries.
Software Engineering FundamentalsOnsite - MicrosoftMediumSoftware EngineerDesign and Implement a Worker Thread Pool with Futures and Shutdown
Low-level design and concurrency question: design and implement a fixed-size thread pool with task submission, futures that return results or errors, and graceful or cancelling shutdown. It tests lock and condition variable use, lost wake-ups, policies for rejected work, pool sizing and deadlocks between dependent tasks.
Software Engineering FundamentalsOther - MicrosoftMediumSoftware EngineerDiscuss mutexes, memory alignment, polymorphism, idempotency
This question evaluates understanding of concurrency control (mutexes and synchronization), memory alignment and layout, object-oriented polymorphism, and idempotent operations, encompassing key Software Engineering Fundamentals and systems-level concepts.
Software Engineering FundamentalsOnsite - 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 Python, Java, and Memory Management
This question tests your understanding of language runtimes, memory management strategies, and the trade-offs between managed environments like Python and JVM-based languages like Java.
Software Engineering FundamentalsOnsiteJavaPythonGarbage Collection - MicrosoftMediumMachine Learning EngineerExplain a project deeply
This question assesses the candidate's depth of ownership over a previous machine learning project, specifically testing their ability to articulate system design choices, technical trade-offs, and operational resilience.
Software Engineering FundamentalsOnsiteSystem DesignMLOpsArchitecture - 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 - MicrosoftMediumSoftware EngineerExplain hash map internals and edge cases
This question evaluates understanding of hash map internals and related competencies in data structures, algorithmic complexity, and concurrent programming within the Software Engineering Fundamentals domain, covering collision handling, load factor and resizing, deletion semantics, worst-case behavior, iteration order, and thread-safety concerns.
Software Engineering FundamentalsOnline Assessment - 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 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 Priority Queue from Scratch with Custom Ordering and Stable Ties
Data structures question that asks you to build a priority queue from scratch with insert, peek, remove-top and size operations, a caller-supplied ordering and stable ties. It tests the choice of underlying structure, invariant-preserving insertion and removal, complexity analysis and edge-case handling.
Software Engineering FundamentalsOther - MicrosoftMediumSoftware EngineerImplement a Thread-Safe Per-Key Ordered Executor
Implement per-key FIFO task execution with thread-safe submission, bounded global concurrency, ready-key scheduling, and exception-safe slot release.
Software Engineering FundamentalsOnsite - MicrosoftMediumSoftware EngineerImplement the Linux cp Command, Then Explain Its OS and C++ Internals
A low-level engineering exercise to implement the Linux cp command in C++ and then explain what happens beneath it. It tests system calls, short writes and error handling, the page cache and kernel-assisted copying, and RAII-based management of file descriptors.
Software Engineering FundamentalsOnsite - MicrosoftMediumSite Reliability EngineerLive troubleshooting: diagnose and mitigate very high CPU on a public-facing service
Live troubleshooting scenario for a senior reliability role: a public-facing service shows very high CPU, and you must keep answering what you would check next. It tests impact-first triage, separating traffic growth from per-request regressions, profiling, and weighing rollback, scaling, throttling and asynchronous queueing.
Software Engineering FundamentalsOnsite - MicrosoftMediumSoftware EngineerLow-Level Design of a Logging Library Shared by Many Threads
Low-level design question about an in-process logging library that many threads call at the same time. It tests class modeling for loggers, records, formatters and output destinations, plus thread safety, the hand-off to a background writer, ordering, overflow behavior, failure isolation and clean shutdown.
Software Engineering FundamentalsOther - MicrosoftMediumSoftware EngineerReason About Alien Dictionary Ordering
This problem tests the ability to model lexicographical constraints as a directed graph and determine if a valid ordering of unique characters exists using topological sorting.
Software Engineering FundamentalsTechnical ScreenGraphTopological SortHash Table - MicrosoftMediumSoftware EngineerRespond to a Reliability Regression Shortly After Deployment
Respond to a post-deployment latency or reliability regression with scoped diagnosis, safe rollback decisions, customer-impact measurement, and prevention.
Software Engineering FundamentalsOnsite - MicrosoftMediumSoftware EngineerThread Safety, Deadlock Prevention, and Arrays vs Linked Lists
A rapid-fire software engineering fundamentals round covering what makes code thread-safe, what a deadlock is, the main ways to prevent, avoid or recover from deadlocks, and how arrays and linked lists compare. It tests precise definitions, concrete examples and practical trade-offs such as lock ordering and cache locality.
Software Engineering FundamentalsOnsite - MicrosoftMediumSite Reliability EngineerWhen to automate operations work, and good-enough versus excellent automation
Reliability engineering discussion question: explain your philosophy on automating operational work to free engineers for development, your bar for good-enough versus excellent automation, and where automation stops being worth it. It tests toil measurement, cost-benefit reasoning, safety guardrails and concrete examples.
Software Engineering FundamentalsOnsite - MillenniumMediumSoftware EngineerC++ Atomics, Memory Ordering, and Safe Publication
Understand C++ atomics, relaxed counters, acquire-release publication, lost updates, and when multi-field invariants still require a mutex.
Software Engineering FundamentalsOnsite - MillenniumMediumSoftware EngineerDebug missing output in Python async HTTP flow
This question evaluates understanding of asynchronous programming in Python, including event loop management and async I/O semantics, and is categorized under Software Engineering Fundamentals with a focus on practical application of concurrency concepts.
Software Engineering FundamentalsOnsite - MillenniumMediumData ScientistEvaluate an Agentic Decision System End to End
This problem tests the ability to design an automated evaluation framework for an agentic system that transitions from rule-based to LLM-driven decision-making, focusing on decoupling metrics and ensuring safety.
Software Engineering FundamentalsTechnical ScreenLLM-OpsEvaluationSystems-Design - MillenniumMediumSoftware EngineerGCC, Clang, LLVM, and C++ Compiler Optimization
Compare GCC, Clang, and LLVM compilation stages, optimization trade-offs, undefined behavior, and methods for investigating generated-code differences.
Software Engineering FundamentalsOnsite - MillenniumMediumSoftware EngineerHow a C++ Mutex Protects Shared State
Explain C++ mutex ownership, memory visibility, RAII locking, contention, and deadlock prevention with a shared-counter example.
Software Engineering FundamentalsOnsite