Georg Dresler
Tackling Complexity With Functional Programming And Kotlin
#1about 3 minutes
Understanding a complex and unusual feature request
A real-world example of a complex feature request involves an offline form editor that syncs data via JSON embedded in PDF metadata.
#2about 3 minutes
Why traditional try-catch blocks fail for complex errors
Traditional try-catch blocks for error handling either obscure an error's origin or make the code unreadable with excessive boilerplate.
#3about 7 minutes
Using the Either type for robust functional error handling
Replace exceptions with the `Either` sealed class, using `flatMap` to chain successful operations and `fold` to handle the final success or error state.
#4about 4 minutes
Enforcing data validation using private constructors in Kotlin
Use a private constructor combined with a companion object's `invoke` operator to run validation logic upon object creation, preventing invalid states.
#5about 7 minutes
Modeling distinct data states with algebraic data types
Use sealed classes (sum types) to model different states like `Draft` and `Validated`, letting the compiler enforce state-specific logic instead of relying on boolean flags.
#6about 4 minutes
Recap of functional techniques and audience Q&A
A summary of using `Either` for errors, private constructors for validation, and ADTs for state, followed by a Q&A on libraries like Arrow and custom exceptions.
Related jobs
Jobs that call for the skills explored in this talk.
PROSOZ Herten GmbH
Herten, Germany
€47-70K
Intermediate
Senior
Java
Kotlin
MARKT-PILOT GmbH
Stuttgart, Germany
Remote
€75-90K
Senior
Java
TypeScript
+1
Matching moments
01:32 MIN
Organizing a developer conference for 15,000 attendees
Cat Herding with Lions and Tigers - Christian Heilmann
02:39 MIN
Establishing a single source of truth for all data
Cat Herding with Lions and Tigers - Christian Heilmann
03:17 MIN
Selecting strategic partners and essential event tools
Cat Herding with Lions and Tigers - Christian Heilmann
04:57 MIN
Increasing the value of talk recordings post-event
Cat Herding with Lions and Tigers - Christian Heilmann
03:48 MIN
Automating formal processes risks losing informal human value
What 2025 Taught Us: A Year-End Special with Hung Lee
03:38 MIN
Balancing the trade-off between efficiency and resilience
What 2025 Taught Us: A Year-End Special with Hung Lee
03:39 MIN
Breaking down silos between HR, tech, and business
What 2025 Taught Us: A Year-End Special with Hung Lee
04:22 MIN
Why HR struggles with technology implementation and adoption
What 2025 Taught Us: A Year-End Special with Hung Lee
Featured Partners
Related Videos
Algebraic Data Types + Pattern Matching = Elegant and readable Java code
Balkrishna Rawool
Moving from Java to Kotlin
Urs Peter
Typed Security: Preventing Vulnerabilities By Design
Michael Koppmann
Route from Java to Kotlin
Christian Woerz
A Guide To Functional Programming
Jemima Abu
Why Kotlin is the better Java and how you can start using it
Iris Hunkeler
Functional Programming in C++
Jonathan Müller
F#, path to functional enlightenment
Onur Gumus
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.



Vesterling Consulting GmbH
Remote
€55-80K
Intermediate
Scrum
Spring
Kotlin
+4

APRIORI - business solutions AG
Java
Kotlin
IntelliJ
Unit Testing
Continuous Integration



SMARTCORE AG
Barcelona, Spain
Remote
Senior
Java
REST
gRPC
Redis
+12


jobandtalent
Municipality of Madrid, Spain
Remote
Senior
Kotlin
Android