Shitlist-driven development and other tricks for working on large codebases
summary
Shopify runs a single monolithic Rails app with ~800 contributors, ~50 deploys/day and 20–40k requests/sec, so deploy speed and coordination are critical. Techniques: Shiva (open‑source) auto‑deploys merges when CI passes, browser extension marks PRs “ready”, and teams use prebuilt containers, parallel CI, faster boot/shutdown to cut deploy time. For deprecations a shitlist whitelists existing bad call sites so fixes can land incrementally. For flaky tests they log failures to an exception service, run tests isolated 1,000× and use binary search to find leaking tests, restoring developer productivity.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:43Shopify
- 3:24Deploy
- 8:24Deployment
- 9:44Shiva
- 13:19Deprecations
- 29:58Questions
- 30:39Shopify decisionmaking process
- 30:53Safety tests
- 31:43Unstable tests
- 32:11Florians experience
related talks
34mShitlist-driven development and other tricks for working on large codebases
39mScaling R&D to thousands of people without dedicated QA
28mKeeping Developers Happy with a Fast CI
43mA day in the life of 2,000 developers
24mKeeping Code Style Sanity in a 13-year-old Codebase
23mKeeping Code Style Sanity in a 13-year-old Codebase
29mHacking Development Culture: Treating Developers As People
33mMeet Shopify's Ruby and Rails Infrastructure Team
