Architecture Talks

Talks on DDD, CQRS, event sourcing and event-driven systems, and on moving from a monolith to microservices.

Back to Talks

Talks about Software Architecture

I have created the following talks about software architecture, based on more than ten years of teaching DDD, CQRS and event sourcing.

Apache Kafka

Kafka today is a very interesting platform for communicating and integrating between different microservices. Kafka can be seen as a mixture of a database and queue that allows us to seamlessly distribute data between our systems. Offering Kafka or Kafka-like services is also something that all cloud providers do today, and in this presentation we will look at what Kafka is and how it fits into our architecture.

CQRS

Applying the CQRS pattern in your application can maximize its performance, scalability, and security. In this talk I will clarify how you can apply CQRS in practice and how it is often (but not necessarily) combined with Event Sourcing.

Domain-driven design

Domain-driven design (DDD) is an approach to developing software for complex needs. In this talk I will give a high-level introduction to this way of thinking about your design and architecture.

Event Sourcing

The Event Sourcing pattern defines an approach to handling operations on data that’s driven by a sequence of events, each of which is recorded in an append-only store. In this talk you will learn how this works and what the benefits are when you apply the Event Sourcing pattern in your architecture.

Event-driven applications

Utilizing events to their full potential in our architecture can bring us new possibilities. In this talk I will introduce why events are a useful construct and how we can use them in our applications. The concept of Event Sourcing will also be covered in this talk.

From Monolith to Microservices

We all know the dreadful monolith and we all want to escape the horrors a typical enterprise monolith brings. In this talk we will look at how we can move towards microservices. Various patterns and anti-patterns will be discussed during this talk.

Introduction to EventStorming and EventModeling

EventStorming and EventModeling are two popular techniques to brainstorm and document CQRS/ES-based systems. EventStorming is a collaborative workshop format that is useful for brainstorming new ideas and to share knowledge among co-workers. The second topic is EventModeling, which we can use to more formally document and design command- and event-driven systems. In this seminar I will give you an introduction to these two concepts and how they are related to event-driven systems.

Why do software projects fail?

We have all experienced failed software projects, but why do we fail? What can we do about this? In this talk we will look at some of the reasons why projects fail and what we can do to address them.

For more talks, visit my Talks page.

Get in touch

Contact