Your Multiplatform Kaptain has Arrived
summary
Careem ships a Kotlin Multiplatform SDK as a standalone library with 25,000 lines of shared code (including tests), running Android a year and iOS seven months in production, with 30% of captains on iOS and teams of five iOS and eleven Android devs. The team publishes versioned frameworks to Maven, enforces one review per platform, uses dependency injection not expect/actual for platform APIs, and fixes native threading and coroutines issues as Kotlin/Native stabilizes.
AI-written summary · about
chapters (24)
- 0:00Intro
- 1:51Origins
- 2:22An In-Place Rewrite
- 3:48Kotlin Multiplatform
- 5:00A Multiplatform Library
- 6:48Problems
- 8:38Communicating Changes
- 11:41What to Share
- 12:31General Sharing Tips
- 13:50Dependencies
- 16:13Architectural Considerations
- 22:05Architecture
- 22:41Platform Differences
- 23:07Things to Consider
- 24:12Code Organization
- 24:43Building for iOS
- 25:46klibs to the Rescue
- 27:01Notes
- 28:44Lost in Translation
- 31:39Difficulties
- 33:57Multithreading
- 35:18Things we're thinking About
- 37:40Summary
- 38:35Other Lessons
related talks
36mKotlin Multiplatform at five years
36mIntroducing Kotlin Multiplatform in an existing project
43mKotlin Multiplatform at Stable and Beyond
26mKotlin Multiplatform in an MVVM World
29mKMP for Mobile Developers
25mKotlin Multiplatform Mobile in production: key takeaways from developing two cross-platform apps
32m10 myths about crossplatform mobile development with Kotlin
38mBuild a Multiplatform Future with Kotlin
