Stripe

fintech · 1000+ people · snapshot 2026-07-15 · unverified · stripe.com

Current stack

CategoryToolSinceConfidenceSource
languageRubyCore 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.confirmedjob-post
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.2017confirmedeng-blog
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.2022-03confirmedeng-blog
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.confirmedjob-post
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.confirmedjob-post
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.confirmedjob-post
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.confirmedjob-post
hostingAWSReported 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.2011reportedpress
orchestrationMinions (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.2025confirmedeng-blog

Migrated away from

Sources

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.