Solution Architect
Domänenschnitt, Bounded Contexts, Migrationspfade aus Legacy-Systemen, ereignisgesteuerte Architekturen. Dort, wo eine gewachsene Landschaft ein Zielbild und einen gangbaren ersten Schritt braucht.
23 Jahre Softwareentwicklung. Ich schneide gewachsene Systemlandschaften nach fachlichen Domänen und überführe sie schrittweise in verteilte Architekturen. Weil ich selbst acht Jahre Product Owner war, liefere ich das Zielbild so, dass ein PO es schneiden und priorisieren kann. Die Konsequenzen stehen im Klartext daneben.

Eine Soll-Architektur ist nur so gut wie der erste Schritt, den ein Team davon umsetzen kann. Diesen Schritt formuliere ich mit.
Domänenschnitt nach Domain Driven Design, Bounded Contexts und die Integrationsmuster dazwischen, Migration aus Legacy-Systemen, ereignisgesteuerte Architekturen.
Ich war acht Jahre Product Owner. Heute nutze ich das, um POs zuzuarbeiten statt sie zu vertreten: Optionen mit Aufwand und Konsequenz, Epics, die sich schneiden lassen, technische Abhängigkeiten vor der Planung auf dem Tisch.
Ich besetze eine davon – und weiß, wie die andere arbeitet.
Domänenschnitt, Bounded Contexts, Migrationspfade aus Legacy-Systemen, ereignisgesteuerte Architekturen. Dort, wo eine gewachsene Landschaft ein Zielbild und einen gangbaren ersten Schritt braucht.
Acht Jahre in der Rolle, unabhängig von Architekturthemen: Stakeholder aus fünf Fachbereichen, Backlog und Priorisierung, Refinements, Akzeptanzkriterien, UAT und Freigabe – auch für zwei native Apps und laufende Produkte ohne Umbauvorhaben.
Wofür man mich holt und was am Ende dasteht.
Fachliche Grenzen finden, Kontexte benennen, Datenhoheit je Kontext festlegen. Dazu die Integrationsmuster zwischen den Kontexten: Anticorruption Layer, Open Host Service, Published Language.
Soll-Architektur plus Migrationspfad: einzelne Kontexte schrittweise herauslösen, im laufenden Betrieb. Jeder Schritt liefert erkennbaren Nutzen.
Eventmodellierung und Service-Schnitt an fachlichen Grenzen. Services nach hexagonaler Architektur, Ports und Adapter, klare Schichtentrennung.
EventStorming zur Ist-Erhebung; Core-, Supporting- und Generic-Klassifikation als Grundlage für Buy-vs-Build-Entscheidungen und den Teamzuschnitt entlang der Domänen.
Die Produktverantwortung bleibt beim Product Owner. Ich sorge dafür, dass sie auf belastbarem Grund steht.
EventStorming mit Fachbereich, PO und Entwicklung. Danach reden alle über dieselben Begriffe. Der PO hat ein Modell, auf das die Roadmap passt.
Bounded Contexts geben vor, was unabhängig lieferbar ist. Ich mache technische Abhängigkeiten sichtbar, bevor sie im Sprint auffallen – priorisiert wird im Backlog des PO.
Zwei bis drei Wege statt einer Empfehlung, jeweils mit Aufwand, Risiko und Folgekosten. Die Entscheidung trifft, wer das Produkt verantwortet – sie muss nur informiert sein.
Vier Arbeiten, an denen sich der Ansatz zeigt.
Für die B2B-Handelsplattform Zielbild und Migrationspfad entworfen: Bounded Contexts geschnitten, Eventmodell und Datenhoheit je Kontext festgelegt, Services nach hexagonaler Architektur aufgebaut. Herauslösung schrittweise im laufenden Betrieb, technische Abhängigkeiten zwischen Teams und Systemen über den gesamten Pfad gesteuert.
DDD initiiert und als Arbeitsgrundlage verankert: Kontextschnitt gemeinsam erarbeitet, Teams als Change Lead an den Domänengrenzen restrukturiert, Wechsel von Kanban auf Scrum initiiert und OKR eingeführt.
Eigene Produkte – Bestandsprognose und Disposition, USt-ID-Prüfdienst – nach DDD und Clean Architecture selbst verantwortet: fachlicher Schnitt, Domänenmodell, Ports und Adapter, Persistenz, API-Design, Livebetrieb. PHP, PostgreSQL, TypeScript.
Order-to-Cash durchgängig über ERP (weclapp), B2B-Shop, Amazon-Marketplace, Fulfillment und Buchhaltung: Integrationsmuster gewählt, Datenhoheit und Eventflüsse definiert, Schnittstellen gebaut (REST, GraphQL, Webhooks) und externe Dienstleister gegen Akzeptanzkriterien gesteuert.
Architektur, Produktschnitt und Umsetzung in einer Hand – inklusive der Konsequenzen aus der eigenen Priorisierung.
Alles hier stammt aus eigener Anwendung.
Ich liefere Modell, Optionen und Konsequenzen. Die Reihenfolge macht der Product Owner. Weil ich die Rolle selbst hatte, weiß ich, in welcher Form Architekturarbeit dort brauchbar ankommt.
Eine Architekturentscheidung, die ein Team nicht nachvollzieht, hält keine zwei Sprints. Ich lege Optionen und Konsequenzen offen und entscheide dann sichtbar.
Kein Big Bang. Jeder Migrationsschritt löst einen Kontext heraus und liefert etwas, das im Betrieb erkennbar besser läuft.
Stammdaten, Bestellung, Preisfindung, Abrechnung – erst wenn der Ablauf verstanden ist, wird geschnitten. Ein Modell ohne verstandenen Prozess ist Dekoration.