~/talk

Migration without Migraines: Automatic Migration at Scale

links:none on file
links:none on file
slides:none on file

Square consolidates four Workflow versions by running a ktlint rule set (unit tested) invoked via a custom Gradle task and an IDE-accessible migration wizard, automating many changes but surfacing ~manual fixes. Over one year 50 developers across 25 teams migrate 220 Gradle modules and 580 screens, creating 286 Jira tickets; nightly repository analysis feeds dashboards. Outcomes: RxJava1 removed, APK size cut ~0.5 MB, some screens render up to 4x faster, and legacy APIs are cleaned up for a single Workflow v1.

AI-written summary · about

  1. 0:00Introduction to migration
  2. 3:04Why migrate to single version
  3. 5:50Expand flip contract strategy
  4. 8:20Challenges with manual migration
  5. 9:24KTLint as metaprogramming tool
  6. 11:52Migration wizard and pairing
  7. 13:37Demo of migration tools
  8. 16:50Early adopters and feedback
  9. 18:56Organizational process at scale
  10. 22:31Getting team buy-in
  11. 24:37Flexible migration approaches
  12. 25:41Visibility and progress tracking
  13. 26:46Final push and cleanup
  14. 29:17Benefits of early cleanup
  15. 31:11Final cleanup and results
  16. 33:01Final advice and recap
~/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.