Expertise
How I get an architecture decided and adopted, and what I build once it is.
How I work
The part of an architect’s job that is not the diagram: deciding, recording, and getting people who report elsewhere to come along.
Working across an organisation
The part of the job that decides whether an architecture ships. Teams that report elsewhere, functions that have to trust a number, and vendors somebody signed four years ago. Influence without authority, with the situations written out.
Evidenced by
- Cloud Gateway
- Integration platform
- SAP event backbone
- SAP Finance → Snowflake
- Kafka data products
Architecture decisions
Making the call and writing it down. Target-state with a road to it, decision records that state what a choice costs, and C4 at the altitude the audience needs.
Evidenced by
- SAP Finance → Snowflake
- Cloud Gateway
- Portfolio
What I build
The five areas I work in, in the order I am usually hired for.
Data & lakehouse
Cloud-native data platforms for analytics and AI. Medallion lakehouses, data contracts where the source hands off, and CDC pipelines that stay reliable.
- SAP Finance → Snowflake
- Kafka data products
- Portfolio
Integration architecture
Designing the backbone that lets enterprise systems talk, from legacy ESBs to event-driven, API-led, domain-oriented platforms.
- Integration platform
- SAP event backbone
- Cloud Gateway
- Kafka data products
Event-driven & streaming
Kafka and cloud-native streaming as the backbone of modern data and integration. Schema evolution, stream processing, and systems teams can depend on.
- Integration platform
- SAP event backbone
- Kafka data products
- Cloud Gateway
APIs & gateways
API platforms that scale across dozens of teams. Gateway strategy, security governance, lifecycle, and the developer experience that gets them adopted.
- Integration platform
- Cloud Gateway
AI & automation
Integrating AI into enterprise systems the way anything else gets integrated. Behind a contract, with an evaluation gate before release, and with the model kept outside the runtime so it can be replaced.
- Portfolio
- Kafka data products