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 2611–2640 of 9403 results

  • CrowdstrikeMediumSoftware Engineer
    Implement an In-Memory Key-Value Cache with Expiry, Then Sketch a Redis-Like Server

    Implement an in-memory key-value cache in the spirit of Redis, with get, set, delete and per-key expiry, then briefly discuss how a Redis-like server is built and where caches fit in a system. It tests data structure choices, expiry and eviction logic, thread safety, and practical knowledge of caching patterns.

    Software Engineering FundamentalsOnsite
  • CrowdstrikeMediumSoftware Engineer
    Maximize the minimum value along a grid path

    This problem tests your ability to combine binary search on the answer with graph traversal techniques (BFS/DFS/Union-Find) to solve optimization problems on a 2D grid.

    Coding & AlgorithmsOnsiteBinary SearchBFSDFS
  • CrowdstrikeMediumSoftware Engineer
    Review a Sample Python Function Aloud and Label Every Finding by Severity

    Review a short hypothetical Python function that builds a user profile from a database query and a billing-service call, narrating your reasoning aloud. The exercise tests how you read unfamiliar code and whether every comment is clearly labeled as must-fix, could-improve or a personal preference.

    Software Engineering FundamentalsOnsite
  • CrusoeMediumSoftware Engineer
    Calculate charge with a single price override

    This problem tests your ability to handle overlapping time intervals and apply conditional overrides to calculate the total charge for a billing period.

    Coding & AlgorithmsTechnical ScreenIntervalsArraysLogic
  • CrusoeEasySoftware Engineer
    Design a Slack-Like Messaging Platform

    Design a real-time team messaging platform supporting channels, direct messages, message persistence, and presence tracking. The design tests your ability to model conversations, ensure reliable and ordered message delivery, and handle high-throughput fan-out.

    System DesignOnsiteDistributed SystemsWebSocketsPub/Sub
  • CrusoeEasySoftware Engineer
    Implement Interval Overrides and Top-K Strings

    Implement interval override logic for half-open ranges and calculate the top-k labels based on total active duration with lexicographical tie-breaking.

    Coding & AlgorithmsOnsiteintervalssortinghash-table
  • CubistMediumSoftware Engineer
    Design a class to submit jobs with dependencies and track their status

    Design and implement a job tracker class that accepts job submissions with dependencies, hands out jobs that are ready to run, and reports each job's status. It tests state-machine design, dependency-graph bookkeeping, handling of failures and cycles, and thread safety when several workers call the class at once.

    Software Engineering FundamentalsTechnical Screen
  • CubistMediumSoftware Engineer
    Design a reusable event-driven framework for trading strategies

    Design a reusable, event-driven framework for trading strategies that a team can keep extending after a take-home handoff. It tests event modeling and dispatch ordering, strategy interfaces, backtest and live parity, order and risk management, and the tests and documentation that make a framework maintainable.

    Software Engineering FundamentalsTechnical Screen
  • CubistMediumSoftware Engineer
    Rebuild a binary search tree from its postorder traversal in linear time

    Rebuild a binary search tree with distinct values from its postorder traversal and return the rebuilt tree's preorder traversal. The problem tests BST ordering properties, traversal orders, and meeting a strict O(n) time bound on inputs that include deeply skewed trees.

    Coding & AlgorithmsTechnical Screen
  • CurrentMediumSoftware Engineer
    Describe a previous project and outcomes

    Describe a previous project and outcomes evaluates behavioral evidence, ownership, communication, trade-offs, and measurable outcomes in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Behavioral & LeadershipTechnical Screen
  • CurrentHardSoftware Engineer
    Design a metrics monitoring system

    Design a metrics monitoring 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 DesignTechnical Screen
  • CursorMediumSoftware Engineer
    Build a Merkle Tree over a Directory with Hash Lookup and Tree Diff

    Implement a Merkle tree over a real directory in Python, with N-ary directory nodes, a build method, a hash lookup by path, and a diff that compares two trees, and write the tests yourself. It tests deterministic hashing design, file-system traversal, pruning identical subtrees, and disciplined testing under time pressure.

    Software Engineering FundamentalsTechnical Screen
  • CursorHardSoftware Engineer
    Build a Streaming Markdown Code Fence Parser

    Tests streaming string processing, finite state machine design, and edge-case handling for incrementally received Markdown code fences.

    Software Engineering FundamentalsTechnical ScreenStreamingFinite State MachineParsing
  • CursorMediumSoftware Engineer
    Connect a Project Deep Dive to Engineering Career Decisions

    Connect a technical project deep dive with engineering career decisions, using clear ownership, interface trade-offs, validation, and lessons learned.

    Behavioral & LeadershipTechnical Screen
  • CursorMediumBackend Engineer
    Design Scalable Notification Rate Limiter

    This question evaluates expertise in designing distributed rate-limiting systems with hierarchical quotas, focusing on concurrency control, exact rolling-window counting, and correctness under concurrent stateless servers; it belongs to the System Design domain and tests practical application of distributed systems, storage, and API design as well as conceptual understanding of atomicity and consistency. It is commonly asked to assess reasoning about atomic decision-making across multiple scopes, scalability and partitioning strategies, handling reconfiguration and operational concerns, and the trade-offs between correctness and system performance (English).

    System DesignTechnical Screen
  • CursorMediumSoftware Engineer
    Design Versioned IDE Settings for Users and Teams

    Design a distributed, hierarchical configuration management service for an IDE that synchronizes versioned settings across individual users, multiple teams, and workspaces while supporting offline modifications and deterministic conflict resolution.

    System DesignTechnical ScreenDistributed SystemsOffline SyncData Modeling
  • CursorMediumSoftware Engineer
    Design a Durable Cron Job Scheduler

    Design a cron scheduler with durable occurrences, timezone rules, missed-run policies, worker leases, idempotent dispatch, and failure recovery.

    System DesignTechnical Screen
  • CursorMediumSoftware Engineer
    Hash a Repository with a Merkle Tree and Find Changed Files

    Hash a repository with canonical Merkle nodes, compare changed subtrees, report file changes, and account for symlinks, cached hashes, and snapshot limits.

    Software Engineering FundamentalsTechnical Screen
  • CursorMediumSoftware Engineer
    Implement Deterministic Merkle Hashing for a Repository

    Implement an incremental, deterministic Merkle tree for a virtual repository file system with stable serialization, child ordering, and ancestor cache invalidation.

    Software Engineering FundamentalsTechnical ScreenMerkle TreeData StructuresFile Systems
  • CursorMediumSoftware Engineer
    Implement a Merkle Tree for Repository Contents

    Implement a Merkle tree to model repository file systems and efficiently compute differences between two repository states using subtree hashes.

    Software Engineering FundamentalsTechnical ScreenMerkle TreeTreesHashing
  • CursorHardSoftware Engineer
    Implement a Merkle-tree repo diff

    This question evaluates a candidate's understanding of Merkle trees, filesystem-aware hashing, directory traversal, and diff algorithms for detecting file-level changes.

    Coding & AlgorithmsTechnical Screen
  • CursorMediumSoftware Engineer
    Implement and Explain a Merkle Tree

    Tests understanding of cryptographic hash trees (Merkle trees), including tree construction, odd-node handling, proof generation, and verification.

    Software Engineering FundamentalsTechnical Screencryptographydata-structurestrees
  • DRWEasyQuantitative Trader
    Analyze distribution of a 3-dice product

    This question tests the ability to analyze the probability distribution of the product of three independent discrete random variables and apply these statistical properties to practical risk management.

    Statistics & MathOnline AssessmentProbabilityExpectationStatistics
  • DRWMediumMachine Learning Engineer
    Build pipeline for imbalanced classification

    This interview question evaluates ML product requirements, data/labeling, modeling, serving architecture, evaluation, monitoring, and trade-offs in a realistic interview setting. A strong answer for Build pipeline for imbalanced classification states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    ML System DesignOnline Assessment
  • DRWMediumData Scientist
    Compute Markov steady state and expectations

    Compute Markov steady state and expectations evaluates statistical assumptions, formulas, estimation strategy, uncertainty, edge cases, and interpretation in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Statistics & MathOnsite
  • DRWEasyData Engineer
    Compute a Year-End Balance with Monthly Card Fees

    This problem tests logic implementation and data structure traversal, requiring the integration of conditional logic (fee waivers) into a sequential processing pipeline.

    Coding & AlgorithmsOnline AssessmentData ProcessingLogicAggregation
  • DRWEasyQuantitative Trader
    Compute expected arc length on a circle

    This question evaluates understanding of geometric probability, order statistics on a circle, and expectation computation for continuous random variables.

    Statistics & MathOnline Assessment
  • DRWEasyData Engineer
    Delete the Fewest Characters to Avoid Triple Repeats

    This problem tests string manipulation, greedy algorithm logic, and the ability to track character frequency counts to identify and prune violations of a constraint.

    Coding & AlgorithmsOnline AssessmentStringsGreedyArrays
  • DRWEasyData Scientist
    Derive eigenvalues and sum for inverse matrix

    Derive eigenvalues and sum for inverse matrix evaluates statistical assumptions, formulas, estimation strategy, uncertainty, edge cases, and interpretation in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Statistics & MathOnsite
  • DRWMediumData Scientist
    Differentiate sample vs population standard deviation

    This interview question evaluates statistical assumptions, formulas, estimation strategy, uncertainty, edge cases, and interpretation in a realistic interview setting. A strong answer for Differentiate sample vs population standard deviation states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Statistics & MathTechnical Screen