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 5161–5190 of 5874 results

  • StripeMediumSoftware Engineer
    Debug a Tag Validator: Phantom Nulls, Buried Lists, Null vs Empty

    Given a small, working deserialization library with three planted bugs, trace each bad output back to its source, fix it in place, and add a regression test. Tests careful root-causing over quick patching, and recognizing which 'empty' representation should be canonical.

    Software Engineering FundamentalsTechnical Screendebuggingpythondata-validation
  • StripeMediumSoftware Engineer
    Debug a Toy HTTP Client That Hangs on a Redirected Streaming POST

    Find and fix a planted bug in a small hand-rolled Python HTTP client: a POST with a file-like body hangs forever after the server answers with a redirect, while a plain bytes body and a non-redirecting request both work fine.

    Software Engineering FundamentalsTechnical Screendebugginghttptesting
  • StripeHardSoftware Engineer
    Debug an HTTP Client That Hangs After a 307 Redirect With a Streamed Request Body

    A debugging exercise on the Python HTTP library Requests: a POST whose body is a file-like stream hangs until it times out after the server answers 307 Temporary Redirect. It tests redirect semantics, Content-Length framing, how a stream behaves when a request is resent, and regression testing of the fix.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Debug wrong DOM attributes in unknown framework

    This question evaluates a candidate's ability to debug frontend DOM attribute mismatches by understanding framework-specific attribute/prop reflection, template/JSX compilation, SSR/hydration differences, and build-toolchain interactions.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Describe adapting quickly to unfamiliar problems

    This question evaluates adaptability, rapid learning, prioritization, communication, and leadership under pressure as behavioral competencies in a software engineering context, and is categorized under Behavioral & Leadership.

    Behavioral & LeadershipTechnical Screen
  • StripeMediumSoftware Engineer
    Design a Count-Metrics Monitoring Platform

    Design a scalable count-metrics monitoring and alerting platform capable of tracking real-time event counts and rates, grouping by dimensional labels, handling duplicate/late events, and enforcing cardinality limits.

    System DesignOnsiteDistributed SystemsObservabilityStream Processing
  • StripeHardSoftware Engineer
    Design a Distributed Metrics Counter

    This question tests the ability to architect a highly available, scalable system for ingesting and aggregating high-throughput telemetry data while managing trade-offs between consistency and performance.

    System DesignOnsiteDistributed SystemsMetricsScalability
  • StripeHardSoftware Engineer
    Design a Feature Flag Service with Percentage Rollouts and Allow/Block Lists

    System design question: design a feature flag service, similar in spirit to Amazon's Weblab, that lets teams turn features on or off, roll them out to a percentage of users, and force them on or off with allow and block lists. It probes where flag checks run, how users are assigned consistently, and how changes reach every service safely.

    System DesignTechnical Screen
  • StripeHardSoftware Engineer
    Design a Fixed-Position Payment Command State Machine

    Design a fixed-position payment-command parser and state machine while preserving empty fields and clarifying approval, capture, cancellation, and retry semantics.

    Software Engineering FundamentalsOnline Assessment
  • StripeMediumSoftware Engineer
    Design a Merchant Ledger Service

    This question tests your ability to design a distributed ledger system that ensures high transactional integrity, strict consistency for financial balances, and reliable idempotency in a high-concurrency environment.

    System DesignOnsiteDistributed SystemsDatabase DesignConsistency
  • StripeMediumSoftware Engineer
    Design a Scalable Idempotent Ledger Service

    Design a high-throughput, fault-tolerant double-entry ledger service featuring immutable postings, strict write idempotency, and tunable balance freshness.

    System DesignTechnical ScreenDistributed SystemsDatabase DesignFinancial Systems
  • StripeMediumSoftware Engineer
    Design a String-Rule Validator for Transaction Records

    Specify transaction validation rules, parse them safely, evaluate name restrictions, and distinguish malformed input from ordinary rule rejection.

    Software Engineering FundamentalsOnsite
  • StripeMediumSoftware Engineer
    Design a Superhero Dispatch System

    This question evaluates a candidate's ability to design reliable, distributed backend systems with emphasis on transactional correctness, concurrency control for single-winner acceptance races, geo-spatial querying for proximity matching, eventing/notification pipelines, and operational observability for mission-critical dispatch.

    System DesignOnsite
  • StripeHardSoftware Engineer
    Design a local activity counter service

    This question evaluates a candidate's skills in designing large-scale distributed systems, focusing on near-real-time ingestion and aggregation, idempotency/deduplication, time-windowed (tumbling and sliding) analytics, hot-key sharding, storage and backfill strategies, and operational concerns including monitoring and privacy.

    System DesignTechnical Screen
  • StripeMediumSoftware Engineer
    Design a subscription email scheduler with changes and renewals

    This question evaluates event-driven scheduling, deterministic time-based ordering, stateful account updates for plan changes and renewals, and algorithmic merging of notification streams in the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • StripeMediumSoftware Engineer
    Design an Idempotent Double-Entry Ledger

    Design a highly reliable, idempotent double-entry ledger system that guarantees strict consistency, append-only immutability, and supports high-concurrency writes on hot accounts.

    System DesignTechnical Screensystem-designfintechdistributed-systems
  • StripeHardSoftware Engineer
    Design ledger and bikemap integration

    This question evaluates competency in designing strongly consistent financial ledgers and integrating an external routing service, testing data modeling, distributed transactions, linearizability and idempotency, scalability, security, API design, and observability in the System Design domain.

    System DesignOnsite
  • StripeMediumSoftware Engineer
    Design payment-to-invoice matcher with priorities

    This question evaluates parsing and data modeling skills, deterministic matching algorithms with prioritization and tie-breaking, handling monetary values as integer cents, and the ability to design comprehensive test suites for edge cases.

    Data Manipulation (SQL/Python)Technical Screen
  • StripeMediumSoftware Engineer
    Discuss challenging project examples

    Discuss challenging project examples 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 & LeadershipOnsite
  • StripeMediumSoftware Engineer
    Discuss compensation expectations and flexibility

    This Behavioral & Leadership interview question evaluates communication, negotiation, and compensation self-awareness for a Software Engineer by requesting a detailed breakdown of base salary, bonus, equity and benefits.

    Behavioral & LeadershipHR Screen
  • StripeMediumSoftware Engineer
    Discuss mentorship experience and outcomes

    This question evaluates mentorship, leadership, coaching, and impact-measurement skills in a software engineering context, focusing on quantifying mentee outcomes, managing scope across experience levels, and articulating lessons from challenging cases.

    Behavioral & LeadershipHR Screen
  • StripeMediumSoftware Engineer
    Discuss self-intro, location, pay, motivation

    This Stripe Software Engineer technical-screen question covers the opening conversation: a 60–90 second self-introduction, why-Stripe motivation and alignment, location and remote/time-zone preferences, compensation expectations with rationale, and the questions you should ask about team projects and org stability. It evaluates communication, self-presentation, logistical fit, and compensation transparency rather than coding skill.

    Behavioral & LeadershipTechnical Screen
  • StripeMediumSoftware Engineer
    Draw a Hiking Trail from GeoJSON with Markers and Color Bands

    Parse a hiking trail out of a GeoJSON LineString, build the request payload for a map-snapshot API, save the returned PNG, and add start/finish markers plus alternating-color bands along the route.

    Software Engineering FundamentalsOnsiteapi-integrationhttpjson
  • StripeMediumSoftware Engineer
    EV Charger Registry with Haversine Nearest-Station Routing

    Build an in-memory EV charging station registry with status tracking, a haversine distance function, and nearest-online-station routing with deterministic tie-breaks. Tests clean API design, careful spherical math, and corner-case handling.

    Software Engineering FundamentalsTechnical Screenclass-designgeometryhaversine
  • StripeMediumSoftware Engineer
    Evaluate Ordered Accept/Block Transaction Rules with AND, OR and Parentheses

    A three-part Python exercise, solved with an in-editor AI assistant, that evaluates an ordered list of accept or block rules against a transaction. Conditions grow from string equality to Boolean fields, AND and OR, and parentheses, testing tokenizing quoted values, operator precedence, first-match semantics and careful review of AI-written code.

    Software Engineering FundamentalsOnsite
  • StripeMediumSoftware Engineer
    Evaluate Ordered Access-Control Rules

    Implement an access-control evaluator that parses rule strings with conditions and returns the first matching decision (ACCEPT or BLOCK).

    Coding & AlgorithmsTechnical ScreenStringsParsingDesign
  • StripeEasySoftware Engineer
    Explain your tech stack choices

    This question evaluates a candidate's ability to articulate technology selection, operational experience, and trade-off reasoning across languages, frameworks, services, data stores, and infrastructure.

    Behavioral & LeadershipHR Screen
  • StripeHardSoftware Engineer
    Find Live Hand-Off Windows Between Follow-the-Sun Support Teams

    Find recurring weekly windows where at least two regional support teams are simultaneously online, after converting each team's local shift schedule to a shared UTC timeline and handling the week's wraparound, then filter by a lead time, a minimum overlap length and a results cap. Tests interval sweeping, time-zone arithmetic and turning a loosely specified brief into exact rules.

    Software Engineering FundamentalsOnline Assessmentintervalssweep-linetime-zones
  • StripeHardSoftware Engineer
    Find Weekly Deployment Windows Across Time Zones

    Determine the first k non-overlapping deployment windows across a 3-week search horizon by mapping weekly recurring local allow and freeze rules into a repeating UTC timeline.

    Coding & AlgorithmsOnline AssessmentIntervalsPrefix SumSliding Window
  • StripeMediumSoftware Engineer
    Find deployable slots in a recurring week from allowed and freeze windows

    A coding exercise on a recurring 10,080-minute week: combine allowed and freeze deployment windows into deployable slots, then add per-window time-zone offsets, the current time, a lead time, a minimum slot length and a cap of k results. It tests interval merging and subtraction, wrap-around at the week boundary and careful edge-case handling.

    Coding & AlgorithmsOnsite