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 391–420 of 2810 results

  • AppleMediumSoftware Engineer
    How would you handle an unresponsive teammate?

    This question evaluates interpersonal leadership and project-management competencies—including communication, accountability, escalation judgment, stakeholder risk communication, and empathy—in a software engineering, behavioral and leadership context.

    Behavioral & LeadershipTechnical Screen
  • AppleMediumSoftware Engineer
    Implement a Consistent Hashing Ring From Scratch

    Implement a consistent hashing ring that maps string keys to server nodes with add, remove and lookup operations. Tests sorted-position lookup with wrap-around, deterministic hashing across processes, virtual nodes for load balance, operation complexity and how few keys move when membership changes.

    Software Engineering FundamentalsTechnical Screen
  • AppleMediumSoftware Engineer
    Implement a debounce function

    This problem tests your understanding of JavaScript closures, asynchronous timers, and the ability to maintain internal state across multiple function invocations.

    Coding & AlgorithmsTechnical ScreenJavaScriptClosuresAsynchronous
  • AppleHardSoftware Engineer
    Implement a lazy inorder traversal iterator

    This problem tests your ability to implement a binary tree iterator that performs inorder traversal using O(h) extra space, where h is the height of the tree, while maintaining an amortized time complexity of O(1) per call.

    Coding & AlgorithmsTechnical ScreenTreesIteratorStack
  • AppleHardSoftware Engineer
    Implement a robust REST API method

    Implement a robust REST API method 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 DesignTechnical Screen
  • AppleMediumSoftware Engineer
    Implement a robust socket message reader

    This question evaluates understanding of socket programming, stream message framing, internal buffer management, EOF and error handling, input size limits, unit testing, and time/space complexity analysis.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Implement deep clone for complex objects

    This question evaluates mastery of deep object cloning, reference and memory management, and knowledge of language runtime details such as prototypes, property descriptors, symbol-keyed and non-enumerable properties, and built-in types like Maps, Sets, Dates, RegExps, and typed arrays.

    Coding & AlgorithmsTechnical Screen
  • AppleEasySoftware Engineer
    Implement flood fill using BFS and DFS

    This question tests the ability to implement graph traversal algorithms (BFS and DFS) on a 2D grid, focusing on boundary conditions and state management.

    Coding & AlgorithmsTechnical ScreenGraphBFSDFS
  • AppleMediumSoftware Engineer
    Improve chip performance without process advances

    This question evaluates understanding of digital architecture, microarchitecture, and logic‑level techniques for improving chip performance without process advances, along with competence in performance/power/area (PPA) trade‑off analysis and arithmetic block design.

    Software Engineering FundamentalsTechnical Screen
  • AppleMediumSoftware Engineer
    Introduce yourself and align with team focus

    This question evaluates a candidate's communication and leadership skills, ability to concisely summarize technical work, quantify individual contributions and impacts, and domain knowledge in diffusion models and speech/multimodal research as part of a Behavioral & Leadership assessment for a Software Engineer role.

    Behavioral & LeadershipTechnical Screen
  • AppleHardSoftware Engineer
    Make tree iterators safe under concurrency

    This question tests the ability to design a thread-safe iterator for a binary search tree (BST) that remains consistent even if the underlying tree structure is modified during iteration.

    Software Engineering FundamentalsTechnical ScreenConcurrencyTreesIterators
  • AppleMediumSoftware Engineer
    Maximize funds with capital-gated projects

    Maximize funds with capital-gated projects 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 & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Merge overlapping time intervals

    This problem tests your ability to manipulate array-based data using sorting and linear scanning to identify and merge overlapping intervals.

    Coding & AlgorithmsTechnical ScreenSortingIntervalsGreedy
  • AppleHardSoftware Engineer
    Migrate a monolithic wallet to microservices

    This question evaluates a candidate's ability to design and plan a safe, compliant migration of a high-scale digital wallet from a monolithic architecture to microservices, covering service decomposition, data ownership, transactional consistency, security and key management, compliance, observability, and deployment strategies.

    System DesignTechnical Screen
  • AppleHardSoftware Engineer
    Minimum Cells to Bridge a Magic Grid

    Tests graph modeling and shortest-path optimization on a 2D grid with zero-weight transitions and unit-weight bridges using 0-1 BFS or Dijkstra's algorithm.

    Coding & AlgorithmsTechnical ScreenGraph0-1 BFSMatrix
  • AppleMediumSoftware Engineer
    Multiply Two Sparse Matrices

    This problem tests your ability to optimize matrix multiplication by leveraging data sparsity to avoid unnecessary computations and handle memory efficiently.

    Coding & AlgorithmsTechnical ScreenArraysMatricesOptimization
  • AppleEasySoftware Engineer
    Parse and Summarize HTTP Access Logs

    Parse a strict HTTP access-log format and summarize valid requests, client errors, server errors, invalid lines, and failure percentage. The prompt tests full-field validation, precise metric denominators, status boundaries, streaming aggregation, and privacy-safe diagnostics.

    Software Engineering FundamentalsTechnical Screen
  • AppleMediumSoftware Engineer
    Redesign an Existing Relational Database to Reduce Read Latency

    A staff-level screen question about an existing service whose normalized relational database serves slow reads: explain how you would change the data model and read path to cut read latency. Tests diagnosis of slow reads, trade-offs between read cost, write cost and data freshness, and safe rollout on a live system.

    System DesignTechnical Screen
  • AppleMediumSoftware Engineer
    Return the First Successful Result from Parallel API Calls Under a Global Timeout

    Implement a function that runs several slow, failure-prone backend API calls concurrently and returns the first successful result within a single overall timeout. It tests concurrency primitives, deadline handling, reporting when every call fails, and cleaning up calls that are still in flight, using threads, futures, or async code.

    Software Engineering FundamentalsTechnical Screen
  • AppleMediumSoftware Engineer
    Scale Digit-Square Convergence Requests

    This question evaluates a candidate's competency in designing scalable, low-latency distributed services that combine algorithmic optimization and caching to handle massive request volumes for a numerical convergence operation.

    System DesignTechnical Screen
  • AppleMediumSoftware Engineer
    Simulate a Fixed-Capacity Least-Recently-Used Cache over a Stream of Operations

    A coding question that asks you to implement a fixed-capacity key-value cache with least-recently-used eviction and run it over a stream of get and put operations. It tests precise recency and eviction rules, updates to keys already in the cache, and the design of a data structure with constant-time operations.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Solve 15 common Apple coding questions

    This set evaluates algorithmic problem-solving and data-structure competence, including mastery of hash tables, linked lists, stacks, queues, heaps, graphs, sliding-window and two-pointer techniques, complexity analysis, and in-place transformations.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Solve 15 common interview problems

    This collection evaluates algorithmic problem-solving skills, mastery of fundamental data structures (arrays, strings, hash maps, stacks, queues, trees, graphs, linked lists) and the ability to reason about time and space complexity.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Solve Digit-Square and Grid BFS Problems

    This question evaluates understanding of digit-based state convergence and cycle detection alongside graph traversal and constrained shortest-path search, testing skills in number manipulation, state-space search, and BFS-style exploration.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Solve Subset Sum And Return All Matching Subsets

    This problem tests your ability to navigate the trade-off between dynamic programming and backtracking to find all unique combinations of elements that sum to a target value.

    Coding & AlgorithmsTechnical ScreenBacktrackingRecursionSorting
  • AppleMediumSoftware Engineer
    Solve interval, grid-fill, and heap tasks

    These combined tasks evaluate algorithmic problem-solving and data-structure design skills, specifically interval aggregation and counting over large timestamp ranges, constructive grid-filling with 4-directional connectivity constraints, and multiset operations supporting efficient retrieval and removal of minima and maxima.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Solve mixed coding tasks from interviews

    This question evaluates binary tree traversal and leaf detection, calendrical date arithmetic and palindrome checking, discrete-time edge-detection/stateful sequence processing, and implementation of comparison-based sorting; category/domain: Coding & Algorithms. It is commonly asked to assess correctness and edge-case handling (e.g.

    Coding & AlgorithmsTechnical Screen
  • AppleEasySoftware Engineer
    Solve three easy algorithm problems

    This multi-part prompt evaluates proficiency in fundamental algorithmic concepts including sorted array handling, single-transaction optimization in time-series data, and bracket-sequence validation, measuring understanding of array and string manipulation, common data structures, algorithmic complexity, and edge-case reasoning.

    Coding & AlgorithmsTechnical Screen
  • AppleMediumSoftware Engineer
    Sort and merge string lists by length

    This question evaluates understanding of sorting algorithms, stability, merging strategies, and time/space complexity analysis when ordering strings by length, and is categorized under Coding & Algorithms.

    Coding & AlgorithmsTechnical Screen
  • AppleEasySoftware Engineer
    Store Open-Hours Query: Weekdays, Split Shifts and Overnight Windows in Java

    A progressive Java coding exercise that asks whether a store is open at a given time as its schedule grows from one daily window to selected weekdays, several windows per day, and overnight windows that cross midnight and wrap from Sunday to Monday. It tests time modeling, boundary handling, and keeping evolving code readable.

    Software Engineering FundamentalsTechnical Screen