Global CTO - Software Architecture at Pivotal

How do we achieve transactional behavior without the complexity of two-phase commit?

How do we reference common entities from multiple services without overwhelming the hosting services?

How do we answer questions spanning multiple services without the convenience of SQL JOINs?

Event Sourcing and Command-Query Responsibility Separation (CQRS) are an effective pair of data and collaboration patterns that can help us address these challenges.

One of the key tasks involved in designing an Event Sourcing and CQRS solution is the choice of write and read models. The ideal write model supports long-term retention of an immutable, append-only log of events, organized by topics to which clients can subscribe. The ideal read model is…well, whatever you need it to be to support your query needs!

In this session, we’ll examine how effective Apache Kafka can be at supplying both write and read models, as well as look at other options for read models in the open source ecosystem.

Matt is obsessed with the idea that enterprise IT “doesn’t have to suck,” and spends much of his time thinking about lean/agile software development methodologies, DevOps, architectural principles/patterns/practices, and programming paradigms, in an attempt to find the perfect storm of techniques that will allow corporate IT departments to not only function like startup companies but also create software that delights users while maintaining a high degree of conceptual integrity. He is currently the Global CTO of Architecture at Pivotal, and spends much of his time advising IT leadership on the effective adoption of cloud-native architectures.