Event Driven Architectures are distributed, asynchronous, and scalable. The rise of real time decision making, the on-demand economy, explosion of data, and the adoption of microservices have all driven the adoption of event driven architectures. Event Driven code is reactive by nature and significantly different from imperative programming. In this workshop we build an event driven application using Red Hat’s Quarkus and AMQ Streams (Apache Kafka.) We will cover the basic building blocks of event driven architecture including * Domain Driven Design * REST or Kafka (or something else) * How and where to maintain state * Testing event driven systems