I'm here to help you!
I aggressively advance software developer skills utilizing Domain-Driven Design, XOOM, and DomoRoboto to deliver excellent software solutions. My commitment is to balance the right technology choices with your essential and unique business vision. Championing simplicity, which requires special discipline and determination, is what I do.
I am a software architect and developer with more than 35 years of experience in a broad range of business domains. As a leading expert in Domain-Driven Design I champion simplicity while working in complex business domains.
I consult and teach around Domain-Driven Design and reactive software development, helping teams and organizations realize the potential of business-driven and reactive systems as they transition from technology-driven legacy web implementation approaches.
I am the founder of the open source (OSS) Kalele XOOM platform, a set of DDD-friendly distributed computing tools that simplify concurrent, reactive, event-driven, and microservices architectures, supporting the JVM. (See source code.)
My Kalele team and I created DomoRoboto to improve individual and team experience with DDD and related challenges, including software architectures. With DomoRoboto you get team agile strategic experimentation, discovery-based learning, and software modeling. DomoRoboto is an all-in-one tool that gives you strategic, rapid, learning for teams using Domain-Driven Design and Architecture modeling.
In addition to my best-selling books—Strategic Monoliths and Microservices; Implementing Domain-Driven Design; Domain-Driven Design Distilled; and, Reactive Messaging Patterns with the Actor Model—I was commissioned by Pearson/Addison-Wesley as curator and editor of my own Vaughn Vernon Signature Series.
Let me help…
I think I read through your book at least 5 times, finding new things and/or reinforcing things I already learned from you. My last read through I focused only on the narrative you presented of the team fighting through design ideas, failures, corrections. I really found this format of being a bug on the wall watching the meeting unfold to be quite informative. ... a great way to understand my own thinking by identifying with their thinking.
More importantly, I really enjoy your coding style—the fluency within your application services setting up the aggregates is so refreshing to review. I model a lot of my code style off of you, and I have been doing [software development] for way too many moons. I think everything you wrote years ago is still relevant today—perhaps more so due to its clarity. I just wanted to say thank you.
I am available for training, mentoring, consulting and speaking.
Go beyond the theory of Domain-Driven Design and see how teams can actually use DDD to accelerate their strategic initiatives in a way that helps them design for business competitive advantage with this three-day workshop. Emphasis is placed on software design in source code with agile knowledge acquisition and de-emphasizes throwing technology at strategic business software initiatives.
Microservices architecture is a clear trend. A trend is not hype, but it’s also not mainstream. You must not ignore the Microservices trend, but you must learn why this architecture is trending and how to successfully adopt it, or decide not to. This 3-day workshop steps you through the definitions and drivers to help you become oriented with this approach to distributed computing.
A two-day, intensive, design and programming workshop first builds your foundation with the Actor Model using vlingo/actors. This workshop then expands your understanding with advanced application and system design approaches, using Domain-Driven Design and microservices. A hands-on workshop with many practical exercises. Students are strongly encouraged to engage using the VLINGO/PLATFORM components.
A highly sought after series, these deep dives into topics such as Aggregates, Process Management and Sagas, and Reactive Architectures, will accelerate your learning and skills growth.
Systems today are far more likely to be distributed, especially due to the ever-increasing popularity of the cloud and microservices, and they’re also increasingly asynchronous and message- and event-driven, and thus reactive. In this 2-day course you will learn how to deal with these and other influencing conditions using domain-driven design.
This intensive, two-day, hands-on workshop teaches you Domain-Driven Design within an explicitly event-oriented microservices business domain. You will learn both strategic and tactical design. This workshop is specially designed for mid-level and senior software developers and architects who are interested in applying event-driven and microservices architectures using DDD.
Thorough and exhaustive, this one-day, hands-on workshop consists of short lectures, exercises, and innovative game-play leading you to a clear understanding of how to leverage DDD, putting it to use on your Agile project. It’s a class that is well balanced for business experts and technical stakeholders alike.
- Your Brain on Inversion of Control and Dependency InjectionA few days before writing this post, I shared my thoughts about this topic on X/Twitter, LinkedIn, and Mastodon. The top engagement was on X/Twitter, with LinkedIn second, and Mastodon being minimal (as usual). There was a lot of positive reaction—nearly 900 likes to date—including those expressing their support for my thoughts. Several shared their […]
- Reactive DDD: Modeling UncertaintyDomain-Driven Design supports reactive architecture and programming. Still, reactive introduces uncertainty. Back in 2003, the way that Domain-Driven Design was used and implemented is quite different than the way we use it today. If you’ve read my book, “Implementing Domain-Driven Design”, you’re probably familiar with the fact that the Bounded Contexts I model in the […]
- Diagramming to CommunicateI recently discussed my diagramming style with an author of a book in my signature series. The post Diagramming to Communicate appeared first on Kalele.
- Why EventStorming Practitioners Should Try Domain StorytellingDomain Storytelling is a collaborative modeling technique that highlights how people work together. Its primary purpose is to transform domain knowledge into business software. This purpose is achieved by bringing together people from different backgrounds and allowing them to learn from each other by telling and visualizing stories. If you practice EventStorming, you might see […]
- Adopting an API Design-First ApproachThe design of a web API is a separate and critical step of software delivery. The process of API design requires communication that extends beyond the developers that will deliver the API. When executed properly, an API design process helps to course-correct wrong assumptions while aligning business, product, and technology teams on the essential elements […]