~/talk

Kotlin Multiplatform's Cross-Platform Brilliance at Norway's National Postal Service

Talkat DevBcn 2025 · 2025-07-08..07-10· [kotlin]
links:none on file
slides:none on file

A legacy monolith’s thousands of duplicated business rules are migrated incrementally into a shared Kotlin Multiplatform library (started 2019, POC 2021, production-ready 2023), compiled into JVM and JS artifacts with JS export/JVM static wrappers, and published to Maven and npm so frontends and backends consume the same validations. Result: ~1,000,000 automated tests, manual testing drops to zero, deployments go straight to production from CI, duplicate rule bugs vanish and developer morale rises under one code base to run them all.

AI-written summary · about

  1. 0:00Introduction and context
  2. 3:41Problem with legacy monolith
  3. 7:12Goals and ambitions
  4. 8:16Technical refactoring approach
  5. 9:39Why Kotlin Multiplatform
  6. 10:00What is Kotlin Multiplatform
  7. 14:42KMP architecture layers
  8. 15:25Common vs platform-specific code
  9. 17:10KMP project setup
  10. 18:35Getting started with KMP
  11. 19:18Code structure example
  12. 21:46Publishing and consuming KMP
  13. 22:30Testing and deployment confidence
  14. 23:14Live documentation benefits
  15. 24:17Challenges and ongoing work
  16. 24:59Takeaways and results
  17. 27:07Closing and call to action
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.