Katkat

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 841–870 of 5874 results

  • AppleMediumSoftware Engineer
    Count Islands in a Binary Grid

    This problem tests your ability to perform graph traversal on a 2D grid while adhering to strict memory constraints and preserving the integrity of the original data structure.

    Coding & AlgorithmsTechnical ScreenGraphsBFSIterative Traversal
  • AppleHardSoftware Engineer
    Count subarrays with sum equals k

    This problem tests your ability to optimize subarray sum calculations using prefix sums and hash maps to achieve linear time complexity.

    Coding & AlgorithmsTechnical ScreenArraysHash MapPrefix Sum
  • AppleMediumSoftware Engineer
    Count the Nodes in a Chain Reachable Only Through Left and Right Links

    Starting from one node of a chain in which every node links only to its left and right neighbors, count the nodes in the whole chain. It tests traversal in both directions from an arbitrary node, handling of chain ends and single-node chains, and the design of your own test cases.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Decode a Run-Length Encoded String Where a Missing Count Means One

    Implement a decoder for run-length encoded strings in which each lowercase letter is followed by an optional repeat count, so that a5b3c becomes aaaaabbbc. It tests careful string parsing, multi-digit counts, letters written without a count, and writing your own test cases.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Describe End-to-End Ownership of a Project

    This question assesses a candidate's ability to demonstrate end-to-end technical ownership, cross-functional collaboration, and the capacity to learn from post-launch challenges.

    Behavioral & LeadershipOnsiteLeadershipProject OwnershipSoft Skills
  • AppleMediumSoftware Engineer
    Describe common RTL lint warnings and errors

    This question evaluates understanding of RTL static analysis and common lint warnings/errors in Verilog/SystemVerilog, testing competence in diagnosing issues such as modules treated as black boxes, combinational loops, and width mismatches.

    Software Engineering FundamentalsTechnical Screen
  • AppleMediumSoftware Engineer
    Describe your most memorable bug and fix

    Evaluates debugging, root-cause analysis, incident response, communication, and ownership skills for a Software Engineer within the Behavioral & Leadership domain.

    Behavioral & LeadershipTechnical Screen
  • AppleMediumSoftware Engineer
    Describe your recent project and scope

    Describe your recent project and scope evaluates behavioral evidence, ownership, communication, trade-offs, and measurable outcomes in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Behavioral & LeadershipTechnical Screen
  • AppleEasySoftware Engineer
    Design APIs for a Voting System

    Define APIs and a core model for an authenticated election with one final ballot per voter and results hidden until close. The design discussion covers eligibility, deterministic timing, idempotent voting, concurrent submissions, recountable records, audit trails, and privacy boundaries.

    System DesignTechnical Screen
  • AppleMediumSoftware Engineer
    Design Cloud Photo Storage and Multi-Device Sync

    Design a scalable cloud photo storage and multi-device synchronization system supporting resilient media uploads, conflict-free sync, and bandwidth-efficient thumbnail and preview generation.

    System DesignOnsitesystem-designcloud-storagedata-synchronization
  • AppleMediumSoftware Engineer
    Design Cross-Device Wallpaper Synchronization

    This question tests the ability to design a distributed synchronization system that balances low-latency local updates with eventually consistent cross-device state, focusing on conflict resolution, bandwidth optimization, and offline-first availability.

    System DesignOnsiteDistributed SystemsSynchronizationOffline-first
  • AppleMediumSoftware Engineer
    Design Disk-Based Inventory Serving

    This question evaluates a candidate's ability to design disk-based inventory services under tight RAM constraints, focusing on data layout, indexing strategies, caching, write/read paths, conditional updates, concurrency control, and I/O-latency trade-offs.

    System DesignTechnical Screen
  • AppleHardSoftware Engineer
    Design a 200-Terabyte Media Migration and Training Input Pipeline

    This problem tests your ability to design a high-throughput data ingestion pipeline, focusing on network bottlenecks, storage strategies, and synchronization between on-premises assets and cloud-based training clusters.

    ML System DesignTechnical ScreenSystem DesignData EngineeringMLOps
  • AppleMediumSoftware Engineer
    Design a Centralized Logging System

    Tests the candidate's ability to design a high-throughput, distributed log collection and search platform, balancing ingestion backpressure, index cost, query latency, and tiered storage.

    System DesignOnsiteDistributed SystemsLoggingStreaming
  • AppleMediumSoftware Engineer
    Design a Distributed Token-Bucket Rate Limiter

    This problem tests the ability to design a scalable, low-latency distributed rate-limiting service using the token bucket algorithm while balancing consistency and performance.

    System DesignOnsiteDistributed SystemsRate LimitingCaching
  • AppleMediumSoftware Engineer
    Design a Population-Weighted Random Country Picker

    This problem tests your ability to implement a weighted sampling algorithm efficiently and write testable code by decoupling randomness.

    Software Engineering FundamentalsTechnical ScreenAlgorithmsBinary SearchProbability
  • AppleMediumSoftware Engineer
    Design a Service for the Top K Most-Visited URLs over a Sliding Time Window

    A system design question on reporting the top K most-visited URLs over a sliding time window. It tests requirement clarification, stream ingestion and windowed counting, merging per-partition top-K results correctly, serving precomputed rankings, and handling hot keys, late events and exact versus approximate counts.

    System DesignOnsite
  • AppleMediumSoftware Engineer
    Design a deck of cards with shuffle/draw

    This question evaluates object-oriented design skills, understanding of randomness and probability in algorithms, and analysis of time/space complexity for data structures and operations.

    Software Engineering FundamentalsTechnical Screen
  • AppleMediumSoftware Engineer
    Design a rolling five-minute hit counter

    This question evaluates understanding of data-structure selection, amortized time complexity, space-time trade-offs, sliding-window state management for expiring events, and the ability to design a concise API with unit tests.

    Coding & AlgorithmsTechnical Screen
  • AppleHardSoftware Engineer
    Design a smartwatch sensor subsystem

    This question tests your ability to design a resource-constrained embedded sensing subsystem, focusing on the trade-offs between energy efficiency, data latency, and algorithmic reliability in a wearable device.

    System DesignOnsiteEmbedded SystemsPower OptimizationSensor Fusion
  • AppleMediumSoftware Engineer
    Design a snapshotable key-value store

    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 snapshotable key-value store states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Design ad click aggregator and file sync service

    This question tests the ability to design a high-throughput event processing system for ad clicks and a scalable file synchronization service, focusing on data consistency, idempotency, and distributed storage patterns.

    System DesignOnsiteDistributed SystemsData IngestionConsistency
  • AppleMediumSoftware Engineer
    Design an Accurate Click Aggregator

    This question tests the ability to design a high-throughput, fault-tolerant system for tracking ad clicks while ensuring exactly-once processing or deduplication at scale.

    System DesignTechnical ScreenScalabilityData PipelineDeduplication
  • AppleHardSoftware Engineer
    Design and scale a Yelp-like platform

    This question evaluates system design and engineering skills including data modeling, indexing, geospatial and full-text search, caching, replication and sharding for a high-scale reviews platform, together with key generation, storage layout, redirects, rate limiting and analytics for a URL-shortening service, probing the ability to balance scalability, consistency, availability, and operational complexity. It falls under the System Design / Distributed Systems / Databases domain and is commonly asked to assess architectural reasoning and trade-off analysis, testing both conceptual high-level design and practical implementation considerations such as performance, fault tolerance, and operational constraints.

    System DesignOnsite
  • AppleMediumSoftware Engineer
    Design card deck with shuffle and order

    This question evaluates understanding of data modeling and API design for a deck abstraction, algorithmic handling of randomization and sorting, and the ability to analyze time and space complexity.

    Coding & AlgorithmsOnsite
  • AppleHardSoftware Engineer
    Design video platform and catalog system

    This System Design question evaluates proficiency in large-scale architecture, API and storage design, data modeling, scalability and consistency trade-offs, ingestion and indexing pipelines, CDN and caching strategies, and operational concerns such as reliability, observability, security, and multi-region deployments across video-sharing and marketplace catalog domains. It is commonly asked in technical interviews to test architectural judgment and trade-off reasoning, emphasizing high-level practical application and operational planning rather than low-level implementation details.

    System DesignOnsite
  • AppleMediumSoftware Engineer
    Determine Whether an Undirected Graph Is Two-Colorable

    Determine whether an undirected graph with disconnected components, potential self-loops, and parallel edges can be colored using two colors such that no two adjacent vertices share the same color.

    Coding & AlgorithmsTechnical Screengraphbfsdfs
  • AppleMediumSoftware Engineer
    Discuss feedback, AI work, learning, and motivation

    This question evaluates a software engineer's feedback receptiveness, leadership and collaboration abilities, learning agility, motivation drivers, and any AI/ML project experience.

    Behavioral & LeadershipOnsite
  • AppleMediumSoftware Engineer
    Explain HashMap Resizing Without Long Pauses

    This question evaluates understanding of hash map internals—how keys are mapped to buckets, collision resolution strategies, and when and why resizing occurs—testing competence in data structures and performance engineering within the Software Engineering Fundamentals domain.

    Software Engineering FundamentalsTechnical Screen
  • AppleHardSoftware Engineer
    Explain How TLS Secures a Connection: Handshake, Certificates and Keys

    Explain in detail how TLS establishes a secure connection and protects the data that follows: the handshake messages and round trips, certificate chain validation, ephemeral key exchange and key derivation, record encryption, forward secrecy, and how TLS 1.3 differs from TLS 1.2.

    Software Engineering FundamentalsOnsite