Presentations


Here is a list of the the workshops and conference sessions I have presented. If you want to know more about the topics I can talk about, check the training page.

  • ConFoo Montreal  — Montreal, Canada

    A crash course into high availability for cloud apps talk

    Our applications are expected to be operational 24/7, but what does it take to achieve high availability when considering the current cloud offerings we have available? This session covers redundancy for compute and persistence, graceful degradation, disaster recovery, and active-active patterns if you need more than 99.99% availability, along with a framework to assess and prioritize to keep costs and complexity in check.

  • ConFoo Montreal  — Montreal, Canada

    DDD, CQRS and Hexagonal Architecture — the good parts workshop

    Domain-Driven Design, Command Query Responsibility Segregation and Hexagonal Architecture are commonly seen as the holy trinity of modern application development. But it is easy to get trapped and end up with unnecessary complexity or missing the point of those patterns altogether. This workshop approaches all three by focusing on the parts that can help you the most, leaving you with a solid foundation when you truly need to apply them.

  • ConFoo Montreal  — Montreal, Canada

    Advanced Error Handling with Event-Driven Architecture talk

    A deep dive into the complexities of error handling in event-driven architectures. We explored how to effectively detect and manage errors in asynchronous systems using choreographed sagas and dead-letter queues, covering practical strategies to address common pitfalls such as infinite loops and unmonitored DLQs to ensure your system remains robust and resilient.

  • ConFoo Montreal  — Montreal, Canada

    Sagas: When a Distributed Transaction Is The Right Thing talk

    Sagas are commonly used when you have a distributed system but need to handle its behavior in an atomic manner. However, it is easy to get lured and use it when it is not necessary, introducing unnecessary complexity. This session introduced the concept of a saga and guided the audience through a decision-making process to determine if it is the right choice and what should be part of it.

  • ConFoo Montreal  — Montreal, Canada

    Cache me if you can: Common strategies and why you not need 1 talk

    While simple at first, creating and maintaining a cache has aspects often overlooked. This session covered some of the challenges with caching, the typical solutions used, and presented the notion of using CQRS to eliminate the need to have one.