Ben is an Staff Software Engineer on Airbnb’s Android Platform team. He has helped scale the Android codebase over the last seven years from a team of 12 centralized android developers, to close to a 100 yearly distinct contributors. Ben lives in Sausalito, CA.
Supercharging IDE and Sync Performance
15:25 > 40 min
Gradle sync times frequently present a bottleneck in Android development. Despite recent improvements to Gradle, Android Studio, and a highly modularized project, developers at Airbnb often found themselves spending up to seven minutes simply syncing code in Android Studio.
To address this, Airbnb's developer platform team recently introduced "AAR syncs", a method that substitutes over 90% of the code the average developer syncs and loads into Android Studio with pre-built binaries. This technique has reduced sync time by more than 60%. It also spurred the development of an IDE plugin that ensures only the minimal set of code is loaded in the IDE with just the click of a button, and bridges the complexities of arbitrarily mixing project modules with AARs. This project has become known as "Android Studio Focus Mode", and was the most frequently cited improvement in Android development according to Airbnb's recent internal developer survey.
- Understand the strategic role of feature-based modularization in enabling performant infrastructure
- Discover the Gradle APIs and CI infrastructure required to enable AAR publishing and substitution in your projects
- See how to leverage Android Studio (IntelliJ) plugins to create custom infrastructure that integrates seamlessly into your development experience, as though it were a native Android Studio feature
Additionally, this talk will provide insights into how a larger Android team approaches a major infrastructure project, from ideation to execution. It will equip attendees with a strategy to implement a similar system within their own companies.