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 1711–1740 of 2810 results

  • NetflixMediumSoftware Engineer
    Plan Eviction and Cleanup for a Production Cache

    This problem tests the design of an in-memory caching system, focusing on memory management, eviction strategies, and concurrency control to ensure high performance and stability.

    Software Engineering FundamentalsTechnical ScreenSystem DesignConcurrencyCaching
  • NetflixMediumSoftware Engineer
    Return the longest contiguous subarray with all distinct values

    This problem tests your ability to use the sliding window pattern and a hash map to maintain a range of unique elements efficiently in O(n) time.

    Coding & AlgorithmsTechnical ScreenSliding WindowHash MapArrays
  • NetflixMediumSoftware Engineer
    Session Token Cache With Per-Entry Expiry and a Test Suite

    Implement an in-memory cache whose entries expire individually, reclaim memory for keys that are never read again, and prove it with deterministic tests using an injected clock. Tests expiry semantics, stale-entry handling and test design.

    Software Engineering FundamentalsTechnical Screendata-structuresheapcaching
  • NetflixMediumSoftware Engineer
    Simulate a TTL Cache with LRU Eviction

    Implement a fixed-capacity key-value cache combining per-key TTL expiration with LRU eviction and O(1) average time per operation.

    Coding & AlgorithmsTechnical ScreenCacheLRUHash Table
  • NetflixMediumSoftware Engineer
    Solve non-repeating show substring

    This question evaluates understanding of sequence processing, uniqueness detection, and the use of auxiliary data structures to track previously seen elements when finding non-repeating contiguous subsequences, applied to show names instead of characters.

    Coding & AlgorithmsTechnical Screen
  • NetflixMediumSoftware Engineer
    Solve sliding-window and disjoint-string-pairs tasks

    This question tests the ability to combine sliding window techniques with bit manipulation or frequency counting to identify pairs of substrings that share no common characters.

    Coding & AlgorithmsTechnical ScreenStringsBit ManipulationSliding Window
  • NewrelicHardSoftware Engineer
    Maximum Path Sum in an Indexed Binary Tree

    This problem tests tree traversal techniques on an index-based representation, focusing on handling negative weights and memory efficiency via an iterative post-order approach.

    Coding & AlgorithmsTechnical ScreenBinary TreeDynamic ProgrammingIterative Traversal
  • NewrelicHardSoftware Engineer
    Product of Array Except Self Without Division

    This problem tests array manipulation skills and the ability to optimize space complexity by using prefix and suffix product passes instead of division.

    Coding & AlgorithmsTechnical ScreenArraysPrefix-SumOptimization
  • NewsBreakMediumSoftware Engineer
    Find Optimal Piecewise Constant Regression Parameters

    This problem tests the ability to derive optimal constants for a piecewise regression model with a single split point and to implement an efficient search algorithm to minimize the sum of squared errors.

    Machine LearningTechnical ScreenRegressionOptimizationPrefix Sums
  • NextdoorMediumSoftware Engineer
    Design In-Memory Transactions with Snapshots and Savepoints

    Tests your ability to design an in-memory key-value store supporting nested transactions, named savepoints, and reliable rollback semantics using undo logs or snapshotting.

    Software Engineering FundamentalsTechnical ScreenData StructuresSystem FundamentalsDesign
  • NextdoorMediumSoftware Engineer
    Design a Job Scheduler That Can Scale by 100 Times

    Design a distributed, asynchronous job scheduler that starts at modest traffic but can seamlessly scale up 100x. Evaluates API design, data storage trade-offs, worker coordination, task deduplication, and failure handling across scale boundaries.

    System DesignTechnical ScreenDistributed SystemsJob SchedulerScalability
  • NextdoorMediumSoftware Engineer
    Design a Neighborhood Newsfeed System

    Design a privacy-aware, hyperlocal social feed that serves real-time updates and emergency alerts based on strict neighborhood boundaries.

    System DesignTechnical ScreenFeed ArchitectureGeospatialDistributed Systems
  • NextdoorMediumSoftware Engineer
    Design a Scalable Job Scheduler

    This question evaluates system design skills focused on job scheduling, distributed systems concerns (state modeling, retries, idempotency), API and data-model design, fault tolerance, observability, and scalability within the System Design domain.

    System DesignTechnical Screen
  • NextdoorMediumSoftware Engineer
    Group Photos and Sort Feed Items

    Implement a feed transformation that collapses consecutive photo posts by the same user into album items and then stably sorts the resulting feed by timestamp.

    Coding & AlgorithmsTechnical ScreenArraysSortingTwo Pointers
  • NextdoorMediumSoftware Engineer
    Implement version string comparator with extensions

    This question evaluates string parsing and comparison algorithms, handling of numeric versus lexical ordering and versioning semantics (including pre-release identifiers and ignored build metadata), within the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • NextdoorHardSoftware Engineer
    Simulate Transaction Lock Scheduling

    Implement an in-memory lock manager simulating shared and exclusive lock scheduling with strict FIFO queuing to prevent starvation.

    Coding & AlgorithmsTechnical ScreenConcurrencyDesignQueue
  • NgrokMediumSoftware Engineer
    Generate Color Feedback for a Word Guess

    Generate green, yellow, or red feedback for each character in a word guess based on positional equality and presence anywhere in the answer. Follow the stated presence semantics, where misplaced duplicate letters remain yellow rather than consuming a limited match count.

    Coding & AlgorithmsTechnical Screen
  • NgrokMediumSoftware Engineer
    Support String Membership and Random Sampling

    Design an immutable in-memory string collection with exact membership checks and uniform random sampling over stored values. Combine complementary indexing and positional storage, analyze time and memory, and compare the approach with a trie for prefix sharing and future mutations.

    Software Engineering FundamentalsTechnical Screen
  • NikeMediumSoftware Engineer
    Choose a Sorting Algorithm from Workload Constraints

    Tests your ability to evaluate classical sorting algorithms against concrete workload constraints such as memory access patterns, worst-case guarantees, stability, and streaming limits.

    Software Engineering FundamentalsTechnical ScreenSortingAlgorithmsData Structures
  • NikeMediumSoftware Engineer
    Design a PDF Ingestion and Retrieval-Augmented Generation Pipeline

    This problem tests the ability to design an end-to-end RAG pipeline capable of handling complex document parsing, chunking strategies for citations, and efficient synchronization of updates.

    ML System DesignTechnical ScreenRAGPDF ParsingVector Databases
  • NikeMediumSoftware Engineer
    Write Pseudocode for Embedding Creation and Vector Search

    This problem tests the ability to design a robust production pipeline for generating text embeddings and performing efficient, metadata-aware vector retrieval.

    Machine LearningTechnical ScreenEmbeddingsVector DBData Pipelines
  • NioMediumSoftware Engineer
    Find kth smallest and count stair-climbing ways

    This problem tests your ability to implement an efficient selection algorithm for order statistics and a dynamic programming approach to solve a classic combinatorial staircase problem.

    Coding & AlgorithmsTechnical ScreenQuickSelectDynamic ProgrammingAlgorithms
  • NordstromMediumSoftware Engineer
    Senior Engineer Leadership Screen: Project Scope, Coding Time, Ownership, Hard Problems

    This interview scenario assesses senior-level engineering leadership, architectural ownership, and the practical balance between hands-on coding and technical coordination within high-throughput systems like fulfillment and supply chain.

    Behavioral & LeadershipTechnical Screenleadershipbehavioralsystem-ownership
  • NotionMediumSoftware Engineer
    Design a text editor with undo/redo

    This question evaluates understanding of stateful data structures, operation/command semantics for reversible actions, undo/redo stack management, interface design, complexity analysis, and test coverage for mutable editors.

    Coding & AlgorithmsTechnical Screen
  • NotionMediumSoftware Engineer
    Implement Recursive React JSON Viewer with Collapse

    Implement Recursive React JSON Viewer with Collapse evaluates requirements, assumptions, structured reasoning, trade-offs, and verification in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Software Engineering FundamentalsTechnical Screen
  • NubankMediumSoftware Engineer
    Design an Online Coding Competition Platform

    Design a scalable online coding contest platform capable of securely executing untrusted user code, producing deterministic scores, and maintaining both a real-time top-100 leaderboard and exact rank lookups.

    System DesignTechnical ScreenDistributed SystemsLeaderboardsSecurity
  • NuroMediumSoftware Engineer
    Assign Robots to Nearest Pickup Items on a Grid with Obstacles

    Given a grid with blocked cells, k delivery robots and k pickup items, assign every robot exactly one item by repeatedly matching the closest remaining robot-item pair under fixed tie-breaking rules. It tests shortest-path distances on grids with obstacles and careful, deterministic greedy assignment.

    Coding & AlgorithmsTechnical Screen
  • NuroMediumSoftware Engineer
    Build a Concurrent Recurring Job Scheduler

    This problem tests your ability to design a thread-safe, concurrent task scheduling system that manages recurring executions while handling lifecycle events like cancellation and graceful shutdown.

    Software Engineering FundamentalsTechnical ScreenConcurrencyMultithreadingDesign Patterns
  • NuroHardSoftware Engineer
    Build a Thread-Safe Video Playback Loop at 25 FPS

    Design and implement a thread-safe video playback engine that decodes and renders frames at a steady 25 frames per second using bounded buffering and precise monotonic scheduling.

    Software Engineering FundamentalsTechnical ScreenConcurrencyMultithreadingSystems Design
  • NuroHardSoftware Engineer
    C++ K-Way Merge of Timestamped Records with Clean Class Design and Hand-Written Tests

    Merge k input sequences of timestamped records, each already sorted by timestamp, into one ordered sequence in C++. The exercise stresses defining the record type, the merging class's state and interface, deterministic handling of equal timestamps, and writing your own C++ test cases without a judge harness.

    Software Engineering FundamentalsTechnical Screen