400 fragments in 40 days
summary
Pinterest migrates roughly 445 fragments in 40 days from a bespoke screen manager into Jetpack Navigation by pivoting from a full rewrite to a phased plan: implement modern lifecycle readiness first, certify fragments (zero-arg constructors, no field access before super.onCreate), convert a giant root fragment to Kotlin, add linters/codegen/templates, and build a developer playground to launch migrated fragments. Tooling includes Jetpack Navigation, Hilt DI, automated tests, feature flags and rollback plans.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:51Team structure at Pinterest
- 3:17Legacy navigation challenges
- 8:31Forcing functions for migration
- 9:53Initial migration attempts
- 15:55Why forked architecture failed
- 17:19Redefining project scope
- 19:05Fragment certification
- 20:30Managing stakeholder expectations
- 23:20Key takeaways from migration
- 25:07Summary
related talks
38mPutting a Jetpack on your legacy codebase
30mFragments: What are they good for.
44mMigrating Android apps from Fragments to Jetpack Compose
18mCompose Adoption at Pinterest: A Postmortem
18mFragments: The good (non-deprecated) parts
44mReflections on a Year of Compose
46mAndroid Jetpack: How to smartly use fragments in your UI
37mForging the path from monolith to multi-module app
