Matthias Geisler
Senior Software Engineer@Airalo
Berlin, Germany
Actions
True believer in (Kotlin) Multiplatform and working with it since 2019. Builds solutions for Android.
Organizer of KUG Berlin, GDG Android Berlin, XTC Berlin and more.
Area of Expertise
Topics
Design patterns on Kotlin Multiplatform for fun and profit!
Modular, concise, and decoupled - this is how we want our software. Certainly, a good knowledge of design patterns will help here. Some of them work better than others, even on KMP, and do wonders in certain situations. Through practical examples, let's figure out how to make KMP projects more maintainable and fun to work with.
We'll dive into patterns that leverage Kotlin's unique strengths while working seamlessly across platforms. The Command pattern becomes particularly elegant in KMP, enabling clean separation between platform-specific UI actions and shared business logic.
Testability deserves special attention in KMP - the patterns make it possible to test for any platform or shared code.
We'll explore how proper abstraction and separation of concerns enable you to test business logic independently of platform specifics, saving time and increasing confidence in your codebase.
We'll also look at practical patterns for integrating with modern APIs. Whether you're working with OpenAPI specifications or GraphQL endpoints, KMP offers elegant solutions for generating type-safe clients and sharing networking logic across all your target platforms, eliminating redundant API integration work.
Let's speak about Accessibility
Accessibility isn't separate from good Android development—it's part of it. When we build with accessibility in mind from the start, our apps become more robust and our product elevates to the next level.
Let's explore practical approaches of making Android apps accessible and how this work naturally improves your development practices. Also, with the European Accessibility Act (EAA) now in effect, understanding these principles isn't just good practice—it's becoming essential for many Android applications and the businesses behind them.
What is MVI and can I eat it? - Why Architectural Patterns may be more filling than your lunch!
Ever stared at a three-letter acronym like MVI and wondered if it's some exotic cuisine you missed on the menu? You're not alone!
Architectural patterns are like tried-and-true recipes that transform a chaotic mess of ingredients into a delicious, cohesive dish. Just as following a good recipe ensures your soufflé won't collapse, following architectural patterns ensures your app won't crumble under its own complexity.
But you might want to spice it a little and see if you can give it that one twist which makes it truly outstanding (in a good way, of course).
Anyway, grab your apron (or keyboard) and lets start cooking!
XP with AI?
One of the big promises of the "AI Revolution" is to make our lives easier as engineers. But what does that actually look like in practice? On the other hand, we have techniques mainly in the realm of eXtreme Programming that emphasize collaborative work and tackle complexity. XP practices are well established and actually proven to increase both productivity and stability in software development.
So what happens when we bring these two worlds together? Can we even talk code into existence? Does AI alone make you faster or slow you down? Can you actually pair program with AI—and is it a good pair? How good is it at reviewing your code? What about documentation? What is the impact on a team when AI enters the development process? Can XP bring the fun back into AI coding? What does all this mean for the future of our industry?
There are so many questions, so let's sit down and work through some of them together! Through the lens of Android and Kotlin development, let's explore whether AI assistants like Claude and Cursor can boost development workflows and how XP practices can contribute to that.
Our Daily Kata
Let's sharpen our skill with a kata! We will program live together and neither of knows upfront what we will do until we do it!
A pragmatic (short) introduction into Rust
Hello, and good day! May I introduce you to our saviour, Rust?! Let's figure out why Rust is awesome and painful at the same time, and why it will take over the world at some point.
We will have a look into its ecosystem and some key concepts. Let's buckle up and dive into Rust’s ecosystem and key concepts while determining if you are one of Rust's next missionaries.
Multiplatform 101
Let's talk is about the basic tools/approaches/mistakes you can do when you get into multiplatform. KMP is fun and has sometimes its own spin and tweaks which can give you even a new perspective on Android. So lets get right into the world of Multiplatform!
TDD with AI?
One of the big premises of the "AI Revolution" is to make our lives easier as engineers. But can it deliver on this? How fruitful is it for TDD practitioners? Does it make you faster or slow you down? Can we even talk code into existence?
Let's take a look together! Let's see if AI assistants like Claude and Cursor can boost development workflows. How Test-Driven Development practices contribute to it and what are learnings after one using actively tooling together with AI.
KMock - a Case Study for KSP on KMP
Did you ever miss some meta-programming capabilities similar to reflection for Kotlin Multiplatform (KMP)? Did you ever wish for preprocessor capabilities ? Have you ever wonder why it took so long to have proper mocking libraries for KMP? Did you ever want to create code for KMP in tandem with annotation?
Kotlin Symbol Processing (KSP) is an answer to that problem. The talk will give you an introduction on how to use it, including a testing approach. Additionally, you learn about some challenges due to KMP, how to implement a way to set up your processors conveniently for your users and limitations you will run into using KSP.
And Gradle says: sharing is caring - Or why Gradle Plugins are all you need for your Configuration
Have you ever been in dependency hell? Are you tired of copying and pasting your setup from one project to another? Do you wish there would be an easy way to share your configurations, workflows, and dependencies? Say no more!
Born out of painful lessons, this talk will give you a crash course on how you can ship your setup easily to different projects by using the power of Gradle (Convention) Plugins, VersionCatalogs, etc.
KotlinJS and why I love it
KotlinJS was one of the reasons why I considered learning Kotlin in the first place. Everybody might think of Android, Backend, or iOS when it comes to Kotlin, but KotlinJS is one of my secret loves in the ecosystem. When I started with Kotlin, KotlinJS was thrilling - like the early days of TypeScript, when it was easy to contribute and have an impact. Since then, many things have happened, so what's the state of KotlinJS in 2026, and why does it deserve more attention? Let's look at how the tooling and compiler have matured, the practical benefits of type-safe JavaScript development, and when integration can shine. What challenges and curiosities might you encounter along the way?
Join me to discover why KotlinJS might just become your secret love, too.
TDD with Kotlin (and for beginners)
Ever wondered what Test-Driven-Development (TDD) truly is or "how" you can use it? Do you think you cannot TDD projects in a reasonable time? You doubt the value of testing in any case?
Well, let me bring you the good word of TDD and what wonders it can do for you!
Test-Driven Development isn't just another buzzword – it's an approach that flips common coding on its head and might be the way to go to tame assisted programming (AI).
DevFest Kosova 2025 Sessionize Event
DevFest Venezia 2025 Sessionize Event
droidcon Berlin 2025 Sessionize Event
droidcon Lisbon 2025 Sessionize Event
DevFest Taipei 2024 Sessionize Event
Droidcon & Fluttercon Kenya 2024 Sessionize Event
DevFest Hamburg 2024 Sessionize Event
droidcon Berlin 2024 Sessionize Event
droidcon Amman 2024 Sessionize Event
DevFest Venezia 2023 Sessionize Event
droidcon Uganda 2023 Sessionize Event
droidcon Kenya 2023 Sessionize Event
DevFest Hamburg 2023 Sessionize Event
droidcon London 2023 Sessionize Event
DevFest Armenia 2023 - 10th Anniversary Sessionize Event
Devfest Georgia 2023 Sessionize Event
droidcon Berlin 2023 Sessionize Event
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top