Skip to content

#40: Message design patterns and tradeoffs in EDA

Photo of Kostas Stroggylos
Hosted By
Kostas S. and Valadis
#40: Message design patterns and tradeoffs in EDA

Details

Hello DDDers,

Summer is here, and we have several reasons to celebrate - our community has steadily grown to 1400 members, and we are ready to run our 40th event! Thank you all for the incredible ride, looking forward to many more!

Just before we hit the beach, Kostas Stroggylos will do a presentation and live code demo on different ways of modeling messages in EDA and DDD. We will discuss the tradeoffs of each one, in terms of developer experience, observability, and ease of pairing with specific technologies.

After the presentation and discussion, stick around for some networking with pizza and drinks, generously offered by our hosts.

Talk: Message design patterns and tradeoffs in EDA

- "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 really 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 explores the practical implications of such decisions through real-world examples and lessons learned the hard way.
We'll examine how different approaches to structuring messages and broker topologies affect not just the code but also the team's ability to reason about, evolve, and operate the system. We'll pay special attention to the differences between internal and public-facing events, and how these considerations change across different message brokers and cloud-native messaging solutions. Rather than prescribing a single "correct" answer, we'll provide a framework for making informed decisions in a given context.

This talk is for practitioners who've tasted the complexity of event-driven systems and need practical insights and pragmatic approaches to balance competing concerns when designing systems.

Speakers

***

Kostas Stroggylos is a principal software engineer, currently fighting legacy and architecting novel software solutions at Kaizen Gaming. When not getting his hands dirty with code, 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 Outline

19:00 - 19:15 Warm welcome
19:15 - 20:15 Talk
20:15+ Discussion over pizza & beers

Sponsors

***

Dialectica is a B2B information services firm that serves the world's top business professionals, by enabling them to gather real-time information and insights from industry experts across various markets, industries, and regions. Driven by their mission to achieve unparalleled customer recognition, they are developing the most trusted and innovative knowledge-sharing platform in the world.

Dialectica has been recognized as one of Europe’s fastest-growing companies by the Financial Times for 5 years in a row, a Top Employer for Recent Graduates by The Career Directory in Canada and a Best Workplace.

Venue

***

The meetup will take place at the stunning facilities of our host, Dialectica, in the Piraeus tower, who are also kindly providing the catering for the event besides the venue. The venue is easily accessible by public transport and a short walk from the Piraeus metro station.

Photo of DDDGR - Domain-Driven Design Greece group
DDDGR - Domain-Driven Design Greece
See more events
Dialectica
2, Akti Posidonos Str, Pireas 185 31 · Piraeus