Scaling Slack’s Mobile Codebases: Modernization
Article Summary
Slack just wrapped a massive mobile refactor. The results? 68% of iOS and 92% of Android codebases modernized, with CI times slashed by over 60%.
This is the final chapter of Slack's Duplo initiative, where Principal and Staff engineers from iOS and Android share how they modernized their mobile architectures. Think custom VIPER variants, Combine migrations, and a shift from Gson to Moshi.
Key Takeaways
- iOS adopted custom VIPER architecture with strict linting against singletons and NotificationCenter
- Android migrated to Moshi, WorkManager, and internal Project Guinness networking wrapper
- Added 280 iOS and 330 Android modules with 50% local build improvements
- CI stability jumped from 77% to 90% on iOS year over year
- New 'Layers' system prevents circular dependencies across 600+ new modules
Critical Insight
Strategic modularization and modernization cut iOS merge times by 64% while creating sustainable foundations for SwiftUI and Jetpack Compose adoption.