Kotlin Multiplatform Newsletter #17
We celebrate the winners of the Kotlin Ecosystem Mentorship Program and dive into high-performance patterns for KMP. We explore Metro DI patterns, adaptive layout systems that handle everything from phones to foldables with zero hardcoded pixels, and a guide to handling exceptions in Kotlin Flows. Plus, we look at how to fix production bugs using Claude Code and the Kotzilla MCP Server, and feature new roles at Booz Allen and CoreWillSoft.
The Log
The only Kotlin Multiplatform and Compose Multiplatform news you actually need to know.
In the Kotlin Ecosystem Mentorship Program pilot, mentors and mentees worked together on real Kotlin open-source projects to make their first meaningful community contribution. Four pairs successfully completed the two-month program, and one eligible pair was randomly selected in the prize drawing to receive the grand prize – a trip to KotlinConf 2026 in Munich!
The Main Thread
Community's most insightful threads, curated from social media platforms and websites.
Exceptions can be thrown from within our flows, just like anywhere else in our Kotlin code. In this video, we'll see the right and wrong places to put your try-catch blocks, and how to use the catch operator.
Expect Actual
Technical deep dives, or solving the "how-the-hell-do-I-test-this" problems.
Stop treating Kotlin like a black box! 🧠
To build truly performant multiplatform apps, writing code that just "works" isn't enough. We need to understand what the compiler is actually doing under the hood.
That’s why I highly recommend Practical Kotlin Deep Dive by skydoves. This isn't a basic syntax guide, it breaks down Kotlin internals, bytecode, and coroutines. It’s been a total game-changer for me when writing and optimizing shared code.
If you want to level up your Kotlin and KMP skills to a senior standard, you need this on your desk.
I already covered Koin Annotations in a previous article. What follows isn’t a migration guide. It’s a look at three specific patterns that come up in every real KMP project and where Metro’s behaviour changed how I think about dependency injection.
In this article, I fixed real production issues on a Kotlin Multiplatform app entirely from inside Claude Code using Kotzilla MCP Server. Two things made that loop work.
In this article, we’ll walk through how to implement push notifications in a KMP project, share as much logic as possible, and handle the platform-specific parts cleanly using
expect/actual.LazyColumn
Compose Multiplatform tips, tricks, and code snippets.
This article is about building a layout system that is intentionally adaptive. One that knows what device it’s running on, what orientation it’s in, whether a hinge is separating the screen in two, whether the iPad is in Split View, and makes a precise, correct decision every single time — with zero hardcoded pixel values and zero platform-specific layout code in your feature screens.
A growing catalog of self contained Jetpack Compose animation examples by skydoves. Every entry is a single composable file you can read end to end, with the constants you can tweak and a written walkthrough of how the motion is built.
The Dependency Graph
Curated libraries, tools and plugins that won't break your Gradle build.
- Kmp Resources Unfold
A professional productivity tool designed for Android Studio and IntelliJ IDEA developers. It bridges a major gap in the IDE by providing visual management and robust import capabilities for assets across all your Kotlin Multiplatform (KMP) modules. - Gradle Lighthouse
An enterprise-grade build intelligence plugin for Android and Kotlin Multiplatform. Think of it as "Google Lighthouse" for your module graph. - FastCollect
A library for high-performance primitive collections in the Kotlin ecosystem. As a drop-in replacement for standard Kotlin collections, FastCollect generally reduces memory usage by 4–5× and improves CPU performance by 2-4× (and perhaps >10× on some iteration heavy workloads). - native-kt
Gradle plugin for convenient C/C++ integration into a Kotlin Multiplatform project. Supports JVM, Android, Native, Wasm and JS targets.
Careers
Kotlin Multiplatform job postings and opportunities.
wellfound • Where startups and job seekers connect.
🤝 Connect directly with founders at top startups - no third party recruiters allowed.
💸 Everything you need to know, all upfront. View salary, stock options, and more before applying.
✌️ Say goodbye to cover letters - your profile is all you need. One click to apply and you're done.
✨ Unique jobs at startups and tech companies you can’t find anywhere else.
As a senior Multi-Platform Mobile Application Developer at Booz Allen, you’ll support the development of systems, sites, and tools for our clients. Using the latest tools and technology, you’ll write, test, and edit code in support of the team’s overall results. You’ll expand your skills as you develop and reverse engineer software that supports hardware functionality on a wide range of devices, as well as configure solutions based on the platform being used. You’ll work with other team leaders to troubleshoot and correct operational issues, as well as with cybersecurity specialists to ensure that the software you’re creating is secure.
We are looking for a Full-Stack Software Engineer with strong backend experience in Kotlin/Java and either: solid Frontend (React) expertise, or experience in Kotlin Multiplatform / Android development. Our team operates in a scaled agile approach across Europe with a headquarter in Bonn, Germany. It is responsible for the complete software development lifecycle; including ideation, implementation, and operation of the secure IoT software operating smart buildings and smart homes across the world.
🚀 Get Featured!
Got something interesting to share with the Kotlin Multiplatform community? Submit your link for a chance to get featured in the next issue of commonMain.dev.
🤝 Support the Build
commonMain.dev is made possible by our partners. If you have a tool or service that helps KMP developers ship to production faster, we’d love to help you reach our community. Collaborate with us.
✍ Code Review
This newsletter is curated and written by a real human being. I’m always looking for ways to optimize the build. Was there something you liked or disliked in particular? Or did you find a bug in this issue? Simply reply to this email - I read every comment from the community and take your feedback into account for the next release.
Until next time,
Stay platform-independent!
Bogdan • Founder of commonMain.dev