Master reactive programming in Scala & Akka. Learn to build scalable, resilient systems with actors & streams. Ideal for intermediate developers.
Master reactive programming in Scala & Akka. Learn to build scalable, resilient systems with actors & streams. Ideal for intermediate developers.
Dive into the world of reactive programming with this comprehensive course on building scalable, resilient, and responsive systems using Scala and Akka. Designed for intermediate-level programmers, this course equips you with the skills to implement reactive systems based on the principles outlined in the Reactive Manifesto. Through hands-on lessons and practical assignments, you'll master asynchronous programming, actor-based systems, and reactive streams. Learn to design systems that can handle varying workloads, recover from failures, and process infinite data streams efficiently. By the end of this course, you'll be able to create robust, distributed applications that leverage the full power of reactive architecture.
Instructors:
English
21 languages available
What you'll learn
Implement asynchronous computations using Scala Futures
Design concurrent systems using the Actor model and Akka framework
Develop fault-tolerant and self-healing distributed applications
Implement scalable systems that can handle varying workloads
Use Akka Streams for processing infinite and intermittent data streams
Apply back-pressure techniques to control data flow in reactive systems
Skills you'll gain
This course includes:
10 Hours PreRecorded video
Access on Mobile, Tablet, Desktop
FullTime access
Shareable certificate
Closed caption
Get a Completion Certificate
Share your certificate with prospective employers and your professional network on LinkedIn.
Created by
Provided by

Top companies offer this course to their employees
Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.





There are 7 modules in this course
This course provides a comprehensive introduction to reactive programming using Scala and Akka. Students will learn how to implement scalable, resilient, and responsive systems based on the principles of the Reactive Manifesto. The curriculum covers essential topics such as asynchronous programming with Futures, the Actor model for concurrent and distributed computing, handling failure and state in actor systems, and advanced stream processing techniques. Participants will gain hands-on experience in designing and implementing reactive systems that can handle varying workloads, recover from failures, and process infinite streams of data efficiently. The course emphasizes practical skills and includes numerous programming assignments to reinforce learning.
Introduction, Recap and Asynchronous Programming
Module 1 · 12 Hours to complete
The Actor Model
Module 2 · 7 Hours to complete
Handling Failure and State
Module 3 · 7 Hours to complete
Distributed Computing
Module 4 · 1 Hours to complete
Typed Actors
Module 5 · 7 Hours to complete
Stream Processing
Module 6 · 7 Hours to complete
Advanced Stream Processing
Module 7 · 6 Hours to complete
Fee Structure
Payment options
Financial Aid
Instructors
Programming Language Pioneer and Creator of Scala
Martin Odersky, born September 5, 1958, has established himself as a leading figure in programming language design and development. After receiving his Ph.D. from ETH Zurich in 1989 under Niklaus Wirth's supervision, he held research positions at IBM and Yale University, where he developed his passion for functional programming. His career achievements include co-designing Java generics and developing the javac reference compiler that became the standard Java compiler. In 1999, he joined EPFL as a full professor, where he leads the programming research group. His most significant contribution is creating the Scala programming language, which began development in 2001 and was first released in 2003. Scala successfully unifies object-oriented and functional programming paradigms while maintaining complete interoperability with Java and .NET. In 2011, he co-founded Typesafe (renamed to Lightbend in 2016) to provide commercial support for Scala. His work has earned him numerous accolades, including being named an ACM Fellow in 2007 for his contributions to programming language design. He currently teaches several courses on Coursera, including Functional Programming Principles in Scala, Functional Program Design in Scala, and Programming Reactive Systems, while continuing to oversee Scala's development as both an academic and industrial programming language.
Scala Education Leader and Programming Language ExpertJulien Richard-Foy serve
Julien Richard-Foy serves as the Director of Education at the Scala Center at EPFL, where he focuses on making advanced programming techniques accessible to a broader audience. He leads the development of educational content and initiatives that bridge the gap between academic research and industry practices in Scala programming. As the lead instructor for "Effective Programming in Scala," a comprehensive course with over 14,688 enrolled students, he teaches fundamental concepts, best practices, and real-world applications of the Scala language. His course, which maintains a remarkable 4.8/5 instructor rating, covers essential topics from business domain modeling to asynchronous computations and functional programming. Through his work at the Scala Center, he contributes to developing open-source tools and libraries while guiding the Scala community's growth and supporting newcomers to the ecosystem.
Testimonials
Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.
Frequently asked questions
Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.





