Course Objective & Scope
As synchronous service calls multiply, systems become fragile and harder to scale. Event-driven architecture reduces this coupling by decoupling components through events, but it introduces new problems such as delivery guarantees, ordering and consistency.
The course covers pub/sub and event streaming models, Apache Kafka (topics, partitions, consumer groups) compared with RabbitMQ, the transactional outbox, idempotent consumers, dead letter queues, choreography- and orchestration-based sagas, event sourcing with CQRS, and schema evolution. Participants model a business flow from their organisation with event storming and produce an event catalogue and an architecture decision record (ADR).
Who Should Attend?
- Backend developers building distributed systems
- Software and solution architects
- Integration and platform teams
- Prerequisite: experience building service-based applications
Key Takeaways
- Decide which interactions should be synchronous and which asynchronous
- Design Kafka topics and partitions for ordering and scale requirements
- Preserve data consistency with the outbox pattern and idempotent consumers
- Design distributed workflows and compensating steps with sagas
- Evolve event schemas in a backward-compatible way with a schema registry
Curriculum
Event Thinking and Event Storming
- Distinguishing events, commands and queries
- Discovering business flows with event storming
- Domain events vs integration events
Messaging Infrastructure
- Kafka: topics, partitions, offsets, consumer groups
- The RabbitMQ exchange and queue model
- Cloud options: Azure Service Bus, Amazon SNS/SQS
Delivery Guarantees and Consistency
- At-least-once, exactly-once and ordering
- Transactional outbox and idempotent consumers
- Retries, dead letter queues and poison messages
Sagas, Event Sourcing and CQRS
- Choreography- and orchestration-based sagas
- Rebuilding state with event sourcing
- Read models with CQRS
Schema Management and Traceability
- Avro/Protobuf and schema registry
- Correlation IDs and distributed tracing
- Monitoring consumer lag
Other Courses in This Category
-
Microservices Architecture
Defining service boundaries, data ownership, API gateways, inter-service communication, resilience patterns, deployment on Kubernetes and observability — technology-agnostic microservices design training.
- Live Course
- 6 modules
-
Secure Software Development (SSDLC & OWASP)
OWASP Top 10 and OWASP API Security Top 10 vulnerabilities, threat modeling, secure authentication, SAST/DAST/SCA tooling and secret management — for backend and full-stack teams preventing security flaws while writing code.
- Live Course
- 5 modules
-
Legacy System Modernization and Refactoring Strategies
Characterization tests, seam and dependency-breaking techniques, strangler fig, branch by abstraction, anti-corruption layers and incremental database decomposition — for teams modernising critical live legacy systems without downtime.
- Live Course
- 5 modules
-
Web Development with ASP.NET MVC (.NET Framework)
Developing, maintaining and improving enterprise ASP.NET MVC 5 applications on .NET Framework: routing, controller/view architecture, Entity Framework 6, filters, OWIN authentication and preparation for modernisation.
- Live Course
- 5 modules
-
Web Application Development with ASP.NET Core MVC
Modern server-rendered web applications with ASP.NET Core MVC: Razor views, Tag Helpers, ViewComponents, model binding, FluentValidation, EF Core, Identity authorisation and xUnit tests — for teams building enterprise portals and back-office apps.
- Live Course
- 5 modules
-
SharePoint Server and SharePoint Framework (SPFx) Development
Enterprise portal development on SharePoint Server Subscription Edition and hybrid environments: SharePoint Framework (SPFx) web parts and extensions, REST/CSOM APIs, list and content modelling, permissions and workflow integrations.
- Live Course
- 5 modules
Get in touch