Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Programming Reactive Systems

31 reviews
Recommended experience
What you'll learn
Understand how back-pressure controls flows of data
Transform and consume infinite and intermittent streams of data with Akka Stream
implement systems that can scale out according to a varying workload
Design systems resilient to failures
Skills you'll gain
Tools you'll learn
Details to know

Add to your LinkedIn profile
See how employees at top companies are mastering in-demand skills

There are 7 modules in this course
Instructors



Offered by
Explore more from Software Development

École Polytechnique Fédérale de Lausanne
Why people choose Coursera for their career

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
Learner reviews
- 5 stars
48.38%
- 4 stars
22.58%
- 3 stars
12.90%
- 2 stars
6.45%
- 1 star
9.67%
Showing 3 of 31
Reviewed on Aug 4, 2023
Great at teaching theory. I had to watch a bunch of RockTheJVM videos to learn how to actually program Akka, though.
Reviewed on Feb 5, 2025
Good course, quite difficult but rewarding. I think textual descriptions for some of the exercises could be improved a little bit(kvstore).

Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy




