Background
I've spent the past 15+ years helping organizations modernize their software architectures and improve their technical practices. My work spans from hands-on engineering to strategic consulting, always focused on sustainable improvement rather than quick fixes.
Currently, I'm deeply focused on the intersection of AI and software development. I use tools like Claude daily for complex engineering tasks - architecture analysis, code modernization, and building new capabilities. The productivity gains are transformational, but the real change is in how we think about software development itself.
Focus Areas
My work centers on three interconnected areas:
Architecture Modernization — Helping organizations escape legacy constraints while managing risk. This means understanding both the technical landscape and the organizational dynamics that make modernization difficult.
Domain-Driven Design — Using DDD as a strategic tool for aligning software with business needs. I'm particularly interested in how domain boundaries affect team structures and organizational effectiveness.
AI-Assisted Development — Exploring how AI tools change what's possible in software engineering. Not just faster coding, but fundamentally different approaches to understanding systems, generating solutions, and validating ideas.
Books
I've authored two books on software architecture:
Architecture Modernization (Manning, 2024) — A comprehensive guide to modernizing software architectures, from strategic assessment through execution. Covers technical patterns, organizational approaches, and the human dynamics that make modernization succeed or fail.
Patterns, Principles and Practices of Domain-Driven Design (Wiley, 2015) — Co-authored with Scott Millett. A deep dive into tactical and strategic DDD patterns, with practical guidance for applying them in real systems.
Speaking & Workshops
I speak regularly at conferences worldwide on architecture modernization, DDD, and the evolving practice of software development. My talks blend practical experience with strategic perspective, always aimed at giving attendees actionable insights.
I also run workshops for organizations tackling modernization challenges, helping teams develop shared understanding and practical plans for moving forward.
Connect
I'm always interested in connecting with people working on interesting problems. Whether you're modernizing legacy systems, exploring AI-assisted development, or thinking about software architecture strategy, feel free to reach out.