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 301–330 of 5874 results
- 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 Kafka-Based File Watcher for Millions of Files
Design a Kafka file watcher for millions of files with source sharding, durable events, per-file ordering, missed-event reconciliation, and version-aware reads.
System DesignTechnical Screen - AmazonHardSoftware EngineerDesign a Library Management System (API and Schema)
This problem evaluates your ability to design a schema and API for a transactional library system, focusing on handling concurrent checkouts and maintaining data integrity in a read-heavy environment.
System DesignTechnical ScreenDatabase ModelingConcurrencyREST API - 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-Branch Library Lending System
This problem tests the ability to design a distributed inventory and reservation system, focusing on concurrency control, transaction integrity across branches, and fault-tolerant service communication.
System DesignTechnical ScreenConcurrencyDistributed SystemsInventory - 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 Perishable-Goods Inventory and Location Tracking System
This question tests the ability to design a distributed inventory system that handles high-frequency location updates and strict FIFO/expiry logic for perishable goods.
System DesignTechnical ScreenGeo-spatialScalabilityDatabase Modeling - 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 - AmazonHardSoftware EngineerDesign a Recursive File-Search API
Implement a secure, recursive file-search API that validates search boundaries, handles symlink cycles, catches permission errors gracefully, and returns deterministically sorted matching paths.
Software Engineering FundamentalsHR ScreenFile SystemsSecurityRecursion - AmazonEasySoftware EngineerDesign a Reliable AI Chatbot Architecture
Tests candidate's ability to design an enterprise-grade Retrieval-Augmented Generation (RAG) chatbot system featuring fine-grained authorization, hallucination guardrails, and low-latency response serving.
ML System DesignTechnical ScreenRAGLLMInformation Retrieval - 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 - AmazonEasySoftware EngineerDesign a Scalable News Feed
This problem evaluates your ability to design a feed generation architecture, specifically comparing push vs. pull models for users with varying follower counts.
System DesignTechnical ScreenCachingScalabilityDatabases - 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 TTL-Aware LRU Cache Without Full Expiration Scans
Design a TTL-aware LRU cache with synchronized access, capacity eviction, and expiration heaps or timing wheels instead of full-table scans.
Software Engineering FundamentalsOnline Assessment - 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 - AmazonMediumSoftware EngineerDesign a basic credit card system
This problem tests object-oriented modeling and state management by requiring the design of a class structure that handles credit limits, transaction authorization, and balance tracking.
Software Engineering FundamentalsTechnical ScreenObject-Oriented DesignDomain ModelingSystem Architecture - AmazonHardSoftware EngineerDesign a cloud database write path and recovery
This question tests the ability to architect a distributed database write path that decouples compute from storage, specifically focusing on how to maintain ACID properties during failures.
System DesignTechnical ScreenDistributed SystemsDatabasesDurability - 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 - AmazonHardSoftware EngineerDesign a fraud detection system
This problem evaluates your ability to design a scalable, low-latency fraud detection system for an e-commerce platform, focusing on handling class imbalance, feature engineering, and the challenges of delayed feedback loops.
ML System DesignTechnical ScreenFraud DetectionScalabilityFeature Store - AmazonMediumSoftware EngineerDesign a hierarchical locking tree
This interview question evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer for Design a hierarchical locking tree states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Coding & AlgorithmsTechnical Screen