Kotlin Multiplatform / KMM: An iOS developer’s experience and business benefits

KMM: An iOS developer’s experience and business benefits

Introduction: why are businesses interested in KMM?

Kotlin Multiplatform Mobile (KMM) streamlines mobile app development. Why maintain two teams — one for iOS and one for Android — and write duplicative code when you can consolidate efforts in a single project? KMM cuts costs, speeds up development, and simplifies maintenance. Businesses have understandable concerns, like can developers accustomed to native ecosystems adapt to this new technology? Will it complicate workflows? Is KMM really worth it?

Let’s review what modern companies are truly worried about?

  • Code duplication iOS and Android inflated team sizes. For example, a login screen or a shopping cart screen in an online store requires the same logic but is implemented differently due to platform specific requirements.
  • High costs. Salaries for experienced developers are rising, and the need to hire specialists for each platform increases budgets. Hiring two teams can cost 2–3 times more than a single universal one.
  • Outdated technologies. Some companies still maintain apps on Objective-C or older versions of Java, making it difficult to find developers willing to work with legacy code, while training newcomers takes time and resources.

KMM offers a solution: shared code for iOS and Android, reduced staffing needs, and faster time-to-market. But how does it work in practice? To find out, we spoke with Jenya Grigorenco, an iOS developer at IceRock, who transitioned from classic native development on Swift to working with KMM. His story is not just a personal journey but an example of how this technology opens new horizons for businesses and developers.

Jenya: From Swift to KMM — a developer’s personal journey

Jenya Grigorenco joined IceRock with three years of experience as an iOS developer. He had internships at IT companies, projects for banks and retailers, and his primary tool was Swift — a language he knew inside out. However, the mobile development market began to shift: companies increasingly sought developers capable of working across both platforms, and Jenya decided to try KMM.

Why IceRock?

The choice of company was no accident. IceRock takes pride in its expertise in multiplatform development, active participation in open-source projects, and its own library, moko.icerock.dev.

“I was looking for a place where I could quickly dive into KMM. IceRock offered not only projects but also a community where I could learn from colleagues. That’s exactly what I needed to start.”

Jenya Grigorenco
Jenya Grigorenco

How did the transition go?

IceRock provided Jenya with a structured learning program:

  • First, theory — the basics of Kotlin, KMM principles, and working with tools like Ktor (for network requests) and SQLDelight (for database management).
  • Then, practice — small tasks requiring the extraction of shared logic into a shared module, using expect/actual mechanisms for platform-specific code.

Jenya:

“At first, it felt unfamiliar. In Swift, everything is in one environment: you write code and see the result right away. With KMM, you need to separate shared logic and UI for iOS/Android. But after a couple of weeks, I got the hang of it and started appreciating the time it saves me.”

Challenges and Overcoming Them

The main challenge was rethinking the approach to isolate shared logic. In iOS, Jenya was used to solving tasks as a whole, but KMM required relearning:

“Initially, I got confused with expect/actual and didn’t know how to organize the code properly. But JetBrains’ documentation and IceRock’s team support helped a lot. Plus, my Swift experience provided a sound foundation: Kotlin is similar in type safety and async handling.”

IceRock’s community and accessible code examples accelerated the process. Within a month, Jenya was able to independently write modules for KMM projects.

How Long Did Adaptation Take?

Jenya assesses his progress as follows:

“In a month and a half, I mastered about 40% of what’s needed for confident work. I think in 2–3 months, I’ll be able to take on full-fledged tasks. If I were a complete beginner, adaptation might take up to a year, but with team support, it’s much faster.”

How KMM Helps Businesses: Concrete Benefits

Time and Cost Savings

KMM reduces code duplication, speeding up development and lowering costs.

“A login screen used to require two people: an iOS developer spent 8 hours on Swift, and an Android developer another 8 on Kotlin. With KMM, I write the shared logic in 8 hours, and platform-specific UI is set up in a couple of hours. Ыщ instead of 16 hours, it’s 10–12, and it works just as well.”

This significantly cuts expenses, especially for large projects with dozens of screens.

Simplified Hiring and Updating Legacy Stacks

With KMM, hiring becomes easier. On one hand, young specialists don’t want to work with outdated technologies, and switching to KMM can help avoid that. On the other, companies no longer need to seek specialists for each platform.

“The market is moving toward universal developers. Before, an iOS specialist had his hands tied with Swift, but now with KMM, they can cover both platforms. Adaptation takes 2–3 months with support like IceRock’s.”

This addresses the talent shortage: one role can replace two, and training is faster than hiring from scratch.

Real-World Example: From Theory to Practice

Imagine a retail company with an online store. They have two teams: 5 iOS developers and 5 Android developers. A code audit reveals that 60% of functionality — login screen, product catalog and cart — it is duplicated across platforms. Maintenance costs millions of rubles annually, and new features are delayed due to misalignment.

With a transition to KMM, shared logic is moved to a single module. The team shrinks to 6 universal developers writing code for both platforms. A cart screen, previously taking 20 hours (10 for iOS, 10 for Android), now takes 12 hours. Time-to-market drops by 30%, and development costs fall by 25%.

Conclusion: KMM Isn’t Scary

KMM is a mature technology delivering real business value: lower costs, faster development, and simplified hiring. For iOS developers, it’s a chance to broaden their horizons and boost marketobility.

“Don’t be afraid to try! Start with something simple, like a login screen. Study JetBrains examples, join communities. Swift and Kotlin are similar, so the transition will be smooth.”

For businesses, it’s an opportunity to optimize processes without sacrificing quality. Want to learn how KMM can help your project? Reach out — let’s discuss the details!

📲 Contact us for a consultation!