Meetup & Technical Workshop

Designing Microservices with Axon - Modeling & Coding

Oct 11, 2023
13:30 - 17:00 GMT

We are pleased to invite you to a three-part event. 
Part 1 will focus on an overview of the architectural concepts that underlie Domain Driven Design.  Part 2 includes an introduction to the world of Event Modeling and Part 3 is a hands on coding session.
During the meetup, we will share what lessons can be learned from concepts such as DDD, CQRS, and event sourcing to manage complex systems.

Led by our expert Allard Buijze from AxonIQ. These sessions will give you the opportunity to learn about the latest concepts and techniques for building complicated, scalable software systems and test them out yourself.

Designing Microservices with Axon - Modeling and Coding Workshop 

With Allard Buijze  

This workshop contains three parts: 

Part 1: Introduction to architectural concepts 

Domain-driven design (DDD) is a software design approach focusing on modeling systems based on input from business domain experts.  

In this part, we will discuss what a domain and the model(s) within that domain are. We will cover the concept of bounded context and the importance of ubiquitous language for better communication. We will also look at building blocks within a domain model, including aggregate, events, value objects, and repositories.  

We will also talk about Command-Query Responsibility Separation (CQRS) and the advantages of separating the business logic (command side) from the projections (query side) in an application. We will then explain how these two parts become parts of the same conceptual application through a client or UI. And lastly, how the events (notification of something that has happened in the past) can update both the command and query sides. We will discuss how event sourcing is the way to move from events as a side effect to events at the core.  

Part 2: Discovery phase through event modeling 

Event modeling is a method of describing a system by looking at how the information changes over time. This practice omits the transient changes and looks at what is being stored and what the user sees at any time. We will look at the four patterns and seven steps of event modeling and model a sample application together.  

Part 3: Hands-on coding 

In this final portion, we will translate our event model into code (using your IDE of choice); the download information for a basic application will be provided. After a simple setup, we will continue using DDD's building blocks to expand our application further by applying the concepts of CQRS and event sourcing. Once completed, we will run the application locally with Axon Server as the event store and messaging platform, and if time permits, we can even look at scaling options.  

What should you bring to the workshop? 
- A laptop 

- An IDE that supports Maven, Java and Kotlin

- Basic knowledge of Java 

The event is free of charge.

There will be food and drinks.

Event-Driven Microservices - Beyond the Fairy Tale

Our applications need to be faster, better, bigger, smarter, and more enjoyable to meet our demanding end-users needs. In recent years, the way we build, run, and operate our software has changed significantly. We use scalable platforms to deploy and manage our applications. Instead of big monolithic deployment applications, we now deploy small, functionally consistent components as microservices. Problem. Solved. Right? 

Unfortunately, for most of us, microservices, and especially their event-driven variants, do not deliver on the beautiful, fairy-tale-like promises that surround them. 

In this session, Allard will share a different take on microservices. We will see that not much has changed in how we build software, which is why so many "microservices projects" fail nowadays. What lessons can we learn from concepts like DDD, CQRS, and Event Sourcing to help manage the complexity of our systems? He will also show how message-driven communication allows us to focus on finding the boundaries of functionally cohesive components, which we can evolve into microservices should the need arise. 

Reserve your spot now!

Allard Buijze

Founder and CTO of AxonIQ. Starting at 6, he developed a great passion for programming and guided large and small organizations in building efficient and scalable applications. Now, he is on a mission to help organizations implement large-scale systems with ease. He created the Axon Framework as an experiment initially, but when organizations started using Axon, AxonIQ was born. 

Allard Buijze