About Me

Hi, I'm Marco Heimeshoff

I'm a software developer turned trainer and consultant, passionate about helping teams build software that truly serves their business. For over 15 years, I've been exploring, practicing, and teaching Domain-Driven Design.

My journey began in healthcare software, where I first discovered how critical it is for software to accurately reflect the complex realities of a business domain. This experience shaped my belief that great software starts with deep understanding.

[Photo Placeholder]
My Journey

How I Got Here

Early Days

The Programmer's Path

Started programming as a teenager, fascinated by the ability to create something from nothing. That curiosity never left, it just evolved into a deeper question: how do we build software that actually matters?

Healthcare Software

Learning in Complex Domains

Working on healthcare systems taught me that the biggest challenge isn't technology, it's understanding. Medical domains are complex, regulated, and life-critical. This is where I first grasped the value of Domain-Driven Design.

DDD Discovery

Finding My Framework

Eric Evans' "Blue Book" was a revelation. Here was a systematic approach to the problems I'd been struggling with. I dove deep, experimented, failed, learned, and eventually became a practitioner and teacher.

Training & Speaking

Sharing What Works

Realizing that knowledge multiplies when shared, I began training teams and speaking at conferences. Each workshop teaches me as much as the participants, each domain reveals new patterns and insights.

Today

Continuous Evolution

Now I combine years of hands-on experience with the latest developments, including LLM-assisted development. The core principles remain, but the tools and techniques keep evolving. So do I.

My Approach

Tool-Agnostic, Principle-Driven

Technologies come and go. Frameworks rise and fall. But the principles of good software design endure. That's what I teach.

Principles Over Tools

I don't teach "how to use framework X." I teach the underlying principles that help you make good decisions regardless of your tech stack. When you understand the "why," the "how" becomes clear.

Practice Over Theory

Reading about DDD is one thing. Applying it is another. My workshops are hands-on, using real exercises and collaborative modeling sessions. You learn by doing, not just listening.

Collaboration Over Documentation

The best domain knowledge lives in people's heads, not documents. Techniques like EventStorming bring experts together to externalize and share that knowledge in ways documents never could.

Community

Building Together

The DDD community is generous and collaborative. I'm proud to contribute to its growth.

KanDDDinsky Conference

Co-organizing this Berlin-based conference has been a highlight. Bringing together practitioners from around the world to share experiences, challenge assumptions, and learn from each other.

kandddinsky.de

Virtual DDD

Co-founding Virtual DDD means DDD knowledge is accessible to everyone, everywhere. Regular online sessions, a welcoming community, and the chance to learn from experts across the globe.

virtualddd.com

German DDD Community

Helping grow the local DDD scene in Germany through meetups, workshops, and conversations. Great to see more teams adopting these practices.

Get Involved
Side Projects

Still a Practitioner

Teaching is great, but I still love building things. These side projects keep me sharp and grounded in the realities of software development.

🎮

Jump'n'Rogue

A roguelike game project that lets me experiment with event sourcing patterns in a fun context. Building games is a great way to explore complex state management challenges.

🐉

Dorc

Another creative project where I get to apply DDD principles outside of enterprise software. Because domain modeling works everywhere there's complexity to manage.

Let's Work Together

Whether you need training for your team, help with a complex domain, or just want to chat about DDD, I'd love to hear from you.

View Services Get in Touch