About

I help teams and organizations create software easy to understand at scale.

Iván García Sainz-Aja at Spring I/O 2025

Background

I am a programmer. That is where I start and where I always come back to.

I have been a technical leader for most of my career. The kind of engineer who asks why before writing any code, close enough to the business to understand what matters, technical enough to make it real. Mentoring engineers and building teams has always been part of how I work.

I spent several years on a hands-on API-first strategy team at a large retail organization, going deep on AsyncAPI and event-driven systems. That work brought me into the AsyncAPI community, where I became a TSC member and Ambassador.

Now I bring all of that into designing the governance office for asynchronous APIs at a major bank. The work focuses on standards, tooling, and architectural consistency.

But the work I keep coming back to is building the tools that make good architecture visible, navigable, and automatable.

ZenWave SDK

I built ZenWave SDK because I like creating software and enjoying it.

I like thinking about software. Talking about software. Making a blueprint so compact and visible that a business analyst can validate it and a junior engineer can build from it. When you can describe a bounded context in a DSL that fits on one screen, something clicks. The domain becomes legible. The team can reason about it together.

I don't like copy-pasting the previous feature and changing names all over the place. I don't like repeating the same patterns that can be automated. That is not software development. That is clerical work.

I like mentoring. Watching someone junior perform as senior because they have a tool that makes good architecture visible and accessible. That is worth something.

I want the good life in software development. Creating software that is easy to understand, easy to maintain, easy to evolve because its blueprint is so visible it can be questioned, validated, and improved. And then moving on to the next interesting problem instead of repeating the boring patterns again.

This is why I built ZenWave SDK. You can find it at zenwave360.io.

ZenWave Platform

ZenWave Platform exists to connect the dots.

In most organizations, the architecture lives scattered. AsyncAPI documents for events, OpenAPI specs for synchronous APIs, and tribal knowledge in people’s heads. You can understand your own service, but never the full picture.

ZenWave Platform brings these together. It connects your existing AsyncAPI and OpenAPI specifications with ZenWave ZDL models into one navigable architecture model.

The result is a living map of your system. Engineers, architects, and even AI agents can explore it, reason about it, and keep it consistent as the organization evolves.

I'm building this because it matters.

Topics I speak and write about

Domain-driven design and event-driven architectures. API-first development with OpenAPI and AsyncAPI. Event governance, contracts, and testing. Monoliths, moduliths, and microservices in Java and Spring. From model to code: turning domain conversations into running systems.