EDA Panel • R. Sethi, S. Brisals, L. Mezzalira, M. Gasch, J. Beswick & E. Johnson • GOTO 2024

Join experts as they explore event-driven architecture challenges, best practices, and success factors. Learn when to use EDA, technical considerations, and real-world use cases.

Key takeaways
  • Event-driven architecture (EDA) is particularly effective for integrating different systems, connecting legacy applications, and enabling decoupled communication between services

  • Key challenges in EDA implementation include:

    • Observability across distributed systems
    • Managing eventual consistency
    • Properly defining boundaries between services
    • Handling sensitive data securely
  • Best practices for EDA adoption:

    • Start small with bounded contexts
    • Consider team maturity and cognitive load
    • Use event storming for boundary identification
    • Implement proper dead letter queues for failed events
    • Focus on contract design between services
  • EDAs may not be suitable for:

    • Highly latency-sensitive operations
    • Gaming systems requiring instant responses
    • Simple CRUD operations
    • Applications completely within single bounded context
  • Success factors for EDA implementations:

    • Strong organizational support
    • Clear understanding of business domains
    • Proper team structure following team topologies
    • Established center of excellence
    • Incremental adoption approach
  • Technical considerations:

    • Careful handling of sensitive data in events
    • Proper event storage and dead letter queue implementation
    • Balance between sync and async operations
    • Integration patterns with existing systems
    • Event schema design and evolution
  • Common use cases include:

    • Financial services integration
    • Document processing workflows
    • Salesforce integrations
    • Legacy system modernization
    • Cross-service data propagation