Learn more about how DoorDash uses Kotlin: https://blog.jetbrains.com/kotlin/2020/12/doordash-building-scalable-backend-services-with-kotlin/
Read the story of DoorDash’s migration from Python to Kotlin for their backend: https://doordash.engineering/2021/05/04/migrating-from-python-to-kotlin-for-our-backend-services/
DoorDash, the last-mile logistics company, is going all-in with Kotlin. While most people may recognize them for their food delivery offerings, DoorDash also provides delivery services for businesses.
Matt Anger, Senior Staff Engineer at DoorDash, walks us through how they have embraced Kotlin on Android, their server-side backend services, migrating away from their previous monolithic implementation, and going all in with Kotlin as DoorDash’s language of choice.
Matt tells us the story of why the DoorDash team chose Kotlin, first for Android and then for all of their services. In short, they needed a language that could scale with the company and its growing number of requests per second, and one that offered high developer productivity without sacrificing performance. Interoperation with the JVM and Java ecosystems played a big role, too, as it allowed the team to immediately reuse their integration with Cassandra, Postgres, and Kafka.
We discuss the move from Python to Kotlin, and how the team embraced the new language and the concepts that come with it – from DoorDash’s lunch-and-learns to collecting best practices and using tool support such as linters like ktlint to help their engineers write quality software in Kotlin.
Matt also briefly talks about KrotoPlus (https://github.com/marcoferrer/kroto-plus) and Protokruft (https://github.com/daviddenton/protokruft) for facilitating remote procedure calls (RPC) with Kotlin and Protobuf, and explains DoorDash’s approach to structuring their services and the different server-side technologies they employ: Spring, Micronaut, and GRPC/Netty & Co, as well as LINE’s Armeria framework for building new services (https://github.com/line/armeria).
We also get an overview of how DoorDash overcame some of the challenges they faced when moving to a new ecosystem, along with answers to a variety of other questions.
#Kotlin #DoorDash #Podcast #Android #Serverside #Microservices #Backend
Check out other episodes of the Talking Kotlin Podcast → https://youtube.com/playlist?list=PLlFc5cFwUnmz1TwkP9SKCHU978dqLTANB