July 20–24, 2015
Portland, OR

Introduction to reactive programming: Hands-on with Akka, Java, and Scala

Duncan DeVore (Lightbend), Henrik Engstrom (Lightbend)
9:00am–5:00pm Monday, 07/20/2015
Training D134

This training continues on to Tuesday.


Code examples and exercises will be written primarily in Java with some Scala, so a basic knowledge of the Java language is required.

Computer Requirements

In addition, attendees should bring their own laptop with admin rights, have access to the internet, and Java 8 installed. Both Windows and OSX environments are supported.


Are you building distributed apps? If so, you need those apps to be responsive, resilient, and elastic in the face of both failure and extreme load. Reactive programming is a practical way to make sure you are meeting the needs of your customers and ensuring that you are not losing out on revenue.

This two-day training course will explore the tenets of reactive programming through first establishing the reasons why from both a technical and business perspective. Then we will dive in with hands-on exercises that lead to a fully functional reactive application, that is message-driven, elastic and resilient by the conclusion of the course.


  • Overview
  • Why reactive?
  • Establishing our analogy
  • Handling the basics of a reactive application
  • Introducing and understanding bottlenecks
  • Resolving bottlenecks through elasticity
  • Introducing and understanding failure
  • Resolving failure through self-healing


Architects, developers, technical leaders, and anyone who is interested in learning about the basics of reactive programming and distributed computing with Akka, Java, and Scala.

Photo of Duncan DeVore

Duncan DeVore


Duncan DeVore specializes in the design and implementation of distributed systems using the tenets of the Reactive Manifesto with Scala, Akka, and the Typesafe stack. Duncan believes in responsible design through functional programming with an abundance of test coverage. He loves to code, present, and help others work through the challenges of distributed computing. Duncan’s open source projects include journals for Eventsourced and Akka-Persistence based on the theory of Eventsourcing and CQRS. His specialties include distributed computing, microservice-based architectures, cloud computing, event sourcing, and CQRS. Duncan is the co-author of Reactive Application Development.

Photo of Henrik Engstrom

Henrik Engstrom


After graduating with a M.Sc degree in computer science in 1998 at the Royal Institute of Technology, Henrik Engström worked as a consultant up to his Typesafe employment in 2011. Henrik has not only vast experience in various types of programming, but also great domain knowledge within the finance, retail, and e-gaming industries. Apart from his major interest, programming languages, he is also an avid Arsenal supporter, black belt in Shotokan Karate, and a hobby wine connoisseur.