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 361–390 of 2810 results
- AppleMediumSoftware EngineerCount 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 EngineerCount 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 EngineerCount 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 EngineerDecode 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 EngineerDescribe 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 EngineerDescribe 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 EngineerDescribe 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 EngineerDesign 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 - AppleMediumSoftware EngineerDesign 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 EngineerDesign 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 - AppleMediumSoftware EngineerDetermine 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 EngineerExplain 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 - AppleMediumSoftware EngineerExplain Python lists, dicts, and concurrency
Explain Python lists, dicts, and concurrency evaluates SQL or pandas logic, joins, grouping, window functions, null handling, edge cases, and validation in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Data Manipulation (SQL/Python)Technical Screen - AppleMediumSoftware EngineerExplain Runnable vs Callable and thread-safe Singleton
This question tests the conceptual differences between Java concurrency interfaces and the practical implementation of thread-safe creational design patterns.
Software Engineering FundamentalsTechnical ScreenJavaConcurrencyDesign Patterns - AppleMediumSoftware EngineerExplain SystemVerilog verification concepts and write constraints
This question evaluates proficiency with SystemVerilog verification concepts — including concurrency primitives, constrained-random modeling, assertions, OOP features, synchronization primitives, and testbench architecture — and tests the ability to specify non-overlapping/randomized constraints and reason about solve-order and sampling semantics; it is commonly asked because interviewers seek assurance that a candidate can build correct constrained-random testbenches and diagnose simulation or coverage issues. Category/domain: Software Engineering Fundamentals with a focus on hardware design verification; level of abstraction: language-level implementation details and testbench architecture/behavioral verification concerns.
Software Engineering FundamentalsTechnical Screen - AppleMediumSoftware EngineerExplain key React concepts and error handling
This question assesses a candidate's deep understanding of the React ecosystem, covering reconciliation, hook lifecycles, and robust error management strategies.
Software Engineering FundamentalsTechnical ScreenReactFrontendError-Handling - AppleMediumSoftware EngineerExplain use cases for clock synchronizers
This question evaluates understanding of clock domain crossing and digital system design competencies, focusing on metastability, synchronization techniques (such as flip-flop synchronizers, edge detection, asynchronous FIFOs, and request/acknowledge handshakes) and the trade-offs among reliability, latency, throughput, and area.
Software Engineering FundamentalsTechnical Screen - AppleMediumSoftware EngineerExplain your LLM project and contributions
This question evaluates technical leadership, end-to-end machine learning engineering skills, and domain knowledge of large language models by probing project goals, individual contributions, technical trade-offs, success metrics, and incident handling.
Behavioral & LeadershipTechnical Screen - AppleEasySoftware EngineerFind Common Prefix Across Strings
This question tests the ability to manipulate strings and iterate through arrays to find the longest common prefix among a list of words, emphasizing efficiency and edge-case handling.
Coding & AlgorithmsTechnical ScreenStringsArraysAlgorithms - AppleMediumSoftware EngineerFind k Smallest Pair Sums
This problem tests your ability to efficiently find the k-smallest pair sums from two sorted arrays using a heap-based approach to avoid exhaustive search.
Coding & AlgorithmsTechnical ScreenHeapSortingTwo Pointers - AppleMediumSoftware EngineerFind top-k frequent elements efficiently
This question evaluates algorithmic and data-structure skills, focusing on frequency counting, heap-based selection, streaming updates, and time/space complexity analysis within the Coding & Algorithms domain.
Coding & AlgorithmsTechnical Screen - AppleMediumSoftware EngineerGenerate Tower of Hanoi moves
This question evaluates understanding of recursion, algorithmic problem decomposition, and analysis of time complexity when generating constrained move sequences.
Coding & AlgorithmsTechnical Screen - AppleMediumSoftware EngineerGive a Kubernetes Pod a Token to Call an External Service Securely
Decide how a Kubernetes pod should obtain a token for calling an external service. Tests knowledge of Secrets delivered as volumes or environment variables, RBAC and encryption at rest, external secret managers, workload identity with projected service account tokens, and rotating the token without downtime.
Software Engineering FundamentalsTechnical Screen - AppleMediumSoftware EngineerHow to debug a Python loop-condition bug
This question evaluates debugging skills and understanding of loop termination and control-flow correctness in Python, emphasizing practical familiarity with debugging tools and techniques for isolating faulty loop conditions.
Software Engineering FundamentalsTechnical Screen - AppleMediumSoftware EngineerHow to root-cause Wi‑Fi chip stops after 30 minutes
This question evaluates troubleshooting and diagnostic skills for embedded wireless systems, focusing on firmware behavior, testbed instrumentation, and measurement analysis.
Software Engineering FundamentalsTechnical Screen