Functional Programming with Arrow

Software Development

This 2-day course starts with the basics of functional programming in Kotlin, and we’ll try to get as far as we can without relying on Arrow or other external libraries just using vanilla Kotlin.

Afterwards, we’ll dive into Arrow and how you can leverage Arrow to make your code even more reliable, type-safe and composable. Splitting your code logic units, that promote readability, useability and reliability.

Looking to upskill your team(s) or organization? 

Anuudari will gladly help you further with custom training solutions for your organization.

Get in touch

What will you learn?

Kotlin offers us many concepts from Functional Programming, which allow us to make our code more type-safe and reliable.

This course will take us through the concepts of Functional Programming applied in Kotlin. We’ll learn how to apply these techniques in Kotlin in a practical manner such that you can apply them in your existing -and new projects. 

While Kotlin is a powerful and flexible language, it doesn’t contain all the tools available in the Kotlin Standard Library we care about in Functional Programming. The Arrow library complements Kotlin in this area, bringing more functional concepts to the Kotlin language in an idiomatic way. That’s how you can maximize type safety and reliability of our code. 

Key takeaways

  1. Make your code more reliable by leveraging functional programming techniques. 
  2. Take your Kotlin skills to the next level by exploring Kotlin from a different perspective. 
  3. Explore when to use which techniques, and combining the best of OOP and FP. 
  4. Learn about Arrow, and how you can apply it in a practical way in your project. 


This 2-day course dives right into how we can practically apply Arrow in our Ktor applications, and how we can use the different modules to achieve the different properties we care about. At the end of your course we’ll have built an entire microservice using Arrow and Ktor in Kotlin. 

  • Ktor and how to set it up 
  • The importance of immutability and how it impacts your code style.
  • How to approach validation in a more composable way.   
  • Keeping track of contexts and side effects. 
  • Make asynchronous code more resilient.

Who is it for?

Everyone who has a basic understanding of Kotlin, and has one or more years of hands-on experience developing and maintaining software applications. Learn how to leverage functional programming techniques in Kotlin, and maximize type safety and reliability. No prerequisite knowledge of functional programming is required. 


Hands-on experience with Kotlin, or basic understanding of the Kotlin language. 

Hands-on experience with software development. 

Why should I follow this training?

Take Kotlin to the next level. 

Make your code more reliable. 

Learn functional programming techniques. 

What else
should I know?

The course contains theoretical sections, and practical exercises. Make sure to prepare your environment beforehand, so that we can get the most out of our time. If you’re already familiar with Functional Programming, or Arrow, be sure to prepare and bring all your questions beforehand so that we can resolve all your questions. 

Course information

The training is thought by the maintainers of Arrow. 

You need to bring your own laptop to this training. 

Installation of Kotlin environment for practical sections. 

Bring plenty of energy and motivation to level up your Kotlin skills. 

Also interesting for you

View all trainings
Test-Driven Development (TDD)

Elevate your software engineering prowess by mastering Test-Driven Development, a short-cyclic process that empowers you to create software predictably and efficiently, through focused hands-on training.

Software Security
Software Testing
View training
Applying Professional Scrum for Software Development (APS-SD)

Master Agile professional software development with our APS-SD training. Turn product requirements into business value. Get certified as a PSD!

Manuel Riezebosch

3 days
In Person


7 Oct, 2024



View training
Kotlin Advanced Developer

Get your existing Kotlin skills to the next level with our Kotlin Advanced Developer training course.

Urs Peter

Back-End Development
2 days
In Person


2 – 3 Oct, 2024



View training
Idiomatic Kotlin for Spring Boot Developers

This Idiomatic Kotlin for Spring Boot Developers training teaches you to apply Kotlin n the Spring Boot Framework.

View training
Advanced DSL Design 

All you need to know to cover complex business requirements in elegant ways with Kotlin DSLs. Check:

View training

Can’t find the course you’re looking for? There’s more!