ArchitectureArchitecture
Hands-on Lab120min
INTERMEDIATE

How to design your messages: Patterns and tradeoffs in Event Driven Architectures

This session explores the long-term impacts of message structure, schema evolution, and event design choices in distributed systems. Using real-world examples, it highlights trade-offs between domain purity and operational needs, and offers a framework to help teams make informed, context-driven decisions rather than prescribing one-size-fits-all solutions.

Kostas Stroggylos
Kostas StroggylosKaizen Gaming

talkDetail.whenAndWhere

Saturday, November 8, 13:20-15:20
Room 6 - Olympias
talks.roomOccupancytalks.noOccupancyInfo
talks.description
- "Our domain code is clean, but we can't trace message flows in production and debug issues."
- "Our event structure helps observability but the domain concepts are buried in boilerplate code that handles metadata."
- "Other teams keep subscribing to our internal messages or are constantly asking for changes to our public message schemas."

Sound familiar?
When designing distributed systems, we often make quick decisions on the structure of the messages we publish and consume, without evaluating critical trade-offs between domain purity and operational requirements that can impact us in the long run. The same can happen with schema versioning and evolution, broker topology, and separation of internal vs public events.

This session showcases the practical implications of such decisions through real-world examples and lessons learned the hard way.
We'll examine how different approaches affect not just the code but also the team's ability to reason about, evolve, and operate the system. Rather than prescribing a single "correct" answer, we'll provide a framework for making informed decisions in a given context.
schema
trade-offs
messages
observability
talks.speakers
Kostas Stroggylos

Kostas Stroggylos

Kaizen Gaming

Greece

Kostas is a principal software engineer with a solid experience of more than 20 years.
He is currently fighting legacy and architecting novel software solutions at Kaizen Gaming. When not getting his hands dirty with code, riding his bike, sailing or hiking, he studies the sociotechnical aspects of complex systems and likes to challenge assumptions and existing practices. He is passionate about organizational agility and fast flow. He serves as a volunteer and committee member for Devoxx Greece, an organizer for Better Ways (ex Agile Summit) and co-organizes Domain Driven Design Greece meetup.

talkDetail.rateThisTalk

talkDetail.poortalkDetail.excellent

talkDetail.ratingNotYetAvailable

talkDetail.ratingAvailableWhenStarted

talkDetail.signInRequired

talkDetail.signInToRateDescription

occupancy.title

occupancy.votingNotYetAvailable

occupancy.votingAvailableBeforeStart

talkDetail.signInRequired

occupancy.signInToVoteDescription

comments.title

comments.speakerNotEnabledComments