Efficient Android Builds at Scale: Lessons from Pinterest
summary
Pinterest runs 458 modules across about 30,000 CI builds/month and 100 active Android engineers, uses Gradle with three-tier caching and a warmed inner Docker image to prime local caches, and achieves a 41s P50 local assemble with a 5.5m full build P50. Engineering adds convention plugins, an Android Studio plugin, a cache prefetcher that fetches remote keys at checkout, and CI split across EC2 node classes; CI goals target 15m PR P50 and 97% master success rate.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 1:04Pinterest’s Android build scale
- 2:09Gradle build phases and caching
- 5:01Project setup and tools
- 7:28Convention plugins and dependencies
- 9:32Local build metrics and goals
- 11:01Gradle configuration cache
- 12:46FastDev debug variant
- 14:35CI workflow and PR checks
- 16:17CI build metrics and rates
- 17:20CI infrastructure and nodes
- 20:10Docker setup and optimization
- 21:36GitHub checks and automation
- 22:40Monitoring slow CI steps
- 23:44Build health process
- 24:47Balancing quantitative and qualitative data
- 25:50Developer experience and hiring
related talks
30mHow we brought down our build times. General optimization tips
41mHow Are Other Teams Doing It? Lessons in CI/CD from 3500 Android Teams
48mOptimizing Android Build Performance
43mThe Engineering Playbook for Growing Android Teams
25mDevOps for Android supercharged with AI
01h 00mAndroid at Scale
12mEngineering Productivity, Infrastructure
24mLessons in CI_CD from 3500 Android Teams
