Skip to main content

About Me

Grüezi! I'm Matthias Ernst, a Senior Kotlin Multiplatform (KMP) Engineer and co-founder of Ernst & Conte GmbH. I help companies share business logic across Android, iOS, Desktop, and Web from a single Kotlin codebase — eliminating duplication, accelerating delivery, and reducing long-term maintenance costs.

With 7+ years of professional experience in the Swiss tech industry — including banking (ZKB), insurance (Helsana+), automotive (Toyota Group), and consulting — I bring both deep technical expertise and a business-level understanding of how cross-platform development translates into real ROI.

Looking to unify your platforms or adopt KMP? Let's talk.

Basic Information

Email:
Use the contact form below
Country:
Switzerland
Language:
English, (Swiss -) German, Japanese, French notions
Technical Skills
Kotlin Multiplatform Ecosystem
Kotlin / KMP
Expert
Compose Multiplatform
Expert
Android / Jetpack Compose
Expert
iOS / Swift (via KMP)
Proficient
KMP Libraries & Tooling

Ktor, SQLDelight, Koin, Kotlinx.Serialization, Coroutines & Flow, Kotlin/Native, Gradle (multi-module), SKIE, React Native interop

DevOps & Infrastructure

CI/CD, GitHub Actions, GitLab CI, Docker, Kubernetes, Firebase, Fastlane, nginx, Google Play Console, App Store Connect

Methodology & Process

Scrum, SAFe, Agile, TDD, XP, Pair Programming, Cross-functional team leadership, Technical consulting

Additional Languages & Tools

Java, Spring Boot, Kafka, Swift, Bluetooth/BLE, REST APIs, Git, AI/LLM integration, Cloud infrastructure

Work Experience

2022 - Present

Ernst & Conte GmbH, Baar, Switzerland
Senior Kotlin Multiplatform Engineer — Co-Founder

Co-founded a consulting company delivering Kotlin Multiplatform solutions to Swiss and international clients. Lead all phases of project execution — architecture, development, testing, and deployment. Drive company strategy, manage client relationships, and translate technical capabilities into business proposals. Balance hands-on engineering with financial oversight and business development.

2021 - Present

ZKB, Zürich, Switzerland
Senior Kotlin Multiplatform Engineer

Spearhead the cross-platform architecture of the frankly 3a pension app at one of Switzerland's largest cantonal banks. Architect and implement shared KMP modules consumed by both Android and iOS, significantly reducing code duplication across platforms. Contribute Swift code on the iOS side to ensure seamless integration. Collaborate closely with cross-functional teams to uphold code quality standards and deliver features on a continuous release cadence.

2022 - 2023

Toyota Group, Motix, London, UK
Kotlin Multiplatform Consultant

Designed and built a white-label KMP SDK integrated into a React Native frontend for the Toyota Group's connected-vehicle platform. Engineered low-level Bluetooth/BLE communication layers for both iOS and Android using shared Kotlin Multiplatform code. Implemented telemetry data collection pipelines and served as the primary technical advisor to product stakeholders, ensuring on-time delivery of the SDK.

2022

Almer Technologies AG, Bern, Switzerland
Kotlin Multiplatform Consultant

Conducted an expert code review of the Android and KMP codebase for this AR smart-glasses startup. Delivered actionable architectural recommendations that were adopted immediately. Advised the engineering team on KMP best practices, module structure, and shared-code strategy.

2019 - 2021

ti&m, Zürich, Switzerland
Mobile Software Engineer

Delivered high-profile Android and KMP features for major Swiss financial clients, including the Helsana+ health insurance app and LGT private banking platform. Built and maintained shared Kotlin Multiplatform modules to maximise code reuse between platforms. Worked in cross-functional Scrum teams, liaising directly with stakeholders to align technical implementation with business requirements.

2017 - 2018

Saeki Japan Co. Ltd., Fukuoka, Japan
Business Management

Managed international client relationships and export operations, communicating fluently in Japanese, English, and German. Gained first-hand experience in Japanese business culture and cross-cultural negotiation — skills that strengthen my ability to collaborate with diverse, international teams today.

2016 - 2018

FHNW, Brugg, Switzerland
President, students.fhnw

Elected to lead the university's main student organisation representing ~12,000 members. Drove a major organisational restructuring, coordinated cross-departmental initiatives, and oversaw event delivery and budgeting. Built leadership, stakeholder management, and strategic planning skills that directly inform my approach to technical project leadership.

2016 - 2018

FHNW, Brugg, Switzerland
Student Member, University Board

Represented the student body on the FHNW University Board, bridging student perspectives with institutional governance. Gathered feedback, advocated for student interests in strategic decisions, and contributed to policy discussions that shaped the academic experience for thousands of students.

2014 - 2015

RUF, Schlieren, Switzerland
Software Engineering Intern

Built a test-automation system in Java to streamline quality assurance of both software and hardware components. Designed the testing model, wrote comprehensive test scripts, and debugged anomalies across the stack. Gained hands-on hardware experience through component soldering and systems integration work.

Education

2015 - 2019

Bachelor's Degree
Bachelor of Science in Computer Science

University of Applied Sciences and Arts Northwestern Switzerland (FHNW)

Specialized in software development, covering an extensive curriculum that included data structures, algorithms, databases, web development, and software engineering principles.

2017 - 2018

Seinan Gakuin University
International Business Management

Seinan Gakuin

Conducted a year-long self-organized study abroad in Japan, undertaking a diverse array of courses in the field of International Business Management. My studies encompassed Business Management, Business Communication, and Economics, providing me with a well-rounded understanding of international business practices.

2011 - 2015

Secondary school in CS (IMS)
Commercial Professional Baccalaureate

BBBaden, Cantonal School Baden

Swiss Certificate of Competence in computer science.

Interests

Beyond engineering, I'm drawn to IoT, AI/LLM integration, and the evolving Kotlin ecosystem. I stay active through bouldering and squash, unwind with gardening and motorbiking, and continue deepening my connection to Japanese language and culture — a passion rooted in my year living and working in Fukuoka.

Get in Touch
Have a project or role in mind? Let's talk.

Kotlin Multiplatform FAQ

Frequently Asked Questions about Kotlin Multiplatform
What is Kotlin Multiplatform (KMP)?

Kotlin Multiplatform (KMP) is a technology by JetBrains that lets you write shared business logic once in Kotlin and run it on Android, iOS, Desktop, Web, and the server. API calls, data models, validation, and core business rules live in a single common module — every platform consumes them without rewriting a line.

I thought Kotlin was only for Android development. Is that correct?

That's a common myth. Kotlin is a first-class JVM language and a modern alternative to Java. It powers high-performance backends with Spring Boot, Quarkus, Micronaut, and Ktor. Since it's 100% interoperable with Java, you can adopt it incrementally in any existing Gradle or Maven project — no rewrite required.

How is KMP different from Flutter or React Native?

Flutter and React Native focus on sharing the UI layer, which often means compromising on native look-and-feel. KMP takes the opposite approach: it shares non-UI logic (networking with Ktor, persistence with SQLDelight, serialization with kotlinx.serialization) while letting each platform keep its fully native UI — SwiftUI on iOS, Jetpack Compose on Android. If you do want a shared UI, Compose Multiplatform gives you that option too.

Is KMP production-ready? Who uses it?

Yes. KMP is officially stable and backed by JetBrains and Google. Companies like Netflix, McDonald's, Forbes, Cash App, and VMware ship KMP in production. In Switzerland, major banks and insurers already run KMP modules in their mobile apps.

Can I use KMP with my existing Java and Spring/Quarkus backend?

Absolutely. You can add a shared KMP module to your existing Java project without touching the rest. The biggest win is sharing data classes (DTOs) and validation logic between your backend and all your clients, eliminating an entire category of serialization bugs and keeping your API contracts in sync automatically.

How does Kotlin code run on iOS?

The Kotlin/Native compiler produces a native iOS framework (.xcframework). Your Swift code in Xcode imports it like any other dependency. There is no bridge overhead, no runtime VM — just compiled native code. Tools like SKIE further improve the Swift interop, making the API feel fully native to iOS developers.

Can I share the User Interface (UI) as well?

Yes, with Compose Multiplatform. It's a declarative UI framework that lets you write your interface once in Kotlin and render it natively on Android, iOS, Desktop (Windows, macOS, Linux), and Web via WebAssembly. It's ideal for teams that want maximum code sharing without sacrificing performance.

Is KMP just for mobile, or is it a full-stack solution?

KMP is a true full-stack technology. A single Kotlin codebase can power your JVM backend (Spring Boot, Quarkus, Ktor), your Android app, your iOS app, your Web frontend, and your Desktop client. Shared modules ensure consistency from database to screen — one language, one team, zero drift between platforms.

What does adopting KMP look like for an existing project?

You don't need to rewrite anything. The typical approach is to start small: extract one piece of shared logic — a networking layer or a set of DTOs — into a KMP module and consume it from your existing Android and iOS apps. From there, you expand incrementally. Most teams see measurable ROI within the first sprint.

What are the cost benefits of Kotlin Multiplatform?

By sharing business logic across platforms, you reduce duplicated development effort, cut bug surface area in half, and ship features faster with smaller teams. Instead of maintaining separate Android and iOS implementations of the same logic, one KMP module serves both — saving engineering hours on every feature, bug fix, and refactor going forward.