Katkat

practice a little every day, paws crossed ♡

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 7261–7290 of 9403 results

  • RipplingHardSoftware Engineer
    Design a Google News-like aggregator

    This question evaluates system design skills for building a large-scale, multi-region news aggregation platform, assessing competencies in ingestion architecture, deduplication and clustering, indexing and retrieval, personalization and ranking, and operational concerns like monitoring, consistency, and compliance.

    System DesignOnsite
  • RipplingHardSoftware Engineer
    Design a Hotel Booking System

    This question tests your ability to design a distributed system that manages transactional integrity, high concurrency during bookings, and efficient searching for room availability.

    System DesignOnsiteConcurrencyDatabase ModelingDistributed Systems
  • RipplingMediumSoftware Engineer
    Design a Hotel Search and Reservation System

    Design an end-to-end hotel search and booking platform balancing high-throughput search with strictly consistent, transactional room inventory management across continuous date ranges.

    System DesignOnsitesystem-designdistributed-systemsconcurrency
  • RipplingMediumSoftware Engineer
    Design a Logger with Independent Handlers

    Design an extensible, thread-safe in-process logging framework that supports multiple isolated handlers, immutable log records, backpressure handling, and dynamic handler registration.

    Software Engineering FundamentalsTechnical ScreenObject-Oriented DesignConcurrencyAPI Design
  • RipplingMediumSoftware Engineer
    Design a News Aggregation Feed

    This question evaluates expertise in large-scale system design—specifically data ingestion, article clustering/deduplication, feed ranking and personalization, API and data-model design, scalability, reliability, and monitoring—within the System Design domain.

    System DesignTechnical Screen
  • RipplingMediumSoftware Engineer
    Design a News Aggregation Service

    Design a scalable news aggregation platform that ingests high-volume publisher feeds, clusters and deduplicates coverage into cohesive stories, and serves fresh, personalized feeds with sub-second latency.

    System DesignTechnical ScreenData PipelinesClusteringCaching
  • RipplingMediumSoftware Engineer
    Design a News Aggregation System (Google News-style)

    Design an end-to-end news aggregation platform that ingests articles at scale, deduplicates syndicated content, clusters articles into evolving story threads, and serves low-latency feeds.

    System DesignTechnical ScreenDistributed SystemsData PipelinesClustering
  • RipplingMediumBackend Engineer
    Design a News Aggregator That Builds Personalized Feeds from Publisher APIs

    System design question on building a news aggregator that polls many publisher APIs, stores only article metadata, and serves each user a paginated feed from the publishers and categories they follow. It tests polling schedules and stop conditions, rate-limit and outage handling, feed merging with deduplication, stable cursors, and bounded storage.

    System DesignOnsite
  • RipplingMediumSoftware Engineer
    Design a Personalized News Feed Aggregator

    Design a personalized news-feed system that ingests articles from many sources and builds a home feed. Connect requirements and APIs to data modeling, consistency, scaling, failure recovery, observability, and the important design trade-offs.

    System DesignOnsite
  • RipplingMediumSoftware Engineer
    Design a Rule Evaluation Engine for Spending Policy Violations

    This problem tests your ability to design a scalable, extensible rule engine that evaluates financial transactions against dynamic spending policies.

    Software Engineering FundamentalsTechnical ScreenSystem DesignRule EngineStrategy Pattern
  • RipplingMediumSoftware Engineer
    Design a Scalable News Feed

    This problem tests your ability to design a high-scale feed delivery system, specifically focusing on the trade-offs between 'push' (fan-out) and 'pull' (fan-in) models for delivering content to users.

    System DesignOnsiteScalabilityDatabase ShardingCaching
  • RipplingMediumSoftware Engineer
    Design a User Behavior Tracking (Clickstream Analytics) System

    Design a scalable clickstream analytics pipeline capable of ingesting high-throughput user interaction events, handling duplicate and out-of-order data, and supporting both real-time aggregated dashboards and raw behavioral query paths.

    System DesignTechnical ScreenStream ProcessingData PipelinesOLAP
  • RipplingMediumSoftware Engineer
    Design a delivery cost system

    A Rippling software-engineer system-design screen: build an object-oriented, in-memory delivery cost dashboard that registers drivers with hourly rates, records completed deliveries, and reports total cost, paid and unpaid amounts via an idempotent payUpTo cutoff, and the maximum number of drivers simultaneously delivering in the last 24 hours. It tests time-interval modeling, exact monetary arithmetic without floating-point drift, sweep-line concurrency counting, idempotency, time-zone handling, and thread-safe O(1) dashboard reads. The walkthrough covers both prorated and whole-delivery payment semantics, a full Python reference implementation, and the production hardening a real payroll service would need.

    System DesignTechnical Screen
  • RipplingHardSoftware Engineer
    Design a flexible expense reimbursement system

    This question evaluates system design and architecture skills for building a policy-driven, explainable expense reimbursement platform, specifically testing competencies in rule engines and DSL/config design, versioning and immutable evaluations, group-level aggregation and conflict resolution, data modeling and partitioning for scale, API and workflow design, observability/auditing, and access control. As a System Design interview prompt it is commonly asked because it forces candidates to articulate trade-offs between extensibility, explainability, consistency, and performance; the assessment targets practical application of architectural principles with strong conceptual reasoning.

    System DesignTechnical Screen
  • RipplingHardSoftware Engineer
    Design a hotel search and booking system

    This question tests the ability to design a distributed, high-concurrency reservation system that handles inventory management, consistency, and search efficiency.

    System DesignOnsiteDistributed SystemsConcurrencyDatabase Sharding
  • RipplingMediumSoftware Engineer
    Design a large-scale news app with caching

    This question evaluates a candidate's ability to design a scalable news application with emphasis on caching strategies and cross-device read-state synchronization, assessing skills in system architecture, API design, data modeling, distributed caching, and consistency handling.

    System DesignOnsite
  • RipplingMediumSoftware Engineer
    Design a music player with favorites cap

    This question evaluates a candidate's ability to design and implement in-memory data structures, stateful APIs, concurrency handling, deterministic policy enforcement for a fixed-capacity favorites feature, and reasoning about edge cases like removing the currently playing track or handling invalid IDs.

    Coding & AlgorithmsOnsite
  • RipplingHardSoftware Engineer
    Design a news aggregation and feed service

    This question tests the ability to design a distributed system capable of ingesting high-frequency news feeds from multiple sources and serving personalized, low-latency content to millions of users.

    System DesignOnsiteScalabilityCachingMicroservices
  • RipplingMediumSoftware Engineer
    Design a news aggregator like Google News

    This problem tests your ability to design a distributed system that fetches, normalizes, and ranks news articles from various heterogeneous sources while maintaining high availability and low latency for users.

    System DesignTechnical ScreenDistributed SystemsCachingScalability
  • RipplingMediumSoftware Engineer
    Design a personalized news aggregator

    This question evaluates a candidate's competence in large-scale system design, covering concepts such as high-throughput API ingestion, idempotent processing and deduplication, indexing and storage, caching, and low-latency personalized feed generation.

    System DesignOnsite
  • RipplingHardSoftware Engineer
    Design a real-time delivery dashboard

    This question evaluates skills in designing scalable, low-latency real-time distributed systems—covering event ingestion and streaming, geospatial indexing, state management, consistency and availability trade-offs, fault tolerance, monitoring, and cost/performance considerations—and is categorized under System Design.

    System DesignTechnical Screen
  • RipplingHardSoftware Engineer
    Design a scalable expense rules engine

    This question evaluates system-design and data-modeling competency for building a scalable, multi-tenant rules engine (category: System Design) that supports per-entity and aggregate (trip-level) evaluations, backward-compatible APIs, explainability/auditability, parsing/validation of string-typed inputs, and operational concerns like determinism, idempotency, and resilience. It is commonly asked to assess trade-off reasoning around extensibility, evaluation semantics (priority, combinators, short-circuiting), aggregation and caching strategies, and API/data-model stability, with a level of abstraction that is practical application focused while requiring conceptual architectural trade-offs and concrete design details.

    System DesignTechnical Screen
  • RipplingMediumSoftware Engineer
    Design a scalable logging system

    This question evaluates a candidate's ability to design scalable, reliable logging and observability infrastructure, testing competencies in distributed systems, ingestion pipelines, indexing and data modeling, storage and retention policies, multi-tenancy, and performance/reliability trade-offs.

    System DesignOnsite
  • RipplingMediumSoftware Engineer
    Design a user behavior monitoring system

    This question evaluates a candidate's ability to design scalable, low-latency user event ingestion and analytics pipelines while reasoning about data storage choices and aggregate correctness trade-offs.

    System DesignOnsite
  • RipplingHardSoftware Engineer
    Design a user behavior tracking system

    This question evaluates competency in designing scalable event-driven systems, covering client SDKs and server ingestion, buffering and delivery guarantees, schema evolution, storage trade-offs for interactive dashboards versus large-scale warehousing, enrichment placement, and privacy/compliance controls.

    System DesignTechnical Screen
  • RipplingMediumSoftware Engineer
    Design an Extensible Expense Rule Engine

    Design an extensible expense rule engine that reports every applicable violation for each expense. The answer separates rule implementations from the evaluation loop, defines deterministic structured results and money handling, and covers boundary tests, malformed data, rule versioning, aggregate-rule extensions, and OOP trade-offs.

    Software Engineering FundamentalsTechnical Screen
  • RipplingHardSoftware Engineer
    Design an Extensible Expense Validation Engine

    Design an object-oriented validation engine that evaluates an expense report against modular, multi-scoped policies and aggregates all policy violations.

    Software Engineering FundamentalsTechnical Screenobject-oriented-designclean-architecturehash-table
  • RipplingMediumSoftware Engineer
    Design an ad-click aggregation and enrichment pipeline

    This question evaluates system design and data engineering competencies, focusing on large-scale streaming ingestion, aggregation, enrichment joins, deduplication, and trade-offs between request batching and latency for mobile networks.

    System DesignOnsite
  • RipplingMediumSoftware Engineer
    Design an extensible expense rule evaluator

    This problem tests your ability to design a flexible and extensible rule evaluation engine capable of processing expense reports against dynamic business policies.

    Software Engineering FundamentalsTechnical ScreenSystem DesignDesign PatternsExtensibility
  • RipplingMediumSoftware Engineer
    Design an extensible poker-hand evaluator

    This question evaluates object-oriented design and software architecture skills, specifically the ability to define modular classification and comparison responsibilities for a game-hand evaluator as part of Software Engineering Fundamentals.

    Software Engineering FundamentalsTechnical Screen