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 2431–2460 of 2810 results

  • StripeMediumSoftware Engineer
    Audit a Vendor CSV for Gaps, Banned Terms and Name Mismatches

    Build a configurable validator for vendor onboarding CSV rows that flags missing fields, out-of-range lengths and banned words, then checks whether a vendor's display name and legal name share enough words.

    Software Engineering FundamentalsTechnical Screencsv-parsingvalidationtext-normalization
  • StripeHardSoftware Engineer
    Build a Content-Moderation Rule Engine With Boolean Chains and Nested Groups

    Grow a small text-driven policy engine, in stages, from one comparison per post into a full boolean expression language with left-to-right AND/OR and nested parentheses, while treating an AI pair-programmer as a junior you're delegating narrow, well-specified tasks to.

    Software Engineering FundamentalsTechnical Screenparsinginterpreterssoftware-design
  • StripeHardSoftware Engineer
    Build a Transaction Rule Engine with AND/OR Chains and Nested Parentheses

    Multi-part coding exercise: build a rule engine that accepts or denies payment transactions by evaluating text conditions over their attributes. The parts add single comparisons, then AND/OR chains evaluated strictly left to right, then nested parentheses. It tests parser design, modular code, and directing an AI coding assistant.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Calculate transaction fees from CSV records

    Implement a fee calculation engine that parses CSV transaction records, applies multi-attribute pricing rules and merchant volume discounts, and accurately rounds fee amounts in cents.

    Coding & AlgorithmsTechnical ScreenDesign PatternString ParsingState Tracking
  • StripeMediumSoftware Engineer
    Compute costs with validation and sorting in Python

    This question evaluates proficiency in data validation, numeric robustness, error handling, aggregation, per-item cost computation and deterministic sorting within Python-based data manipulation tasks, and it belongs to the Data Manipulation (SQL/Python) domain.

    Data Manipulation (SQL/Python)Technical Screen
  • StripeMediumSoftware Engineer
    Data Center Health Registry, Haversine Distance and Nearest-Healthy Routing

    A three-part coding exercise: register data centers with locations and health states, compute great-circle distances with the haversine formula, then route each client to the nearest healthy data center. It tests clean class design, correct spherical distance math, tie-breaking and corner-case handling under time pressure.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Debug Colander Output Bugs: Stray None, Nested Lists, and Empty List Versus Null

    A debugging exercise in the Colander validation library, where recorded results contain stray None values, nested lists that should be flat, and an inconsistent mix of empty lists and null. It tests tracing bad output back to the code that produces it, safe list flattening, None handling and choosing one canonical empty value.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Debug Three Planted Bugs in the Mako Python Template Engine

    A bug-squash exercise on a copy of the Mako Python template engine with planted bugs: lambda parameters vanish from regenerated code, a directory is mistaken for a template during lookup, and a comment-only control block fails to compile. It tests tracing failures through a template compiler, minimal library fixes and regression tests.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Debug a POST With a Stream Body That Hangs After a 307 Redirect in Python Requests

    A debugging exercise in the Python Requests library: a POST with a file-like body hangs after a 307 Temporary Redirect until the client times out. It tests reasoning about the bytes on the wire, HTTP redirect semantics, stream state across a re-sent request, and writing a deterministic regression test.

    Software Engineering FundamentalsTechnical Screen
  • 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
  • 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
  • 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
  • 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
  • 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 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
    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 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
  • StripeMediumSoftware Engineer
    Find linked merchants by shared fields

    This question tests the ability to model entity relationships using a graph representation and implement a traversal algorithm to identify connected components based on shared identity fields.

    Coding & AlgorithmsTechnical ScreenGraphsHash MapsDisjoint Set Union
  • StripeMediumSoftware Engineer
    Find linked user records by similarity

    This question evaluates the ability to compute weighted field-based similarity and reason about adjacency relationships in an undirected graph, testing competencies in similarity scoring, record linkage, and basic graph traversal.

    Coding & AlgorithmsTechnical Screen
  • StripeMediumSoftware Engineer
    Find linked user records by weighted similarity

    This problem tests your ability to model relationships as a graph and compute connected components based on weighted similarity scores between user records.

    Coding & AlgorithmsTechnical ScreenGraphDSUOptimization
  • StripeHardSoftware Engineer
    Fix Three Mako Template Bugs: AST Arg Visitor, Directory Lookup, Comment-Only Blocks

    A debugging exercise on Mako, the open-source Python template library, with three injected defects: an AST visitor missing its visit_arg method, a template lookup that fails on a directory path, and comment-only control blocks that do not compile. It tests NodeVisitor dispatch, reading generated code, minimal fixes and regression tests.

    Software Engineering FundamentalsTechnical Screen
  • StripeMediumSoftware Engineer
    Fix Three Planted Bugs in a Tiny Python Template Engine

    Trace three reported failures in a small template engine to their root causes (a greedy regex, a nesting-unaware block parser and a path-traversal hole), fix each minimally and add regression tests. Tests systematic debugging across tokenizer, parser and loader layers.

    Software Engineering FundamentalsTechnical Screendebuggingregexparsing
  • StripeHardSoftware Engineer
    Generate Available 30-Minute Time Slots

    This problem tests your ability to manipulate time intervals, handle recurring weekly schedules, and perform intersection logic between availability windows and existing booked appointments.

    Coding & AlgorithmsTechnical ScreenIntervalsDatetimeScheduling
  • StripeMediumSoftware Engineer
    Ground Station Registry With Great-Circle Nearest-Online Routing

    Build an in-memory registry of satellite ground stations with status tracking, implement the haversine great-circle distance formula, then route an uplink request to the nearest online station. Tests clean API design, careful spherical math, and corner-case handling under time pressure.

    Software Engineering FundamentalsTechnical Screenclass-designgeometryhaversine