John R.webp

Automated migration of Android apps to Bazel build system

Pavlo Stavytskyi

Software Engineer


Migrating large projects that consist of hundreds or thousands of modules and being maintained by a large team, from Gradle to Bazel might be challenging. I would like to discuss the process of automation of the migration that includes the development and usage of a Gradle plugin as well as a type-safe and declarative Kotlin DSL for Bazel code generation.
An automated migration can save a lot of time and effort for organizations by making the transition to Bazel build system smoothly and allow to enjoy the benefits Bazel provides much sooner.
The ideas that will be discussed in this talk were used in the project for automated migration to Bazel, called Airin:
More information about it could be found in the talk from BazelCon 2021:
Or in this blog post:

Pavlo is a Google Developer Expert for Android and works at Lyft on mobile infrastructure. He develops Android apps, absolutely loves Kotlin language, works with build systems such as Gradle and Bazel, and writes blog posts about it.
He is also doing a Ph.D. in software engineering.