Join us for the next DPE Lowdown - July 11th 2024 - 10 AM PDT Save your spot
Building a Gradle-based Monorepo for Kotlin Backends Logo

Ashwin Kachhara

Software Engineer

DoorDash

SESSION

Summit producer highlights:

Monorepos are powerful tools to drive code standardization and boost engineering velocity. Moreover, they allow for centralized enforcement of platform standards and simplified dependency management, allowing developers to focus almost exclusively on business logic. All of this comes at the investment cost of dedicated staffing and tooling to overcome technical limitations of version control, build systems and release pipelines. Learn how DoorDash augmented Gradle’s capabilities to provide a better local development and CI experience for our large codebases. Leveraging Gradle’s composite build feature, we developed some custom tooling that allowed us to build a project graph and accurately compute affected targets for a given change. Subsequently, we’ll talk about options we explored to distribute our builds using Jenkins over Kubernetes as well as an in-house remote execution service, and their trade-offs.
Watch the slides Arrow Down

CI and Local Build/Test Acceleration, Toolchain Reliability, IDE and Tooling, Distributed Workforce Productivity

Monorepos are powerful tools to drive code standardization and boost engineering velocity. Moreover, they allow for centralized enforcement of platform standards and simplified dependency management, allowing developers to focus almost exclusively on business logic. All of this comes at the investment cost of dedicated staffing and tooling to overcome technical limitations of version control, build systems and release pipelines. Learn how DoorDash augmented Gradle’s capabilities to provide a better local development and CI experience for our large codebases. Leveraging Gradle’s composite build feature, we developed some custom tooling that allowed us to build a project graph and accurately compute affected targets for a given change. Subsequently, we’ll talk about options we explored to distribute our builds using Jenkins over Kubernetes as well as an in-house remote execution service, and their trade-offs. Watch The Video

Related Topics

The Slides

Share Download
Array
DoorDash

Who is Ashwin Kachhara ?

I’m a Staff Software Engineer / Tech Lead with a focus on distributed systems and platforms, and the versatility to tackle challenging problems on product & platform engineering.

Over a 6+ year tenure at DoorDash, I’ve had the opportunity to build several key systems and products, such as DashPass, Server-driven UI, and Migrating async task processing from RabbitMQ to Kafka.