Ivan Garcia Sainz-Aja

Ivan Garcia Sainz-Aja

Java Tech Lead and Software Architect

Hands-on. I own the problem, from the domain model to production.

A Coruña, Spain

I am a Software Architect and Technical Lead specializing in event-driven architectures, API governance, domain-driven design, and API-first development.

I design and build product and platform software from the domain outwards, around Kafka, AsyncAPI, OpenAPI, Java and Spring Boot, and the tooling that turns models and contracts into running software.

At a major bank I led the design and drove the technical implementation of the governance model for event-driven APIs: built to provide automatic auditability, prevent drift between contracts and production, and grant access only to consumers declared in the contracts.

I build ZenWave SDK and ZenWave Platform: API-first contracts and domain models connected in a navigable knowledge graph, and deterministic generators that turn them into Spring Boot services without losing the language and structure of the domain. In practice the tooling generates most of the backend, and coding agents take the rest.

I use those agents to build product software, and ZenWave Platform itself, which I could not have taken on before. They build what I have already decided to build.

AsyncAPI TSC member and Ambassador. Speaker at Spring I/O and Codemotion.

Skills

Core
Java · Kotlin / KMP · Spring (Boot, Cloud, Data, Modulith) · Apache Kafka · AsyncAPI · Avro · OpenAPI
Practices
Domain-Driven Design · API-First · EventStorming · Event-driven architecture · Event-Driven Modular Monoliths · API governance · Contract testing
Also
JPA · MongoDB · Node.js · Microservices · KarateDSL · Coding agents / MCP

Current

Event-Driven Architecture Governance Lead

Capitole Consulting · Major Spanish bank (under NDA)

Defined the governance model for asynchronous APIs end to end, technical and organizational, and drove its adoption through the bank's waterfall demand cycle. I authored the standards, the target architecture and the contract lifecycle from proposal to provisioning, trained the teams that operate it, and act as product owner for the teams that implement it, under these principles:

  • Specs outlive tools. AsyncAPI and Avro contracts, versioned in Git, are the source of truth. The definitions outlive the tooling that provisions them. Previous config died with the tool.
  • Nothing is provisioned by hand. Topics, partitions, retention, schemas and ACLs all derive from the contracts. No contract, no resource, no permission: platform drift and undeclared consumption are impossible by construction, not by policy.
  • Auditable producer and consumer registry. Versioned in Git and automatically written by the pipelines on every release, so every access grant traces back to the release that introduced it.
  • Central API and schema registry with services and APIs catalogued according to the BIAN standard.
  • Architecture views generated from the contracts EventCatalog, Horizzon/BizzDesign, MCP context for agents.

Selected experience

Java Architect

Izertis (Smart Software Labs)

Architecture lead for Java projects without an established client architecture, defining stack, structure and standards from scratch instead of inheriting them from the client.

  • Designed and delivered a modular monolith for a medical research consortium: Spring Boot, JPA, several APIs, a React client, mobile, and wearable devices streaming patient data.
  • Built the team for it, recruiting and training two junior developers on ZenWave SDK modelling, and took it from first model to MVP.
  • Defined a Spring Boot archetype for new projects.

Java Tech Lead

SNGULAR · Leroy Merlin

Backend engineering and technical leadership on the pricing and promotions platform, whose output drives the electronic shelf labels in every physical store.

  • Maintained and evolved Spring Boot microservices over Kafka and Pub/Sub, with a nightly fan-out of thousands of messages and heavy peaks in promotion season.
  • Built several of those services from scratch, setting their structure and standards.
  • Java, Spring Boot, Spring Cloud, Kafka, Pub/Sub and MongoDB on Google Cloud.

Technical Leader and Architect

Indra · Inditex

Technical lead on a multi-tenant, multinational ecommerce platform: its public REST APIs, its first event-driven contracts, and the testing architecture behind both.

  • Led the adoption of AsyncAPI in 2020, months after the 2.0.0 release.
  • Built the internal tooling that made it practical: an AsyncAPI parser and a code generator for consumers and producers, along the lines of the OpenAPI generator Maven plugin.
  • Defined the end-to-end testing architecture and led a team of 8 QA developers, several of whom went on to lead their own squads.
  • Contract testing with KarateDSL across the platform teams.
  • Contributed to Java and Node.js backends: Spring Boot, MongoDB, Kafka, Solr.

Open source

ZenWave SDK and ZenWave Platform · zenwave360.io

I created ZenWave SDK to think about software, talk about it and validate it before writing any code. ZDL compresses the design of a service until it fits in your head, and the SDK generates the parts the model already implies: the boring ones. Four years in production, open source from day one, and paid for by the time it saved me and my teams.

ZenWave Platform takes that further into an architectural world model: a connected graph of knowledge, with REST and Async APIs, lightweight DSLs for EventStorming and Domain Modeling, and the code that implements them. Every link is optional, so a team can start from the APIs it already has. Building the Platform with coding agents is also where I push software engineering practices.

Both turn years of engineering and governance practice into something a team can pick up and reuse.

Arcadia Editions · github.com/arcadia-editions

Public playground and idea lab for event-driven governance and ZenWave Platform. A fictional retailer modelled end to end: AsyncAPI and OpenAPI contracts, topic and channel conventions, provider and client perspectives, and the pipelines that turn them into running services.

Like the Platform, it is built with coding agents, and the reasoning behind each decision is published as an article series at ivangsa.com/articles/arcadia.

KarateIDE · github.com/ZenWave360/karate-ide

Visual Studio Code extension for KarateDSL and OpenAPI contract testing.

AppFuse + GWT · github.com/appfuse

Contributor to the AppFuse project and its GWT integration.

Earlier experience

Earlier roles as analyst, technical leader and team leader:

  • Indra: senior consultant for web portals of the Xunta de Galicia electronic administration.
  • Teaching: programming and robotics workshops for children, and integral yoga.
  • Inditex: commercial logistics, financial reporting and Zara.com ecommerce systems.
  • Softtek GDC Europe: functional analysis and technical leadership for GE Energy, GE Money Bank, GE Fleet Services and Caixa Galicia.
  • Pionlabs (Brighton, UK): Java developer of online hotel reservation and e-learning applications.

Talks

All talks · Articles

Certifications

  • Google Cloud Certified Professional Cloud Architect, Google Cloud

Community

  • AsyncAPI Ambassador and member of the AsyncAPI Technical Steering Committee.
  • Organizer and speaker at AsyncAPI Conference on Tour, Madrid.
  • Speaker at Spring I/O and Codemotion.

Education

  • Seminar on Complex Problem Solving (J. Recuenco) UNIR · 2024
  • Master in Mental Training Scandinavian International University · 2014 to 2016
  • University Expert in Programming, 3D Design and Robotics UNIR · 2015
  • Degree in Social and Cultural Anthropology UNED · 2009 to 2012
  • HNC in Software Engineering South Thames College, London · 2003 to 2004
  • Degree in Economics and Business Universidade da Coruña · 1995 to 2001

Languages

Spanish: Native · Galician: Native · English: Professional working proficiency