practice a little every day, paws crossed ♡
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 4711–4740 of 9403 results
- MercorMediumSoftware EngineerCharge-Then-Save: Making a Checkout Handler Safe Under Retries
Review a ticket-checkout handler that bills a card through a remote gateway and then saves an order row, explain every way it breaks when calls fail or are retried, and redesign it. Tests reasoning about partial failure, idempotency, and reconciliation.
Software Engineering FundamentalsTechnical Screenidempotencydistributed-systemspayments - MercorMediumMachine Learning EngineerCheck Whether Every Parcel Finds a Locker With Forward Overflow
Parcels arrive one at a time for a bank of numbered lockers, each requesting a preferred locker and overflowing to the next higher-numbered empty one if it's taken. Decide whether every parcel finds a locker. Tests precise rule-following and an efficient alternative to simulating forward scans one slot at a time.
Coding & AlgorithmsOnsiteunion-findsimulationarrays - MercorMediumSoftware EngineerCheck-and-Insert for a Million User IDs: Balancing Latency, Memory and Accuracy
Design a check-and-insert service for about a million user IDs that reports whether an ID already exists and adds it if not. It tests memory estimates, data structure choice, atomic inserts under concurrency, trading memory for accuracy with compact filters, and durable on-disk storage with fast reads and writes.
System DesignTechnical Screen - MercorMediumSoftware EngineerCode Review: A Ride Fare Method That Charges a Card Then Logs the Trip
Review a Java method that charges a rider's card through an external processor and then writes a trip record, and explain what goes wrong if the caller fails mid-call and how to fix it.
Software Engineering FundamentalsTechnical Screencode-reviewidempotencydistributed-systems - MercorEasySoftware EngineerCode Review: Find the Problems in a Python Dict-Based Memoization Cache
A Python code review question about a function that memoizes an expensive computation in a module-level dictionary. It tests whether a candidate can find correctness, memory, concurrency and key-equality problems in simple caching code and propose fixes with clear trade-offs.
Software Engineering FundamentalsTechnical Screen - MercorMediumSoftware EngineerCode Review: Improve a Java Method That Builds a CSV String
A Java code-reading question: review a short method that concatenates a list of rows into a CSV string and propose improvements. It tests knowledge of string-building performance, separator and escaping rules for CSV, null handling, streaming output for large exports, and risks when files are opened in spreadsheets.
Software Engineering FundamentalsTechnical Screen - MercorMediumSoftware EngineerCode Review: Partial Failure in a Java Payment Method That Charges Then Records
A Java code-reading question about a payment method that charges an external provider and then inserts a database record, focused on what happens when the client fails in the middle of the call. It tests reasoning about partial failures, retries, idempotency keys, payment states, and reconciliation with the provider.
Software Engineering FundamentalsTechnical Screen - MercorMediumSoftware EngineerCode Review: Thread Safety of a Python Compute-and-Cache Function
Review a Python function that checks a dictionary cache, runs an expensive computation on a miss, and stores the result, assuming concurrent callers. It probes thread safety under simultaneous misses, making the computation run once per input, where to place a lock without serializing cache hits, and how Python dictionaries behave under concurrent reads and writes.
Software Engineering FundamentalsTechnical Screen - MercorHardSoftware EngineerCompare Merge Sort with Factorial and Randomized Inefficient Sorts
Tests deep understanding of sorting algorithms, contrasting optimal divide-and-conquer strategies (Merge Sort and its adaptive variants) against factorial and randomized paradigms (Permutation Sort and Bogo Sort) across worst-case and expected complexity bounds.
Software Engineering FundamentalsTechnical ScreenDivide and ConquerSortingComplexity Analysis - MercorMediumSoftware EngineerCompare processes and threads in Linux and Python
This question evaluates understanding of operating-system level concurrency versus language-level concurrency, specifically distinctions between processes and threads on Linux, the Global Interpreter Lock in Python, and trade-offs between Python threading and multiprocessing for performance.
Software Engineering FundamentalsTechnical Screen - MercorMediumSoftware EngineerCurrency Exchange Rate Between Two Currencies via Chained Conversions
Given a list of pairwise currency exchange rates such as USD to GBP at 0.77, compute the rate from a source currency to a target currency, converting through intermediate currencies and using rates in reverse where needed. It tests reasoning about chained conversions, unknown or unreachable currencies, and a clear time and space complexity analysis.
Coding & AlgorithmsOnsite - MercorMediumSoftware EngineerDebug a Java CSV Export Function for Output and Performance Bugs
A debugging exercise on a small Java function that converts rows of string fields into CSV text for import by another system. You find what is wrong with its output and why it slows down sharply on large exports, then fix it. It tests string handling, the cost of building strings in loops, and edge-case tests.
Software Engineering FundamentalsTechnical Screen - MercorMediumMachine Learning EngineerDesign Candidate Search And LLM Evaluation Tasks
Prepare for an MLE system design interview that combines candidate search, ranking, comparator reliability, and language-model fundamentals. The prompt covers retrieval, ranking feedback loops, top-k reasoning, transformer concepts, and decoding trade-offs without requiring proprietary hiring data.
ML System DesignOnsite - MercorMediumMachine Learning EngineerDesign Work Orchestration for Machine-Learning Data Pipelines
Design a resilient, multi-tenant orchestration engine tailored for machine learning pipelines that manages versioned DAGs, heterogeneous compute routing, data quality gates, and atomic dataset publication.
ML System DesignOnsiteML InfrastructureSystem DesignWorkflow Orchestration - MercorMediumMachine Learning EngineerDesign a DAG Pipeline Runner for Data-Labeling Jobs
Design a multi-tenant service that runs user-defined DAGs of automated steps (pre-processing, model pre-labeling, QA checks, exports), tracks every run, and survives crashes. Tests data modeling, separating the scheduler from workers, durable state, retries and idempotency, tenant fairness and observability.
System DesignOnsiteworkflow-orchestrationdistributed-systemsstate-machines - MercorEasySoftware EngineerDesign a Deliberately Inefficient Sorting Algorithm and Analyze Its Complexity
An algorithms discussion question that asks for a deliberately inefficient but correct sorting algorithm and a careful analysis of its running time. It tests complexity reasoning about extremely fast-growing costs, worst-case versus expected time, and how such a sort compares with the lower bound for comparison sorting.
Software Engineering FundamentalsTechnical Screen - MercorMediumMachine Learning EngineerDesign a High-Demand Event Ticket Marketplace
Design an event ticketing platform capable of handling flash-sale spikes without overselling, featuring transactional seat holds, idempotent payment processing, and virtual queueing.
System DesignOnsitesystem-designdistributed-systemsconcurrency - MercorMediumSoftware EngineerDesign a Project-to-Contractor Matching System
Tests your ability to architect a two-sided matching platform that enforces strict eligibility filters, dynamic availability tracking, multi-stage ranking with exploration, and closed-loop model evaluation.
System DesignTechnical Screensystem-designmatching-enginerecommendation-systems - MercorEasyMachine Learning EngineerDesign a Social Feed
Design an end-to-end personalized social feed system capable of serving low-latency ranked content while handling hybrid fanout, multi-stage ML candidate retrieval, and stable pagination.
System DesignTechnical Screensystem-designfeed-rankingrecommendation-systems - MercorMediumMachine Learning EngineerDesign a workflow orchestration system that runs multi-step jobs reliably
A system design question asking you to build a workflow system where users define multi-step workflows with dependencies, start runs, and track progress. It tests data modeling, orchestration and worker architecture, durable state, retries and idempotency, fairness between tenants, scaling and observability.
System DesignOnsite - MercorMediumSoftware EngineerDesign an API to Deep-Copy a Dataset with Its Tasks, Model Responses and Grades
A system design question about an API that copies a dataset together with its tasks, model responses and grades so that the copy can be edited independently. It covers ID remapping, background jobs with progress tracking and resumable checkpoints, idempotent requests, worker leases, edits to the source during the copy, and cleanup after failure.
System DesignTechnical Screen - MercorMediumSoftware EngineerDesign the Worst Correct Sorting Algorithm and Analyze Its Complexity
Asks you to propose the worst sorting algorithm that is still correct, explain how it works, argue that it always terminates with sorted output, and analyze its best-case and worst-case time and space. It tests counting arrangements, reasoning about factorial growth and stating what makes such a question well defined.
Software Engineering FundamentalsTechnical Screen - MercorMediumMachine Learning EngineerEvaluate Noisy Data for LLM Post-Training
Design a curation and validation framework to evaluate, filter, and safely integrate a large, noisy dataset into an LLM post-training pipeline without degrading model performance.
Machine LearningTechnical ScreenLLM Post-TrainingData CurationModel Evaluation - MercorMediumSoftware EngineerExplain Kubernetes autoscaling and traffic routing
This question evaluates understanding of Kubernetes autoscaling mechanisms, external-to-pod traffic routing, and the differences between ReplicaSet and StatefulSet controllers.
System DesignTechnical Screen - MercorMediumSoftware EngineerExplain what happens when opening a website
This question evaluates understanding of the end-to-end web request lifecycle, including DNS resolution, TCP/TLS handshakes, HTTP(S) exchanges, CDN and load balancer behavior, server-side handling, and the browser rendering pipeline.
Software Engineering FundamentalsTechnical Screen - MercorHardSoftware EngineerFind the Probability That One Shop Supplies the Top Two Coffees
Calculate the probability that the top-ranked coffees in a blind competition come from the same shop under an exchangeable, tie-free ranking model.
Statistics & MathTechnical Screenprobabilitycombinatoricsexchangeability - MercorMediumSoftware EngineerFind the Production Bugs in a Dictionary Cache Around an Expensive Computation
Review a short Python function that caches the results of an expensive computation in a dictionary, and identify what breaks in a long-running, concurrent production service. Tests reasoning about memory growth, eviction policy, concurrent cache misses, error handling, and input validation.
Software Engineering FundamentalsTechnical Screen - MercorMediumMachine Learning EngineerImplement a Referral Network
Design and implement an in-memory referral network as a directed acyclic graph (DAG) supporting cycle-safe edge insertion, depth-bounded reachability queries, and expected reward computation under geometric decay.
Coding & AlgorithmsOnsiteGraph AlgorithmsDAGBFS - MercorMediumSoftware EngineerMake a Charge-Then-Record Payment Endpoint Safe Against Timeouts, Retries and Crashes
A payment endpoint calls an external provider to charge the customer and then writes a record to its own database. The question asks what can go wrong and how to redesign the flow, testing failure analysis for crashes and timeouts, safe retries, durable payment state, recovery through status checks, webhooks and reconciliation, and lock placement.
System DesignTechnical Screen - MercorMediumSoftware EngineerMake a Dict-Based Memoization Cache Safe for Concurrent Threads
A memoization cache built on a plain Python dictionary wraps an expensive function and is now called from many threads at once. The question asks what goes wrong and how to fix it, testing race-condition analysis, lock scope and its throughput cost, duplicate-work prevention, and exception handling for waiting callers.
Software Engineering FundamentalsTechnical Screen