Event Sourcing & Event Modeling - Getting Started!
Published 8/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.63 GB | Duration: 5h 58m
Published 8/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.63 GB | Duration: 5h 58m
Build a strong foundation around event sourcing and event modeling to design, model, and implement robust systems!
What you'll learn
Learn and understand the essence of Event Sourcing
Model information systems using Event Modeling
Learn how to implement event-sourced systems
Apply learnings in practice through hands-on excercises
Learn and understand the latest innovations like DCB
Requirements
Basic understanding of software architecture and software engineering
Experience in any programming language will be beneficial for hands-on lectures
A willingness to learn and challenge traditional approaches
Description
Are you ready to rethink how modern systems are built?This course will give you a solid understanding of event sourcing and event modeling, two powerful approaches for designing and implementing software close to the domain of your business.Instead of storing only the current state of your data, event sourcing captures every change as an immutable sequence of events. Event modeling builds on this by providing a structured way to design, visualize, and reason about your entire system through these events without going into detail about how the system is implemented. Throughout this course, you will:Learn the fundamental concepts and terminology behind event sourcing and event modeling.Explore how commands, events, queries, views, automation, sagas, aggregates, and more work together to coordinate business processes.Discover dynamic consistency boundaries (DCB) — a fresh way of thinking about consistency in event-sourced systems.Put everything into practice by modeling and implementing a simple review approval system step by step.The focus of this course is on concepts and patterns, not on a specific tool or framework. Most examples are written in Kotlin/Java, but the ideas apply to any technology stack.By the end, you’ll have the knowledge and confidence to apply event sourcing and event modeling in your own projects — and to participate in ongoing discussions about where these approaches are heading.If you’re a software engineer, architect, or anyone interested in better ways to model complex systems, this course is for you.
Overview
Section 1: Introduction
Lecture 1 Welcome
Lecture 2 Course Overview
Lecture 3 About the Technology Stack Used in This Course
Section 2: Concepts and Terminology
Lecture 4 Introduction
Lecture 5 Commands, Queries, and Events
Lecture 6 Command Query Separation (CQS)
Lecture 7 Command Query Responsibility Segration (CQRS)
Lecture 8 Event Sourcing
Lecture 9 Event Sourcing – Additional Reading
Lecture 10 Combining Event Sourcing with CQRS
Lecture 11 Event Streaming
Lecture 12 Event Modeling
Lecture 13 Domain-Driven Design (DDD)
Lecture 14 Event Sourcing with CQRS and DDD
Lecture 15 Vertical Slices
Lecture 16 Summary
Lecture 17 Glossary Reference
Section 3: Event Modeling - Getting Started
Lecture 18 Introduction
Lecture 19 Event-Sourced vs State-Stored Systems in Event Modeling
Lecture 20 The Main Building Blocks
Lecture 21 Brainstorming and Exploring the Domain
Lecture 22 Wireframes & UI Mockups
Lecture 23 State-Change Pattern
Lecture 24 State View Pattern
Lecture 25 Automation Pattern
Lecture 26 Translation Pattern
Lecture 27 The Patterns are Independent of Implementation
Lecture 28 Swimlanes
Lecture 29 Information Completeness Check
Lecture 30 Given When Thens (GWTs)
Lecture 31 Slices
Lecture 32 Summary
Section 4: Functional Event Sourcing and Domain Modeling
Lecture 33 Introduction
Lecture 34 Three Fundamental Functions: Decide, Evolve, and React
Lecture 35 Decider Pattern
Lecture 36 View Pattern
Lecture 37 Saga Pattern
Lecture 38 Combining Deciders, Views, and Sagas
Lecture 39 Summary
Section 5: The Application Layer
Lecture 40 Introduction
Lecture 41 Aggregates
Lecture 42 Materialized View
Lecture 43 Ephemeral View
Lecture 44 Saga Manager
Lecture 45 Note on Extensibility
Lecture 46 Orchestration and Choreography
Lecture 47 Application Styles
Lecture 48 Summary
Section 6: The Infrastructure Layer
Lecture 49 Some Event Store Options
Lecture 50 Some Event Streaming Options
Lecture 51 Additional note on event streaming
Section 7: Modeling a Simple Review Approval System
Lecture 52 Introduction
Lecture 53 Exploring the UI Prototype and First Draft
Lecture 54 [Reminder] Event Modeling Flexibility
Lecture 55 Completing the Event Model
Lecture 56 Summary
Section 8: Implementing a Simple Review Approval System
Lecture 57 Solution Overview
Lecture 58 Implementing the Domain Model
Lecture 59 Implementing the Application and Infrastructure Layer
Lecture 60 Integrating the UI
Section 9: Rethinking Event Sourcing: Dynamic Consistency Boundaries (DCB)
Lecture 61 Introduction
Lecture 62 The Limitations of Aggregates
Lecture 63 The Relationship Between Commands and Queries
Lecture 64 Decision Models
Lecture 65 Append Conditions
Lecture 66 DCB Specification
Lecture 67 Summary
Section 10: Where to Go From Here
Lecture 68 Event Sourcing and Event Modeling – Additional Learning
Section 11: Thank you!
Lecture 69 Thank you note!
Software Engineers,Software and Solutions Architects,IT Leads and Engineering Managers,Product Management