Talking Kotlin

How Major Metros Run on KMP


Listen Later

Every time you tap through a subway gate in New York City, you’re using Kotlin Multiplatform! In this episode, we sit down with Paweł Kwieciński from Masabi to explore how they brought a decade-old Java codebase to KMP, powering ticket validation across mobile apps, embedded devices, and backend systems for public transit agencies worldwide.

Resources:

  • Masabi
  • J2ObjC (Java to Objective-C translator)
  • Google Workspace Migration to Kotlin
  • Large Scale Changes with AI – Uber | Ty Smith
  • KotlinX DateTime
  • Ktor (Client & Server)
  • Burst library (archived)
  • Java ME (Micro Edition)
  • Mbed TLS
  • SQLDelight
  • Compose Multiplatform
  • JetBrains AI Assistant & Junie

Hosts:

  • Sebastian Aigner – Website | Bluesky
  • Márton Braun – Website | Bluesky

Guest:

  • Paweł Kwieciński

Timeline:
(0:00) Introduction
(1:12) What is Masabi?
(3:03) How does Kotlin fit into this?
(6:30) System architecture overview
(8:33) Embedded SDK and mobile apps
(10:33) Ticket inspectors and validators
(13:22) Offline operation
(16:29) The KMP decision
(24:42) Evaluating alternatives
(27:21) Planning the migration
(33:28) First lines of Kotlin
(43:45) Translating Java to Kotlin
(53:22) AI-assisted code translation
(56:39) Early AI era challenges
(1:05:01) Testing challenges
(1:08:22) KMP dependencies
(1:11:34) Domain-specific dependencies
(1:16:55) Java ME and C interop
(1:23:22) Backend-client sharing
(1:26:59) Current status
(1:31:48) Future plans: CMP
(1:36:26) Wrap-up

...more
View all episodesView all episodes
Download on the App Store

Talking KotlinBy Talking Kotlin

  • 4.3
  • 4.3
  • 4.3
  • 4.3
  • 4.3

4.3

17 ratings


More shows like Talking Kotlin

View all
Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

Software Engineering Radio - the podcast for professional software developers

273 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

991 Listeners