Slides from talk given on Tuesday June 12th at the Boulder Java Users Meetup Group and Wednesday June 13th, 2018 at the Denver Java Users Meetup Group. This talk, by Geoff Filippi, will start with an introduction to reactive programming. We will introduce the Reactive Manifesto and explain Non-blocking IO. We will look at some of the new reactive programming features in Java like CompletableFuture and Reactive Streams. Project Reactor, Spring 5 and Spring Boot 2 are helping to make these new features accessible to Java developers. We will also introduce the concept of backpressure to control the flow of data. You will learn how to create a Non-blocking application using Spring Boot 2. We will use start.spring.io to create a new Reactive application. Will will compare the Flux and Mono types and discuss when to use each. About Geoff Filippi: Geoff is a Senior Architect at DISH Network, in the security group. Previously at Dish he served a large group of developers implementing microservices. Prior to his work at DISH, he was an Application Architect at Oildex, an oil and gas data service company. He also spent 12 years at Time Warner Cable, where he was a Senior Engineer. At TWC, he lead the team that built the video streaming web application, TWCTV. Geoff holds BS and MS degrees in Computer Engineering from Virginia Tech. He holds several patents related to high-availability, architecture, wireless networks and cable systems. Geoff is focused on automating security, API design, domain-driven design and cloud-native architectures.