Talks

Here is a list of talks I've given recently at conferences, meetups, and customers. If you are interested in having me present you can find me here!

Java and AI 2 Ways: Powered by AI, and Built with AI

AI is reshaping development from two directions at once, and most developers are only paying attention to one of them. This presentation uses both...

Agentic Coding, Intentional Design

AI coding agents are exceptionally good at generating boilerplate code, are somewhat effective for business logic, and often produce "AI slop." Domain-Driven Design was created to manage complexity...

Troubleshooting, Monitoring and Profiling with Java Flight Recorder, Mission Control and Cryostat

Java Flight Recorder and JDK Mission Control enable continuous collection of low level, detailed runtime information for incident analysis. JFR is included with the JDK, has a tiny footprint, and Java Flight Recorder is a profiling and event collection framework built into the JDK...

Walking to School in the Snow or What to Do When You Aren't Building Bridges with Bricks

Roman architects and engineers built colosseums, bridges and aqueducts that have lasted for millennia. Most software applications last… not as long...

Backends for Frontends: Microservices' Bestie

"Any problem in computer science can be solved with another layer of indirection." - David Wheeler (maybe) Mobile application developers created the Backends for Frontends Pattern as a layer of abstraction between mobile clients and backend services. In Microservices Architectures the Backends for Frontends pattern helps development, testing, and deploying user interfaces and insulates end users from breaking changes...

From MVC to DDD (and Hexagonal Architecture)

Refactoring from MVC to DDD with a bit of Hexagonal Architecture. No slides...

Event Driven Architecture with Quarkus, Kafka, and Kubernetes

Event Driven Architectures are distributed, asynchronous, and scalable. The rise of real time decision making, the on-demand economy, explosion of data, and the adoption of microservices have all driven the adoption of event driven architectures...

A Live Coding Introduction to Domain Driven Design and Hexagonal Architecture

Domain Driven Design excels in complicated environments, and provides a structure that makes coding difficult business logic significantly easier and faster. Domain Driven Design also aligns perfectly with microservices architectures, and the rise of microservices has created a renewed interest in DDD...

7 Strategies for Building Majestic Monoliths

"You shouldn't start a new project with microservices, even if you're sure your application will be big enough to make it worthwhile." - Martin Fowler. In this talk we will follow Mr. Fowler's advice and build a Majestic Monolith that can easily be refactored to microservices if and when the need arises...