~/talk

A day in the life of 2,000 developers

Talkat Friendly.rb 2024 · 2024-09-18..09-19· [ruby-on-rails, ruby]
links:none on file
slides:none on file

Stripe runs a ~25M-line Ruby monorepo with 1.5 million tests that would take two months on one machine, so CI uses file-access tracing (LD_PRELOAD now, moving toward eBPF) to map tests to files and cut runs to ~1,000–2,000 tests — a 99.5% reduction with ~1% flake. Tooling includes Sorbet types, VS Code LSP, a Rust rubyfmt and rubocop. Merges use integration branches and deploys use blue‑green traffic shifts, enabling traffic-shift rollback in 1s.

AI-written summary · about

  1. 0:00Introduction and context
  2. 1:03Who is Stripe and what it does
  3. 2:49Debugging a currency issue in production
  4. 7:23Benefits of static type checking
  5. 9:07Running CI at massive scale
  6. 12:57Smart test selection for CI
  7. 17:11Integration branches for safe merges
  8. 19:37Q&A begins
  9. 20:00Optimizing container builds
  10. 22:07QA and pre-production testing
  11. 24:51Automated traffic shifting in production
  12. 25:53Optimizing Ruby process startup
  13. 27:14Upgrading to Ruby 3.3 and YJIT
  14. 28:36Closing remarks and Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.