Katkat

practice a little every day, paws crossed ♡

Software Engineering Fundamentals 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 181–210 of 448 results

  • Goldman SachsEasySoftware Engineer
    Cache Trade-offs and a Constant-Time Least-Recently-Used Cache

    Tests understanding of caching trade-offs (latency, freshness, memory overhead) and the implementation of a fixed-capacity Least Recently Used (LRU) cache supporting constant-time operations.

    Software Engineering FundamentalsOnsitelru-cachehash-tabledoubly-linked-list
  • Goldman SachsMediumSoftware Engineer
    Highest Average Student Score: Out-of-Memory Input, Overflow and Thread Safety in Java

    Compute the highest average score among students from name and score records, then extend the code for data larger than memory, negative scores, integer overflow and multithreaded processing. The question also covers what atomic operations are in Java and how synchronized differs from ReentrantLock.

    Software Engineering FundamentalsOnsite
  • Goldman SachsMediumSoftware Engineer
    Overlapping Meetings and Minimum Rooms: No Sweep Line, No Library Sort, Streams, Logs

    Starting from a list of meeting time intervals, decide whether one person can attend them all, then find the minimum number of rooms without a sweep line, order the meetings without a library sort, handle a stream of meetings, and explain how a Kafka-style append-only log broker works. It tests heaps, sorting, streaming and log storage.

    Software Engineering FundamentalsOnsite
  • GoogleMediumSoftware Engineer
    Code Review of a Go Token Bucket Rate Limiter Used as HTTP Middleware

    A code review exercise built around a token bucket rate limiter written in Go and used as HTTP middleware. It tests finding the defects that matter in a production web service, deciding what blocks a merge, writing actionable review comments, and proposing a corrected limiter with tests that control time instead of sleeping.

    Software Engineering FundamentalsOnsite
  • GoogleMediumSoftware Engineer
    Compute Entity Size and Validate a Hierarchical File System

    Implement methods to compute the recursive byte size of an entity in a hierarchical file system and validate the structural integrity of the file system graph.

    Software Engineering FundamentalsOnsiteGraphTreeDFS/BFS
  • GoogleMediumSoftware Engineer
    Deduplicate and Order Batch and Streaming Logs

    Design both a batch algorithm and a streaming processor to deduplicate and chronologically order log records under different resolution policies, accounting for out-of-order delivery, late data, and bounded memory.

    Software Engineering FundamentalsOnsiteStreamingDeduplicationData Structures
  • GoogleMediumSoftware Engineer
    Design a Bookshelf with Book CRUD and a Stable Bookmark

    Tests object-oriented design, separation of entity identity from physical layout, reference integrity during deletions, and optimistic concurrency for content updates.

    Software Engineering FundamentalsOnsiteObject-Oriented DesignData StructuresConcurrency
  • GoogleMediumSoftware Engineer
    Design a Dormitory Room-Assignment System (OOD)

    This question evaluates object-oriented design skills by requiring a class decomposition of a room-assignment system, testing entity modeling, responsibility separation, and capacity-safe data structures. It is commonly used in software engineering interviews to assess practical OOD fluency and the ability to handle edge cases like demand exceeding supply.

    Software Engineering FundamentalsOnsite
  • GoogleEasySoftware Engineer
    Design a Variable Store With Nested Reference Substitution and Cycle Detection

    Design a class that stores named variables and substitutes their values into text, where a stored value can reference other variables that must be expanded at any depth. It tests reference parsing, depth-first expansion with reuse of finished results, cycle detection with a clear error, and policies for undefined variables.

    Software Engineering FundamentalsOnsite
  • GoogleMediumSoftware Engineer
    Design a customer support agent dispatcher that handles mid-request breaks

    Design and implement the core of a dispatcher that assigns waiting customers to available support agents, then extend it for an agent who is interrupted mid-request to take a break. Tests state modeling, queue and data structure choices, fair re-queuing, stale events and per-event complexity.

    Software Engineering FundamentalsOnsite
  • GoogleEasySoftware Engineer
    Design a waitlist manager

    This question tests your ability to design a waitlist system using efficient data structures to handle insertions, removals, and lookup operations.

    Software Engineering FundamentalsOnsiteData StructuresHash MapLinked List
  • GoogleMediumSoftware Engineer
    Design an Employee Coverage Timeline

    This problem tests your ability to handle overlapping intervals and state tracking using a sweep-line algorithm combined with a mapping structure.

    Software Engineering FundamentalsOnsiteSweep-lineIntervalsAlgorithms
  • GoogleEasySoftware Engineer
    Design an ads retrieval service using a heap

    This question tests the ability to design a retrieval system using a priority queue and the implementation of efficient operations to maintain a sorted collection of ad candidates.

    Software Engineering FundamentalsOnsiteHeapPriority QueueData Structures
  • GoogleMediumSoftware Engineer
    Design an editable sequence with marker

    This question evaluates understanding of mutable ordered sequence data structures, marker semantics and invariants, API and data model design, and algorithmic time-complexity trade-offs for insert, delete, and move operations.

    Software Engineering FundamentalsOnsite
  • GoogleHardSoftware Engineer
    Event Topic Router With Named Placeholders and Tail Wildcards

    Build a router for a telemetry message bus that maps dot-separated topics to registered subscription patterns with named placeholders and a trailing multi-segment wildcard; tests trie design, precedence rules and backtracking.

    Software Engineering FundamentalsOnsitetriebacktrackingstring-parsing
  • GoogleHardSoftware Engineer
    Explain SLI/SLO/SLA and design monitoring

    This question evaluates a candidate's competency in service reliability and observability, specifically understanding and distinguishing SLIs, SLOs, and SLAs, planning error budgets, and designing monitoring and alerting for a production web API.

    Software Engineering FundamentalsOnsite
  • GoogleMediumSoftware Engineer
    How to handle huge inputs?

    Answer the coding interview follow-up "what if the input is huge?" Covers memory checks, streaming, chunking, external sort, approximate structures, distributed processing, and engineering tradeoffs.

    Software Engineering FundamentalsOnsite
  • GoogleHardSoftware Engineer
    Implement a URL router that matches request paths against patterns with placeholders

    Implement a URL router that registers path patterns with placeholder segments such as {userId} and returns the registered pattern that matches a concrete request path. It tests choosing a segment-level data structure, defining precedence between literal and placeholder matches, and analyzing registration and lookup complexity.

    Software Engineering FundamentalsOnsite
  • GoogleMediumSoftware Engineer
    Implement matrix transforms and discuss eigenvalues

    This problem tests your ability to perform in-place 2D matrix transformations and your conceptual understanding of how linear algebraic properties like eigenvalues describe matrix behavior.

    Software Engineering FundamentalsOnsiteArraysMatricesLinear Algebra
  • GoogleMediumSoftware Engineer
    Process Sharded Login Logs

    This problem tests your ability to design a robust data pipeline for processing sharded, potentially out-of-order login logs from a distributed system.

    Software Engineering FundamentalsOnsiteDistributed SystemsStream ProcessingData Structures
  • GoogleMediumSoftware Engineer
    Reason About an Endpoint-Only Interval Score

    This problem tests the understanding of interval arithmetic properties and algorithmic implementation of selection logic in the presence of tied boundary indices.

    Software Engineering FundamentalsOnsiteArraysMathOptimization
  • GoogleHardSoftware Engineer
    Resolve Templated CDN Asset Paths to Their Registered Handlers

    Implement a resolver that registers CDN asset path templates containing placeholder segments and, given a concrete request path, returns the matching template's handler along with the captured placeholder values.

    Software Engineering FundamentalsOnsitetriedata-structuresalgorithms
  • GoogleEasySoftware Engineer
    Shortest Distance Between Two Words, Then a Word-List Class With an Anagram Check

    Find the smallest distance between occurrences of two given words in a list, then build a class over the word list that answers repeated distance queries and checks whether two words are anagrams. It tests linear-time scanning, precomputation for repeated queries, and correct letter-count comparison.

    Software Engineering FundamentalsOnsite
  • GustoMediumSoftware Engineer
    Design an Extensible Tax Policy Engine

    Design a modular, versioned tax policy engine that evaluates payroll taxes across different tax years and filing statuses using progressive and flat-rate strategies with deterministic precision.

    Software Engineering FundamentalsOnsiteobject-oriented-designsystem-designclean-code
  • HadrianHardSoftware Engineer
    Design a Rule-Driven Process Graph Validator

    This problem tests your ability to model dependency constraints in a directed graph and implement an efficient algorithm to validate that a given execution sequence satisfies all structural and ordering requirements.

    Software Engineering FundamentalsOnsiteGraphsValidationAlgorithms
  • HarveyMediumBackend Engineer
    Explain project decisions and trade-offs

    This question evaluates proficiency in technical decision-making, trade-off analysis, and system design ownership for backend projects, including architecture rationale, technology selection, and the candidate's specific role and measurable impact.

    Software Engineering FundamentalsOnsite
  • HeadwayMediumSoftware Engineer
    Build a Dual Fixed-Window Rate-Limiting Middleware

    Tests your ability to design and implement a thread-safe, dual fixed-window rate limiter and integrate it cleanly as HTTP middleware in an asynchronous Python framework.

    Software Engineering FundamentalsOnsiteFastAPIConcurrencyRate Limiting
  • HeadwayMediumSoftware Engineer
    Debug a Stale Insurance Eligibility Status

    Tests your ability to resolve data staleness and synchronization bugs between denormalized cache records and immutable event snapshots, while establishing clear domain invariants and handling out-of-order writes.

    Software Engineering FundamentalsOnsiteSystem DesignData ModelingConcurrency
  • Hippocratic AiMediumSoftware Engineer
    Design an hourly call-agent scheduler

    This problem tests your ability to model resource scheduling under capacity constraints and optimize the assignment of tasks to workers over discrete time slots.

    Software Engineering FundamentalsOnsiteGreedySchedulingData Structures
  • Hot Agent StartupMediumSoftware Engineer
    Implement a Thread-Safe Pub-Sub Service

    This question evaluates concurrent programming and thread-safety skills within the Software Engineering Fundamentals domain, focusing on synchronization primitives, message delivery semantics, and coordination between publishers and subscribers at a practical application level.

    Software Engineering FundamentalsOnsite