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 1231–1260 of 2336 results
- LyftMediumSoftware EngineerDesign a Distributed Web Crawler
Design a distributed web crawler that starts from seed URLs and scales across roughly 1,000 heterogeneous worker devices. The question covers canonical URL identity and crawl scope, a durable partitioned frontier with atomic deduplication, host-level politeness and robots handling, lease-based coordination with at-least-once delivery and idempotent effects, fetch/parse/storage schemas, near-duplicate detection, recrawl and backpressure, capacity estimation, safety controls, and the enqueue/status/results API. A common Lyft software engineer onsite system design question testing distributed-systems judgment, correctness under retries, and operational thinking.
System DesignOnsite - LyftHardSoftware EngineerDesign a Donation Platform
A Lyft onsite system design question: design an online donation platform that processes one-time and recurring donations through an external payment provider while guaranteeing no lost, duplicated, or wrong-amount charges. It tests payment-flow correctness, idempotency, append-only ledgers, reconciliation, data modeling, consistency tradeoffs, and scaling for donation spikes.
System DesignOnsite - LyftEasySoftware EngineerDesign a Fault-Tolerant Wikipedia Archiver
Design a fault-tolerant system that archives Wikipedia and keeps versioned content current using one reliable coordinator, many unreliable untrusted workers, and durable blob storage. Cover policy-aware discovery, large-frontier deduplication, task assignment, result validation, safe publication, failure recovery, and recrawling.
System DesignOnsite - LyftMediumSoftware EngineerDesign a Globally Versioned Key-Value Store
Design a globally versioned key-value store with sparse key histories, binary-search reads, atomic version publication, and correct history retention.
Software Engineering FundamentalsOnsite - LyftMediumSoftware EngineerDesign a One-to-One Chat Service
Design a durable one-to-one chat service with conversation ordering, idempotent sends, offline replay, and secure multi-device delivery.
System DesignOnsite - LyftMediumSoftware EngineerDesign a Transactional In-Memory Key-Value Store
Design a transactional in-memory key-value store with correct value counts, efficient rollback, and explicitly defined command semantics.
Software Engineering FundamentalsOnsite - LyftMediumSoftware EngineerDesign a Wiki Crawler That Keeps Every Stored Page at Most Five Days Stale
A system design question about crawling and storing all the content of a wiki while keeping every stored page no more than five days stale. It tests capacity estimates, the crawl frontier and scheduling, change detection, storage of page versions, politeness limits, failure recovery, and monitoring of freshness.
System DesignOnsite - LyftHardSoftware EngineerDesign a scalable real-time chat system
This question evaluates skills in designing scalable real-time distributed systems, covering API design, message ordering and idempotency, fan-out strategies, storage tiers, indexing, sharding and replication, consistency vs.
System DesignOnsite - LyftMediumSoftware EngineerDesign a temporal key-value store with historical reads
This question evaluates a candidate's grasp of data structures and algorithms needed to implement a temporal key-value store supporting timestamped set/get operations and efficient historical reads, including performance targets like O(log n) per operation.
Coding & AlgorithmsOnsite - LyftHardSoftware EngineerDesign web crawler for 1000 devices
This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design web crawler for 1000 devices states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignOnsite - LyftMediumSoftware EngineerDiscuss eligibility and behavioral scenarios
This question evaluates behavioral and leadership competencies—including communication, conflict resolution, feedback reception, end-to-end ownership, prioritization, and employment logistics—within the Behavioral & Leadership domain for a Software Engineer role.
Behavioral & LeadershipOnsite - LyftMediumSoftware EngineerExplain Project Ownership and Collaboration with Colleagues
Tests an engineering candidate's ability to demonstrate end-to-end technical ownership, cross-functional influence, and practical collaboration on a high-impact project.
Behavioral & LeadershipOnsiteBehavioralLeadershipOwnership - LyftHardSoftware EngineerImplement Grid Spread and Transactional Store
This question evaluates skills in grid-based propagation modeling and stateful transactional system design, testing concepts such as graph traversal and timed spread dynamics for the grid task and nested transaction semantics, isolation, and state management for the in-memory key-value store.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerImplement Stateful Fetch-N over a Paginated Upstream
Implement a stateful fetchN wrapper over a paginated upstream that returns items in source order across repeated calls. Define buffering, page-token progression, exhaustion, empty pages, invalid input, and retry behavior without losing or duplicating items.
Software Engineering FundamentalsOnsite - LyftEasySoftware EngineerImplement a Key-Value Store with Nested Transactions
Implement an in-memory string key-value store with lookup, assignment, deletion, value counts, and deeply nested transactions. Define visibility plus exact begin, rollback, and inner or outer commit behavior without copying the entire database per transaction.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerImplement command-driven in-memory key-value database
This question evaluates a candidate's ability to design efficient in-memory data structures and implement transactional semantics for operations like SET/GET/DELETE/COUNT, including handling nested transactions, rollbacks, and commits.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerImplement paginated retrieval of transactions
Implement paginated retrieval of transactions 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 & AlgorithmsOnsite - LyftMediumSoftware EngineerIn-Memory Key-Value Store with Nested Begin, Commit, and Rollback Transactions
A coding question to implement an in-memory key-value store with begin, set, unset, commit and rollback, where transaction blocks can be nested and committed changes can no longer be rolled back. It tests how state is recorded per block, restoring keys that were absent, nested commit semantics, and operation complexity.
Software Engineering FundamentalsOnsite - LyftMediumSoftware EngineerMinimum Window Substring with Repeated Required Characters
Tests the sliding window technique and frequency counting to find the shortest substring containing all required characters with their exact multiplicities in linear time.
Coding & AlgorithmsOnsiteSliding WindowTwo PointersHash Table - LyftEasySoftware EngineerReconstruct a BST from Preorder Traversal
Reconstruct the exact binary search tree represented by a preorder traversal of unique integers. Handle empty and completely skewed inputs at scale while preserving the intended tree rather than balancing it.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerRotting Oranges
Compute how many simultaneous spread steps are needed to rot every reachable orange using multi-source grid traversal.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerSolve grid compromise spread with BFS
This question evaluates proficiency in graph traversal and grid-based simulation, specifically multi-source breadth-first search, state propagation modeling, and algorithmic complexity analysis within the Coding & Algorithms domain, emphasizing practical application of implementation and reasoning.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerSolve substring and worker assignment
This pair of problems evaluates competencies in string processing and multiplicity handling as well as scheduling and resource-allocation for interval tasks, testing the ability to choose and apply appropriate data structures while managing time and space complexity.
Coding & AlgorithmsOnsite - LyftMediumSoftware EngineerWrapper Over a Paginated Page API That Fetches the Next N Words
A coding question that wraps an external paginated API, where each page returns a variable number of words, behind a fetch(n) method that returns the next n words in order. It tests handling words left over between calls, requests that span several or empty pages, lazy fetching, the end of the content, and API failures.
Software Engineering FundamentalsOnsite - Marshall WaceMediumSoftware EngineerCompute max events in any 60-second window
This question evaluates understanding of timestamp and array processing, sliding-window or two-pointer techniques, and the ability to analyze time and space complexity when counting events within fixed-size intervals.
Coding & AlgorithmsOnsite - Marshall WaceMediumSoftware EngineerFind users with multi-country successful logins
This question evaluates proficiency in relational data manipulation, text normalization, aggregation, deduplication, and sorting within the Data Manipulation (SQL/Python) domain, focusing on practical query-writing and data-processing skills.
Data Manipulation (SQL/Python)Onsite - MathWorksMediumSoftware EngineerAnswer SDET internship behavioral interview questions
This set of behavioral prompts evaluates communication, structured storytelling, technical judgment, learning agility, conflict resolution, and alignment of career goals—core competencies for an SDET internship.
Behavioral & LeadershipOnsite - MathWorksMediumSoftware EngineerCompare Core Networking and Language Runtime Concepts
Compare pointer ownership and storage duration, HTTP with HTTPS, and TCP with UDP using concrete technical examples. Strong responses separate guarantees from common implementations, connect concepts to production failures, and avoid simplistic claims about memory or network speed.
Software Engineering FundamentalsOnsite - MathWorksMediumSoftware EngineerDesign a Scalable Product Authentication Platform
Design authentication infrastructure for browser and API clients using email and password today with room for external identity providers later. Cover secure credentials, session lifecycle, abuse resistance, recovery, database choices, trust boundaries, and a path to tenfold traffic.
System DesignOnsite - MathWorksMediumSoftware EngineerMinimize reduction cost and validate equal-sum pairs
This problem tests your ability to use greedy strategies with priority queues to minimize reduction costs and use hash-based frequency mapping to identify valid pairs that satisfy specific sum conditions.
Coding & AlgorithmsOnsiteGreedyMin-HeapHash Map