Training | Functional Streams for Scala and fs2

This training covers the development and design of streaming applications based on fs2 (Functional Streams for Scala).



In this course, we’ll learn about developing and designing streaming applications based on fs2 (Functional Streams for Scala). At the end of this course, attendees will be able to analyze, and correlate information as it arrives from different types of data sources in real-time.

fs2 embodies all the advantages of functional programming (FP), by understanding its design goals you will get exposure to the core ideas that make FP suitable for every real use case.


  • One year experience in Scala or any other Functional Programming language.
  • Knowledge of libraries like cats and cats-effect will be required.
  • Experience in other streaming frameworks such as akka-streams will be useful.

What you'll learn

  • Learn to identify problems that fs2 can solve, applying some Functional Programming concepts.

  • Introductory topics like building streams, chunks and some of the basic stream operations, as well as, error handling and resource acquisition.

  • Gain knowledge of how to manage I/O operations for big data sets that couldn’t fit in memory by managing them incrementally.

  • Learn how to control streaming flow, and other techniques like backpressure or backoff.

  • Concurrency in streaming apps will be covered, which will provide insight on how to run different streams simultaneously.

Company and Private Group Training

Related courses upcoming in the Academy

Company and Private Group Training


This Functional Streams for Scala and fs2 includes:

  • Maximum Class Size of 15
  • Access to Academy EduTools Platform
  • Access to Course Materials
  • Certificate of Completion
  • Access to a Private Channel with Trainers in the Academy Slack
  • A Q&A session one week post-course
  • A pre-and-post meeting with our trainers

Upcoming Academy Events