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 91–120 of 2336 results
- AmazonMediumSoftware EngineerDesign Faceted Product Search at Large Scale
Design a scalable e-commerce product search engine supporting full-text query matching, multi-attribute filtering, dynamic facet aggregations, and near real-time updates for volatile data like price and inventory.
System DesignOnsiteSearchDistributed SystemsInformation Retrieval - AmazonMediumSoftware EngineerDesign Music Search, Playlists, and Playback Controls
This problem tests the ability to design a scalable music streaming architecture, focusing on data modeling for search indices, conflict resolution in distributed state management, and robust API design for real-time playback control.
System DesignOnsiteDistributed SystemsAPIsConcurrency - AmazonHardSoftware EngineerDesign Thread-Safe Tagging and Bookstore Systems
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 Thread-Safe Tagging and Bookstore Systems states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignOnsite - AmazonHardSoftware EngineerDesign a Core Dump Collection and Analysis System
This problem tests the ability to design a distributed, scalable ingestion and analysis pipeline for massive binary crash files while maintaining system performance and data availability.
System DesignOnsiteDistributed SystemsScalabilityStorage - AmazonMediumSoftware EngineerDesign a Distributed Cron Job Scheduler
Design a fault-tolerant, horizontally scalable distributed cron scheduler capable of triggering millions of recurring tasks with at-least-once delivery semantics and deterministic run coordination.
System DesignOnsiteDistributed SystemsSchedulingFault Tolerance - AmazonHardSoftware EngineerDesign a Distributed Job Scheduler with Run Logs and Exactly-Once Execution
Design a highly available distributed job scheduler that handles one-time and recurring jobs, collects execution logs, and rigorously addresses the practical boundaries of exactly-once execution.
System DesignOnsitesystem-designdistributed-systemsconcurrency - AmazonHardSoftware EngineerDesign a High-Availability Load Balancer
This problem tests the ability to architect a highly available, scalable Layer 7 load balancer, focusing on fault tolerance, traffic distribution strategies, and system reliability.
System DesignOnsiteDistributed SystemsLoad BalancingHigh Availability - AmazonMediumSoftware EngineerDesign a Linked Queue with Deletion Follow-Ups
Implement a linked-list-based FIFO queue supporting constant-time core operations, extended with value-based deletion methods that correctly maintain queue integrity and pointer boundaries.
Software Engineering FundamentalsOnsitelinked-listqueuedata-structures - AmazonMediumSoftware EngineerDesign a Low-Latency Ad Serving Backend With Targeting, Budgets and Tracking
An Amazon system design question: design an ad server that selects and returns an ad for each page request within a tight latency budget. It covers targeting and candidate retrieval, ranking and auctions, budget enforcement and pacing, impression and click tracking, and failure handling.
System DesignOnsite - AmazonMediumSoftware EngineerDesign a Multi-Provider Financial Dashboard
Design a financial dashboard that reconciles balances, securities, cryptocurrency, prices, and derived metrics from unreliable external providers. Explain freshness, historical reproducibility, permissions, corrections, outages, and how users can recognize partial or inconsistent data.
System DesignOnsite - AmazonMediumSoftware EngineerDesign a Platform for Training and Serving ML Models
This problem tests the ability to design an end-to-end MLOps platform capable of handling the full lifecycle of machine learning models, from experimentation to production deployment.
ML System DesignOnsiteMLOpsSystem DesignScalability - AmazonMediumSoftware EngineerDesign a Product Image Upload Pipeline for Sellers
Design an asynchronous, distributed image processing and delivery pipeline for an e-commerce seller portal, focusing on direct-to-cloud uploads, state management, moderation workflows, and resilient global caching.
System DesignOnsitesystem-designdistributed-systemsevent-driven - AmazonMediumSoftware EngineerDesign a Ride-Hailing Matching System
This question evaluates competence in large-scale real-time system design, covering high-throughput ingestion and burst absorption, stream deduplication, geospatial indexing, and low-latency matching and caching for ride-hail workflows.
System DesignOnsite - AmazonMediumSoftware EngineerDesign a Scalable Metrics Monitoring System
Design a high-throughput time-series metrics monitoring and alerting platform similar to Amazon CloudWatch, focusing on series identity, cardinality controls, and low-latency aggregations.
System DesignOnsitesystem-designtime-seriesmonitoring - AmazonMediumSoftware EngineerDesign a Scalable and Polite Web Crawler
This question tests the ability to design a distributed, fault-tolerant system that balances high-throughput data collection with ethical crawling constraints and resource efficiency.
System DesignOnsiteDistributed SystemsQueueingData Pipelines - AmazonMediumSoftware EngineerDesign a Structure That Returns the Max of the Last k Inserted Numbers
A data structure design question: support inserting numbers into a stream and returning the maximum of the most recent k values. It covers a basic version with complexity analysis, reducing memory to O(k), comparing arrays, hash maps, linked lists and heaps, and building the optimal solution with a monotonic deque.
Software Engineering FundamentalsOnsite - AmazonMediumSoftware EngineerDesign a Threshold-Based Database Partition Rebalancer
This problem tests your ability to design a distributed system component that maintains cluster balance by dynamically splitting and merging data shards based on size thresholds.
Software Engineering FundamentalsOnsiteDistributed SystemsSystem DesignConcurrency - AmazonMediumSoftware EngineerDesign a Train Fare Calculator with Dynamic Stations and a Weekend Fare Cap
An object-oriented design and coding exercise for a train line where each segment between adjacent stations costs one unit. It asks for a fare function between two stations, a route class that loads route data and supports adding stations at runtime, and a weekend rule that caps the total fare.
Software Engineering FundamentalsOnsite - AmazonHardSoftware EngineerDesign a URL shortening platform
This question evaluates competency in system design and distributed systems architecture, including API design, scalable short-code generation, data modeling and storage/sharding, caching and CDN strategies, consistency and fault-tolerance trade-offs, rate limiting and abuse prevention, analytics, compliance, and capacity planning.
System DesignOnsite - AmazonHardSoftware EngineerDesign a configuration subscription service
This question evaluates skills in designing a distributed configuration and subscription service, covering API design, real-time notification semantics (delivery and ordering guarantees), versioning, concurrency and thread-safety, durability and recovery, multi-tenant isolation, security, and scalability concerns.
System DesignOnsite - AmazonHardSoftware EngineerDesign a distributed job scheduler service
This question tests the ability to design a distributed, fault-tolerant system capable of scheduling and executing tasks at a massive scale with strict latency requirements.
System DesignOnsiteDistributed SystemsScalabilityScheduling - AmazonHardSoftware EngineerDesign a file search module like UNIX find
This question evaluates object-oriented and API design skills, filesystem semantics (pattern matching, file types, timestamps, permissions, symlink handling), traversal and concurrency strategies, and robustness for large or error-prone directory trees.
System DesignOnsite - AmazonMediumSoftware EngineerDesign a fixed-capacity circular queue
This question evaluates understanding of fixed-capacity circular queue data structures, array-based indexing, modular arithmetic, and the requirement for constant-time (O(1)) enqueue/dequeue operations.
Coding & AlgorithmsOnsite - AmazonMediumSoftware EngineerDesign a multi-size storage locker system
This question tests your ability to design a scalable, distributed reservation system that handles resource allocation (bin packing) under concurrency constraints.
System DesignOnsiteConcurrencyAPI DesignDistributed Systems - AmazonMediumSoftware EngineerDesign a no-repeat top-frequency music player
Design a no-repeat frequency-based music player with addUserSongs and getNextSong APIs. Covers max-heap data structures, lazy deletion, cycle resets, mid-cycle song additions, and complexity.
Coding & AlgorithmsOnsite - AmazonMediumSoftware EngineerDesign a scalable image-based social network
This question tests your ability to design a distributed system architecture capable of handling high-volume image uploads, metadata storage, and low-latency feed retrieval.
System DesignOnsiteScalabilityDistributed SystemsCaching - AmazonHardSoftware EngineerDesign an online bookstore for browse and purchase
Design an online bookstore for browse and purchase evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignOnsite - AmazonMediumSoftware EngineerDesign and Implement a Shopping Cart Object Model for an Online Store
An object-oriented design exercise that asks you to model and implement a shopping cart for an online store, covering adding, updating and removing products and computing the total. It tests class boundaries, explicit edge-case policies, exact money handling and how cleanly the design extends to promotions.
Software Engineering FundamentalsOnsite - AmazonHardSoftware EngineerDesign delayed job scheduler (LLD)
This question evaluates system design and distributed-systems competencies, including scheduling algorithms, durable persistence and recovery, concurrency control, delivery semantics, and operational concerns, and it belongs to the System Design category.
System DesignOnsite - AmazonHardSoftware EngineerDesign document-tag classes with concurrency safety
Design document-tag classes with concurrency safety evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignOnsite