Netflix + Gradle A Journey in Developer Productivity
summary
Case study of Netflix + Gradle shows concrete fixes: use Gradle Profiler and build scans to spot cache misses, enable local + remote build cache to seed developers from CI, and tighten modules with API/implementation separation plus Dagger Hilt. Fixes include removing time‑stamps that caused 500 tasks reexecuted, disabling unnecessary plugins, using version catalogs and dependency locking, and patching nondeterministic codegen; result is assembleDebug down from 7 to 2 minutes and PR builds dropping from ~39 to ~25 minutes on average.
AI-written summary · about
chapters (23)
- 0:00Introduction to talk
- 1:17Netflix Android build overview
- 4:51Identifying build bottlenecks
- 6:39Fixing incremental build issues
- 8:29Optimizing Gradle plugins
- 10:16Modularization benefits
- 13:49Tooling for module creation
- 15:18Build caching strategies
- 17:27Gradle profiler usage
- 19:34Remote build cache setup
- 21:00Build scans for analysis
- 24:12Cache miss troubleshooting
- 27:03Cache optimization results
- 28:29Cache regression fixes
- 30:15Java version cache issues
- 33:08AGP 7.1 lint improvements
- 34:33Code generation cache fixes
- 36:01Automated build validation
- 36:21Dependency management issues
- 37:04Version catalog benefits
- 39:08Dependency locking for safety
- 41:41Dependency visualization
- 42:03Q&A and closing remarks
related talks
54mDeveloper Productivity Engineering Deep Dive
36mDeveloper Productivity Engineering: What's in it for me?
36mImproving Gradle Builds
37mBecoming and Staying a Productive Developer with Build Scans, Build Validation Scripts and Gradle
51mCreate Elegant Builds At Scale With Gradle
27mDeveloper Experience: It’s Time to Start Complaining
33mKeeping your Gradle builds in top shape
01h 01mImprove Java build performance with Gradle 5
