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 1–30 of 35 results

  • Akuna CapitalEasySoftware Engineer
    Design user communication functions

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design user communication functions states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • Akuna CapitalHardSoftware Engineer
    Fix and harden an object pool

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Fix and harden an object pool states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • Akuna CapitalMediumSoftware Engineer
    Implement a two-user communications handler

    This question evaluates skills in stateful resource management, API and abstraction design, custom exception handling, and input validation for enforcing a single-active connection between two users.

    System DesignOnline Assessment
  • CircleHardSoftware Engineer
    Design banking payment scheduling system

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design banking payment scheduling system states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • CircleHardSoftware Engineer
    Design flight-price search service

    Design flight-price search service 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 DesignOnline Assessment
  • CircleHardSoftware Engineer
    Design in-memory DB with TTL and backup

    A Circle software-engineer take-home: design a versioned in-memory key→(field→value) database with per-field TTL, append-only history and delete tombstones, lexicographically ordered scan and scanPrefix (correct even with special characters), and snapshot backup/restore counters. It exercises data modeling, time-travel visibility semantics, ordered indexing, garbage collection, and per-operation complexity trade-offs.

    System DesignOnline Assessment
  • CircleMediumSoftware Engineer
    Trace and reduce redundant curl requests

    A practical curl interview question on tracing and reducing redundant HTTP requests: instrumenting a curl-based client, finding duplicate calls, and cutting request volume. Includes a full worked solution.

    System DesignOnline Assessment
  • CoinbaseHardSoftware Engineer
    Design a bank account ledger

    A complete take-home system-design walkthrough for a bank account ledger service: APIs and data model, an immutable double-entry ledger for auditability, ACID single-account updates and atomic multi-account transfers, idempotency and exactly-once effects, concurrency control, real-time/as-of/historical balance reads, monthly statements, reconciliation with external payment rails, limits, fraud and dispute handling, plus sharding, replicas, recovery, and monitoring strategies for scale.

    System DesignOnline Assessment
  • CoinbaseMediumSoftware Engineer
    Design cloud storage system

    Design cloud storage system 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 DesignOnline Assessment
  • CoinbaseHardSoftware Engineer
    Design scheduled payments and cancellation

    A Coinbase software-engineering take-home: design a scheduled payments service that creates, lists, updates, executes, and cancels future-dated one-time and recurring transfers with exactly-once ledger correctness. It tests distributed-systems architecture, idempotent REST/gRPC API design, data modeling, concurrency control, DST handling, retries/backoff, outage backfill, and observability. The model answer pins correctness on a single-writer state machine plus an idempotent ledger.

    System DesignOnline Assessment
  • Da Vinci TradingHardSoftware Engineer
    Design an in-memory order matching engine

    Matching engine design guide for an in-memory order book. Covers price-time priority, limit and market orders, matching rules, data-structure choices, edge cases, and how to explain tradeoffs in a system design interview.

    System DesignOnline Assessment
  • DoorDashMediumSoftware Engineer
    Design a multi-channel notification system

    This System Design question evaluates distributed-systems and API-design skills—scalability, reliable fanout, multi-channel integration, delivery guarantees (retries, idempotency, deduplication), rate-limiting, subscription/preferences modeling, and observability.

    System DesignOnline Assessment
  • HubSpotMediumSoftware Engineer
    Schedule and execute future payments

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Schedule and execute future payments states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • IBMHardSoftware Engineer
    Design a multithreaded CPU 1D convolution

    An IBM software-engineer take-home that asks you to design and implement a multithreaded CPU version of valid 1D convolution across three regimes: a tiny kernel (K=3), a kernel as long as the input (K=N, a single dot product), and a 100-thread cap. It evaluates parallel decomposition, scheduling, cache locality, false-sharing avoidance, SIMD vectorization, and reduction/synchronization choices.

    System DesignOnline Assessment
  • InstacartMediumSoftware Engineer
    Design Idempotent In-App Availability and Due-Date Notifications

    Design asynchronous in-app availability alerts and due-date reminders with Celery, Redis, durable idempotency, versioned schedules, and crash recovery.

    System DesignOnline Assessment
  • InstacartHardSoftware Engineer
    Design cloud storage with quotas and compression

    This question evaluates a candidate's ability to design a multi-tenant cloud storage system, testing competencies in API design, quota accounting, compression strategies, distributed storage architecture (partitioning, replication/erasure coding), consistency models, security, versioning, and observability.

    System DesignOnline Assessment
  • J.P. MorganEasySoftware Engineer
    Improve shopping cart latency and stock notifications

    This question evaluates a candidate's ability to design scalable, low-latency e-commerce architectures and real-time notification mechanisms while reasoning about data consistency, concurrency control, and correctness under high traffic (including concerns like avoiding oversells).

    System DesignOnline Assessment
  • KneronMediumSoftware Engineer
    Optimize machines for distributed merging cost

    Optimize machines for distributed merging cost 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 DesignOnline Assessment
  • MathWorksMediumSoftware Engineer
    Design a multi-tenant course purchase and delivery system

    This question tests the ability to design a scalable multi-tenant architecture that manages course content, user entitlements, and purchase workflows across different organizational silos.

    System DesignOnline AssessmentMulti-tenancyAPI DesignScalability
  • MetaHardSoftware Engineer
    Design a basic bank system API

    This question evaluates a candidate's ability to design and implement an in-memory banking API, focusing on data modeling, API semantics, invariants (such as monotonic timestamps and non-negative balances), idempotency, and basic concurrency control.

    System DesignOnline Assessment
  • MetaMediumSoftware Engineer
    Design a fitness tracking app

    This problem tests your ability to design a scalable backend for a fitness tracking application, focusing on high-frequency sensor data ingestion, geospatial route storage, and efficient retrieval of historical user activities.

    System DesignOnline AssessmentScalabilityGeospatialNoSQL
  • MetaHardSoftware Engineer
    Design an in-memory cloud storage system

    This question tests your ability to design a high-performance, in-memory distributed metadata store that supports hierarchical file structures, quota management, and efficient retrieval of top-k largest files.

    System DesignOnline AssessmentData StructuresConcurrencyTrie
  • MetaHardSoftware Engineer
    Merge customers and preserve history

    A Meta software-engineer system-design take-home: implement mergeCustomers(oldId, newId) for a payments/ledger platform, absorbing one customer into another while preserving every account's balance and immutable transaction history. Tests identity unification, ownership remap, conflict/duplicate resolution, top-N leaderboard maintenance, atomicity, concurrency, idempotency, and complexity analysis.

    System DesignOnline Assessment
  • MicrosoftMediumSoftware Engineer
    Design a replicated key-value store with quorums

    This question evaluates understanding of replication, quorum protocols, data partitioning, consistency models, failure detection and recovery, and conflict resolution in distributed key–value stores.

    System DesignOnline Assessment
  • MicrosoftMediumSoftware Engineer
    Design device telemetry pipeline for real-time and batch

    This question evaluates a candidate's competency in distributed systems architecture, data engineering, and operational trade-offs involved in designing telemetry pipelines that support both near-real-time and batch analytics.

    System DesignOnline Assessment
  • MicrosoftMediumSoftware Engineer
    Design streaming error-log counting with moving average

    This question evaluates understanding of real-time stream processing concepts such as event filtering, stateful per-service counting, sliding-window moving averages, late-event handling, scalability, and fault-tolerant state management for monitoring and alerting.

    System DesignOnline Assessment
  • NVIDIAHardSoftware Engineer
    Build a Jenkins CI for graphics tests

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Build a Jenkins CI for graphics tests states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • NVIDIAHardSoftware Engineer
    Design a Dockerized GPU test pipeline

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design a Dockerized GPU test pipeline states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • OptiverHardSoftware Engineer
    Design a topic-based news subscription system

    This question evaluates system design skills for building a topic-based news subscription service, focusing on streaming ingestion, relevance filtering, sliding-window rate limiting, de-duplication, ordered delivery, and data structure choices for in-memory operation.

    System DesignOnline Assessment
  • PinterestMediumSoftware Engineer
    Design a Distributed Rate-Limiting Service

    Design a highly available, ultra-low-latency distributed rate-limiting service supporting multi-tier rules (user, tenant, route, global) across globally distributed edge gateways.

    System DesignOnline Assessmentsystem-designdistributed-systemsrate-limiting