Engineering the Future of Software
Feb 25–26, 2018: Training
Feb 26–28, 2018: Tutorials & Conference
New York, NY

Building streaming applications with Kafka

Dean Wampler (Anyscale), Boris Lublinsky (Lightbend)
1:30pm–5:00pm Monday, February 26, 2018
Application architecture
Location: Regent
Secondary topics:  Case Study, Hands-on
Average rating: **...
(2.33, 3 ratings)

Who is this presentation for?

  • Developers and architects interested in understanding how and when to use Akka Streams and Kafka Streams in streaming applications

Prerequisite knowledge

  • Programming experience, preferably with Java or Scala
  • Familiarity with Kafka (useful but not required)

Materials or downloads needed in advance

  • A laptop preconfigured with the tutorial materials (instructions)

What you'll learn

  • Learn how to combine Kafka with Akka Streams and Kafka Streams to implement various streaming scenarios that leverage the strengths of these tools while avoiding their weaknesses
  • Understand how these tools compare to Spark Streaming and Flink


Kafka Streams is purpose built for reading data from Kafka topics, processing it, and writing the results to new topics. With powerful stream and table abstractions and an exactly once capability, it supports a variety of common scenarios. Akka Streams emerged as a dataflow-centric abstraction for the Akka actors model, designed for general-purpose microservices. It supports a wider class of application problems and third-party integrations, so it’s less Kafka-centric.

Dean Wampler and Boris Lublinsky walk you through building several streaming microservices applications based on Kafka using Akka Streams and Kafka Streams for data processing. You’ll explore the strengths and weaknesses of each tool, helping you choose the best tools for your needs, and contrast them with Spark Streaming and Flink, so you can determine when to choose them instead.

Photo of Dean Wampler

Dean Wampler


Dean Wampler is an expert in streaming data systems, focusing on applications of machine learning and artificial intelligence (ML/AI). He’s head of developer relations at Anyscale, which is developing Ray for distributed Python, primarily for ML/AI. Previously, he was an engineering VP at Lightbend, where he led the development of Lightbend CloudFlow, an integrated system for building and running streaming data applications with Akka Streams, Apache Spark, Apache Flink, and Apache Kafka. Dean is the author of Fast Data Architectures for Streaming Applications, Programming Scala, and Functional Programming for Java Developers, and he’s the coauthor of Programming Hive, all from O’Reilly. He’s a contributor to several open source projects. A frequent conference speaker and tutorial teacher, he’s also the co-organizer of several conferences around the world and several user groups in Chicago. He earned his PhD in physics from the University of Washington.

Photo of Boris Lublinsky

Boris Lublinsky


Boris Lublinsky is a principal architect at Lightbend, where he specializes in big data, stream processing, and services. Boris has over 30 years’ experience in enterprise architecture. Previously, he was responsible for setting architectural direction, conducting architecture assessments, and creating and executing architectural road maps in fields such as big data (Hadoop-based) solutions, service-oriented architecture (SOA), business process management (BPM), and enterprise application integration (EAI). Boris is the coauthor of Applied SOA: Service-Oriented Architecture and Design Strategies, Professional Hadoop Solutions, and Serving Machine Learning Models. He’s also cofounder of and frequent speaker at several Chicago user groups.

Comments on this page are now closed.


Picture of Dean Wampler
03/06/2018 5:28am EST

You can find a link to the materials in the “Materials or downloads needed in advance” above.

Picture of Boris Lublinsky
03/06/2018 5:03am EST

Presentation is in the github

Picture of Ruben Sousa
03/06/2018 5:00am EST

Hi Dean and Boris, thanks for presenting this topic. Will make your presentation available to assistants? Thanks in advance,