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 451–480 of 1189 results

  • GoogleHardSoftware Engineer
    Design a prioritized log manager with eviction

    Design a prioritized log manager with eviction 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
  • GoogleMediumSoftware Engineer
    Design an Enterprise AI Adoption Agent for a Global Company

    Prepare for a Google system design interview about design an enterprise ai adoption agent for a global company. This question focuses on requirements, architecture, trade-offs, reliability, and follow-up discussion areas.

    System DesignOnsite
  • GoogleMediumSoftware Engineer
    Design an Offline-First Client That Syncs Edits and Resolves Multi-Device Conflicts

    Design the client side of an app where users keep editing data offline, store every edit locally, and sync with the server when the network returns. Covers the local data model and edit queue, a sync protocol that is safe to retry, and detecting and resolving version conflicts when several devices change the same data.

    System DesignOnsite
  • GoogleMediumSoftware Engineer
    Design an Online Coding Judge Platform

    This question tests the ability to design a high-throughput, secure, and fault-tolerant distributed system capable of executing untrusted user code in isolated environments.

    System DesignOnsiteScalabilitySecurityQueues
  • GoogleHardSoftware Engineer
    Design an elevator control system

    This question evaluates system design skills including architectural modeling of components, scheduling and concurrency control, state-machine design, and fault-tolerance for real-time control systems, and falls under the System Design domain.

    System DesignOnsite
  • GoogleMediumSoftware Engineer
    Design at-least-once notification delivery

    This question evaluates expertise in reliable distributed systems design, including at-least-once delivery semantics, idempotency and deduplication strategies, retry and dead-letter handling, API and message-schema design, ordering and out-of-order handling, and scalability for high-throughput multi-tenant notification platforms.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design deduplicated file storage on filesystem

    This question evaluates system design and storage engineering competencies, including multi-tenant isolation, authentication and authorization models, content-addressable storage and deduplication, reference counting and garbage collection, concurrency control, API surface design, and scaling across nodes using only filesystem primitives.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design distributed log storage service

    This question evaluates a candidate's expertise in designing distributed storage systems, covering partitioned append-only logs, high-throughput writes and reads, replication, retention, indexing, compaction, leader/follower roles, and recovery mechanisms.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design distributed transactions protocol

    This question evaluates a candidate's understanding of distributed transactions, coordination protocols, fault tolerance, consistency, and reliability across microservices and databases.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design executable notebook service APIs

    This question evaluates a candidate's competence in designing secure, scalable systems for executing user-supplied code, covering API design, sandboxing and isolation, dependency management, resource limits, scheduling, and streaming proxies for logs/results.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design high-throughput event subscription system

    This question evaluates a candidate's ability to design scalable, fault-tolerant event ingestion and subscription architectures, covering distributed systems, high-throughput messaging, content-based filtering, multi-tenant isolation, API/webhook design, delivery semantics, backpressure, sharding, security, and operational observability.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design key management service

    This question evaluates system design and security competencies—specifically cryptographic key lifecycle management, HSM integration, access control, auditing, multi-tenant isolation, and scalability—within the System Design domain.

    System DesignTechnical Screen
  • GoogleMediumSoftware Engineer
    Design nearest-available-taxi lookup with updates

    This question assesses the ability to design a high-concurrency geospatial system that maintains real-time state for moving entities and supports low-latency queries.

    System DesignTechnical ScreenGeospatialScalabilityCaching
  • GoogleHardSoftware Engineer
    Design quota enforcement for high concurrency

    This question evaluates a candidate's understanding of distributed system design and engineering competencies related to quota enforcement, high-throughput rate limiting, consistency models, sharding, and concurrency control under very high QPS.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design relational-to-NoSQL migration pipeline

    This question evaluates a candidate's competency in designing a relational-to-NoSQL migration pipeline, covering distributed systems and data engineering concepts such as consistent snapshotting, change-data-capture, per-key ordering, idempotency, exactly-once behavior, schema evolution, partitioning, and operational reliability.

    System DesignTechnical Screen
  • GoogleHardSoftware Engineer
    Design street-view image ingestion and storage system

    This question tests the ability to design a high-throughput, fault-tolerant ingestion pipeline for massive geospatial media, focusing on distributed storage strategies, data integrity, and efficient retrieval at scale.

    System DesignTechnical ScreenScalabilitySpatial IndexingData Ingestion
  • GoogleHardSoftware Engineer
    Design viewing history and resume service

    This question evaluates a candidate's ability in large-scale system design, covering distributed state management, API design, data modeling for per-user progress, idempotent update semantics, cross-device synchronization, and privacy/compliance considerations.

    System DesignTechnical Screen
  • GoogleMediumSoftware Engineer
    Enforce a Country's IP Ban List on Incoming Connections Using Its Lookup API

    A system design exercise where a country provides an API reporting whether an IP address is banned and the service must refuse connections from banned addresses. It tests scoping questions such as IPv6 and address ranges, fast local enforcement at the edge, keeping ban data fresh, and fail-safe compliance behavior.

    System DesignOnsite
  • GoogleMediumSoftware Engineer
    How to host many domains on one IP?

    Evaluates knowledge of DNS, HTTP/HTTPS request routing, TLS certificate management, and operational/security trade-offs when hosting multiple domains on a single public IP. Commonly asked to probe architectural reasoning and practical deployment trade-offs in the System Design domain at an architectural/operational level of abstraction.

    System DesignTechnical Screen
  • GoogleMediumSoftware Engineer
    Match Tagged Problems to Skilled Programmers at Scale

    Design a distributed matching platform that pairs incoming tagged tasks with skilled programmers using graph algorithms at scale.

    System DesignOnsitesystem-designgraph-algorithmsdistributed-systems
  • GoogleMediumSoftware Engineer
    Safe LLM Digests of App Store Reviews for Product Teams

    Design a pipeline that turns a firehose of untrusted app reviews into LLM-written theme digests for internal product teams, with defenses against prompt injection, spam and personal data leakage.

    System DesignOnsitesystem-designllmprompt-injection
  • GoogleMediumSoftware Engineer
    Shared Distributed In-Memory Cache With Rebalancing and Failover

    Staff-level system design question on building a distributed in-memory cache shared by many backend services. It covers the client API, node memory layout and eviction, key placement and rebalancing, replication and failover, freshness against the database, hot keys, miss storms and cold starts.

    System DesignOther
  • GoogleMediumSoftware Engineer
    Technical Deep Dive: Present and Defend the Design of a Service You Own

    Technical deep-dive question from a senior software engineer loop at Google: explain the architecture of a service you own and walk through its technical details. It tests whether a candidate can present purpose, scale and data flow clearly, then defend design choices, failure handling and trade-offs under probing.

    System DesignOther
  • GrammarlyMediumSoftware Engineer
    Design Disappearing Direct Messages

    Design an ephemeral direct messaging system that reliably deletes messages after viewing across multiple devices, handles offline delivery, and balances user privacy with abuse reporting.

    System DesignTechnical Screensystem-designdistributed-systemsmessaging
  • GrammarlyMediumSoftware Engineer
    Design a Figma-like collaborative editor

    This question evaluates a candidate's ability in designing real-time collaborative systems, covering concurrency control (OT/CRDT trade-offs), low-latency messaging, data modeling, persistence, client-server synchronization, and fault tolerance for unreliable networks.

    System DesignTechnical Screen
  • GrammarlyMediumSoftware Engineer
    Design a Read-Once Chat System

    This question evaluates a candidate's competence in large-scale system design and distributed messaging, including API and data model design, read-once delivery semantics, consistency trade-offs, and operational concerns like scaling, partitioning, and failure handling.

    System DesignOnsite
  • GrammarlyMediumSoftware Engineer
    Design a collaborative spreadsheet

    This question evaluates system design and distributed-systems competencies such as real-time collaboration, concurrent edit conflict resolution, data modeling for workbooks and sheets, session management, persistence and concrete API design.

    System DesignOnsite
  • GrammarlyMediumSoftware Engineer
    Design a restaurant reservation system

    This question assesses the ability to design a distributed reservation system that handles high concurrency, prevents double-booking, and ensures data consistency.

    System DesignTechnical ScreenConcurrencyDatabase ModelingDistributed Systems
  • GustoMediumSoftware Engineer
    Design restaurant shift scheduling

    This problem tests your ability to design a scalable scheduling system, specifically focusing on data modeling for temporal availability, handling conflicting shift assignments, and API design for concurrent updates.

    System DesignTechnical ScreenConcurrencyData ModelingScalability
  • HackerRankMediumSoftware Engineer
    Design a URL Shortener

    This question assesses the ability to design a URL shortening service (like Bitly) focusing on scalability, distributed ID generation, and efficient data retrieval.

    System DesignTechnical ScreenScalabilityDatabaseCaching