Stripe builds the economic infrastructure for the Internet. Each year we handle billions of dollars on behalf of Internet businesses — and most of the logic for handling that money is written in Ruby. Ruby’s dynamic types made for high initial developer velocity, but over time as the codebase grew that same feature became a hindrance. With millions of lines of code already written and hundreds of engineers writing more each day, Stripe decided to create a fast, gradual typechecker for Ruby, called Sorbet. Come hear about the process of developing Sorbet, some of the problems it seeks to solve, and some perspective on types and programming language design from an industry perspective.
Stephen is a software engineer, since 2005. Now working as an engineer on Global Payments at Stripe, he’s had the fortune to work with amazing teams at scrappy startups, on building brand new payment innovations from the ground up at MasterCard Labs, and on high-throughput, world-impacting services at Twitter. Most recently he’s been working in Scala, React and Ruby, from monoliths to micro-services, and back.