Ben Chatelain

Senior Engineer, Android SDKs @ Ditto

Talk Title

How to Quickly Build KMP Offline-First Applications That Supports Both Cloud and Local Peer-to-Peer






16:20 > 40 min


on Twitter

Kotlin Multiplatform enables code sharing between Android and iOS, but what are the options for data sharing? Today's typical pattern is for apps to fetch, store, and send data back to cloud-hosted web APIs. However, app functionality is often degraded or broken when the cloud isn't available.

In this talk, we'll explore offline-first app development and the intricacies of integrating peer-to-peer functionality alongside conventional cloud interactions. This session will cover practical strategies for implementing peer-to-peer data sync, including utilizing Wi-Fi-aware connections for seamless Android-to-Android interactions and Bluetooth Low Energy (BLE) for cross-platform communication between Android and iOS devices. By adopting an offline-first approach, we demonstrate how applications can achieve significant performance gains, reducing reliance on continuous cloud connectivity and frequent polling for updates.

You will gain insight into the high-level architecture necessary for those less familiar with Kotlin Multiplatform (KMP) while also diving deep into technical specifics crucial for developers actively working with or evaluating KMP. Through real-world examples and a comprehensive exploration of KMP's capabilities, this talk aims to illuminate the path for developers to harness the full potential of Kotlin Multiplatform to create faster, more reliable, and interconnected mobile applications.

Speaker Bio

Ben is a seasoned Senior Product Engineer with over two years at Ditto where he has been instrumental in developing SDKs for Android, Swift, .NET, and spearheading the creation of new SDKs for Java, Xamarin, and .NET MAUI. Prior to joining Ditto, he amassed nearly thirteen years of experience at Kaiser Permanente as a Chief iOS Engineer and Software Development Lead, focusing on developing iOS and Android apps, managing app distribution, and pioneering the analysis of electronic medical record data to enhance care quality and efficiency.