fintech · 1000+ people · snapshot 2026-07-15 · not company-verified · stripe.com
Documented stack
Category
Tool
Since
Confidence
Source
language
RubyCore heritage language; product codebase described (circa 2017) as 'entirely implemented in a single Ruby monolith.' Stripe deliberately delayed decomposing this monolith until past 3,000 engineers, relying on Sorbet (see separate entry) to keep it productive rather than rewriting it.
SorbetCustom static type checker for Ruby, built in-house by Stripe's Product Infrastructure team starting ~2017 and open-sourced ~2019 (timeline via search synthesis, not independently confirmed against a primary dated source). Built instead of migrating the Ruby monolith to Java or Go, which was explicitly considered and rejected. Used to type-check Stripe's ~15 million lines of Ruby code.
TypeScriptStripe's largest JavaScript codebase (the Dashboard) was converted from Flow to TypeScript in a single pull request on Sunday, March 6, 2022, after roughly a year of tooling preparation. Conversion used a codemod built on top of Airtable's open-sourced Flow-to-TypeScript codemod, later open-sourced by Stripe itself. Scale is reported inconsistently across Stripe's own sources: the blog post's headline figure is 3.7 million lines (the single flagship PR); the codemod's GitHub repo description says 6.5m+ lines; its README says 4m+ lines total across usage. Not reconciled in any single Stripe source.
JavaScriptBase language of Stripe's largest frontend codebase (the Dashboard), underneath first Flow then TypeScript as the type-checking layer. Also listed among Stripe's primary languages on its own careers page.
JavaListed as one of Stripe's primary languages on a live 2026 careers page. Not present in the 2017-era internal stack diagnosis (which named only Ruby monolith, a narrow Golang service, and Scala data infrastructure) -- Java's footprint appears to have grown since, but no origin story or adoption date was found in this pass.
GoAs of ~2017, used for one narrow payment-tokenization service, deliberately kept small to bound SOC1 compliance scope. Still listed as a primary Stripe language on the current careers page.
ScalaAs of ~2017, used for Stripe's data infrastructure, managed independently by a relatively small group of data engineers. Still listed as a primary Stripe language on the current careers page.
AWSReported by AWS's own customer case study, not by a Stripe-authored page -- likely accurate and probably Stripe-reviewed as a reference customer, but marked reported per strict confidence rules since Stripe did not author the source.
Minions (internal coding agents)Stripe's homegrown, one-shot end-to-end coding agents, responsible for over 1,000 human-reviewed but fully agent-written pull requests merged per week as of early 2026. Reported (via search synthesis of press/social coverage, not a direct fetch of the full stripe.dev article body) to run in isolated 'devboxes,' built on a fork of Block's open-source Goose agent, connecting to 400+ internal MCP tools via an internal server called 'Toolshed.' A direct sequel to Stripe's pattern (seen with the TypeScript codemod) of building serious internal tooling on top of an external open-source base.
Flow (language) — Stripe's prior type checker for its largest JavaScript codebase (the Dashboard), replaced by TypeScript in a single pull request on March 6, 2022. Engineers reportedly struggled with Flow's memory usage locking up laptops and unreliable in-editor integration (via search synthesis of the stripe.dev migration post, not independently re-verified by direct fetch).
Methodology: research assisted by AI agents, verified and edited by a human. Spot an error? Suggest a correction via pull request or email us. Work at Stripe? Verify your record and get the ✓ badge.