Greenfield project to relieve customer support. Digitization and automation of manual processes as well as creation of self-services for B2C customers.
Pain-point analysis of processes: vehicle return, purchase price request and contract reclassification
Identification of process owners and stakeholders in the customer process environment
Active information gathering from stakeholders and specialist departments
Preparing and presenting customer processes using domain story telling
Developing the REST API for customer services with Spring Boot and Kotlin
Building the public customer frontend with React and TypeScript
Developing a client library for accessing in-house and external systems based on the reactive Spring WebClient (RestTemplate deprecated)
Adapting the client library to the internal authentication mechanism (automatic token refresh on HTTP 401 and retry logic)
AWS Kubernetes management via local SSH tunneling (Linux bastion host)
Setting up the Azure deployment pipeline
Implementing the Azure security concept (subscription key)
Kafka integration with Spring
Actively sharing knowledge with internal and external colleagues at regular meetings
Running a workshop on NATS/JetStream (message‐oriented middleware) as a lightweight alternative to Kafka
Containerization with Docker and Kubernetes (Kustomize)
Architect, Developer, Analyst
Kotlin, Java, Groovy, Spring Boot, Spring WebFlux (client), Spock Framework (BDD), Docker, Apache Kafka, NATS/JetStream, React, TypeScript, git, AWS Cloud, IntelliJ IDEA, Gradle, REST (Level 3), OAuth, event‐driven architecture, domain‐driven design, domain story telling, Scrum
Agile, valuable and future-proof: further development, modularization and technical modernization of the personal customer portal My AXA using an agile Scrum approach.
Digital transformation: integrating new REST APIs to expand the digital product and service portfolio in coordination with internal and external partners
Monolith modularity: splitting a complex monolithic application along clear business and technical responsibilities
Clean code: continuously refactoring complex code for readability, maintainability and test coverage (pathfinder principle)
Agile learning: actively and continuously presenting the latest developments and innovative technologies/concepts in a weekly cross-team Know-How Transfer meeting
Speaker coordination: recommending and presenting an external speaker for domain-driven design and modularization
Consumer-driven: advising and supporting other teams in designing interfaces to connect and extend My AXA functionality
Integration testing: introducing WireMock to simulate backend API calls in automated and manual developer tests
Standardization: replacing manual caching and resilience solutions with industry standards like Spring Cache (@Cacheable) and Resilience4J (@CircuitBreaker, @Bulkhead, @TimeLimiter, etc.)
Data validation: uncovering and fixing errors in existing request validation using JSR-170 Java Bean Validation, coordinating with clients and developing a “silent bean validation” simulation approach
Code generation: improving and cleaning up the code generator for transforming OpenAPI contracts into client libraries
Deep dive: analyzing Lombok‐generated bytecode output and fixing errors
Observability: developing dashboards and log analyses with Loki and Grafana Cloud
Operations: daily monitoring and reporting of production and QA systems
Backend Developer, DevOps Engineer
Java 21, Spring Boot 3, Spring Integration, Spring Cache, REST, Java Bean Validation, Resilience4J, Mustache, Freemarker, Lombok, JAX-WS, Mockito, Docker, OpenAPI, Swagger, WireMock, Loki, Grafana Cloud, Graylog, Jenkins, Tekton, Rundeck, SonarQube, Checkstyle, Spotbugs, Nexus, Red Hat OpenShift, GitLab, GitHub, IntelliJ IDEA 2025, Maven, Gradle, Jira, Confluence, Scrum
paydirekt – connecting authorization center (BVtoAZ)
Connecting central eBanking business components to an external payment authorization service. The main task was revamping and extending an existing REST communication. Incoming data in UTF-8 is first converted into a TLV structure (tag-length-value) with an EBCDIC-encoded value field, then wrapped into an ISO8583 message (standard for financial transaction card originated messages) and sent via HTTP POST as signed, Base64-URL-encoded payload in a JSON structure.
Nationwide card payments
paydirekt – enrollment during shopping
Developed a web application (BFE) for ad hoc participation in the paydirekt payment procedure. As part of a complex workflow between banks, Bank-Verlag and merchant systems, the app takes control of the required registration process in paydirekt in sections and returns control to the client app to keep the customer’s banking or shopping experience seamless. An initial REST call from BFE returns a deeplink URL invoking the apps in a preconfigured customer context. After validating various personal inputs and securing with two-factor authorization, BFE automatically returns control by HTTP redirect with status messages about registration outcome. BFE’s public UI is modern, visually high-quality and fully usable on different mobile device classes. Key development areas also included multi-tenant look & feel allowing reuse of core logic in different banks’ and merchants’ CI and customizing via compile-time feature flags. Setting up a browser-test grid for CI builds completed the tasks.
Wicket, Bootstrap, HTML5, CSS3, jQuery, RESTful HTTP, Spring Boot, Jersey, Hibernate, H2, DB2, Java 8, Maven, IntelliJ IDEA, Subversion, Selenium (Grid), Cucumber, Jenkins
Full-stack Developer, Technical Coordinator
Press Center
Content Information Service
Supplying network operators with metadata on linear and non-linear programs
Multiple apps in the media group manage metadata for all channels’ linear and non-linear content. With continuous expansion of the video-on-demand area, requirements have grown more complex for internal systems and external operators. The Content Information Service collects and consolidates metadata from various sources into a distributed, scalable greenfield system via a messaging interface, normalizes data using an entity-attribute-value pattern and exposes REST resources in various representations (Accept header). Domain-driven (DDD) decomposition into bounded contexts creates a highly scalable, fault-tolerant communication landscape of HATEOAS (REST) connected resources in a Docker stack.
Network operators, channel providers and other external platform partners
CBC and RTL Group employees
Software Developer, Domain Architect, DevOps Engineer
Agile process evangelist through active coaching and QA
Microservices, Domain-Driven Design (DDD), REST, HATEOAS, Spring Boot, Spring Data (JPA), Spring Security, Spring Test, Spring EL, Spring Cloud, Netflix OSS, Zuul, Eureka, Ribbon, Hystrix, Docker (Swarm Mode), Apache Kafka, RabbitMQ, Jenkins, Nexus, Microsoft SQL Server, Hibernate, MockMVC, Swing, JavaFX, JSON, JsonPath, XML, Jira, Confluence, Scrum, IntelliJ IDEA, “make .jar, not .war”
Supported a cross-functional team on a major logistics platform focusing on:
Automated deletion of personal data per GDPR
Analysis and decommissioning of outdated, error-prone services
Migrating needed functionalities from retired services to new Kotlin/Spring Boot backends
Supporting incident analysis and resolution
Enhanced backend services in the domains “alternative name spellings” and “digital copy,” including technical modernization with Java & Spring Boot
Developed a Vue.js-based frontend component
Full-stack Developer
Kotlin, Java, Groovy/Spock, Spring Boot, Maven, Vue.js, Gradle, Git (Bitbucket), TeamCity, RESTful HTTP, Oracle, IntelliJ IDEA, Scrum
New customer outreach via Infopost – address rental
Rebuilt a multi-layer Java EE application to provide address data for acquiring new customers. The system covers the end-to-end process from customer selection to lettershop delivery. To handle large order volumes economically, backoffice processing times must be reduced to a few minutes, requiring a high-performance, low-effort frontend with an interactive map for area and radial selection. In addition to HTML interaction, the system offers interfaces for document upload/download and automated sending of generated Word/PDF documents by email. The runtime scenario includes multiple Java processes (Tomcat, JBoss) persisting to an Oracle RAC via JDBC and communicating via REST/JSON with subsystems for map visuals, office documents, in-memory address counting engines, and auto-completion of area inputs.
Deutsche Post Direkt GmbH customers
Backoffice staff and mobile salesforce
DPAG partner lettershops
Software Developer, Domain Architect
VAADIN, Spring, REST (RESEasy, Jersey), JSON, XML, JEE, JBoss, JPA/Hibernate, Liquibase, Oracle & H2, Maven, Vagrant, Jenkins, IntelliJ IDEA, Subversion
Migrated a web-based call center app from Bootstrap 2 to 3 with about 90% markup impact
Advised business stakeholders on implementing functional enhancements, designing new interfaces and introducing ergonomics and technical standards such as in-place editing, function merge and progressive disclosure, then implemented them
Switched from page-flow to AJAX communication with REST-compliant resource mappings
Integrated AJAX calls with server-side JSR-303 Bean Validation
Improved performance and user experience using reactive programming approaches
Added new jQuery-based UI elements and built custom controls/widgets
Introduced frontend templating to reduce server-generated web content
Implemented collapsibles to minimize context switches vs. traditional page flows
Added chart components for data visualization
Supported service/integration layer implementation and optimized database queries
Advised on architecture topics like coupling search engines and databases, benefits of schema-less persistence in early phases and REST paradigms
Worked in a 20-member Scrum project organization, supporting the rollout phase
Call center
Full-stack Developer
Twitter Bootstrap, HTML5, CSS3, jQuery, AJAX, JSP/JSTL, Spring Core, Spring Web/MVC, JEE, Hibernate, JPA, JDBC, SQL, Oracle WebLogic/RMI, Servers (10.3, 11 & 12), IntelliJ IDEA, Subversion, Maven, HP Quality Center
ONEXSYS
NOX (Next ONEXSYS)
The next generation ONEXSYS. Alongside a fully modernized development and operations platform, NOX integrates many new business functions from the internal legacy system (ERS). All core processes and webservice functions are consolidated into a single, maintenance-friendly system. Modern, flexible technologies are key to efficient maintainability, evolution and user experience. New features can be added as service bundles at runtime and the new persistence layer with built-in search answers queries over tens of thousands of records in milliseconds on entry-level hardware.
The application design includes the strongly schematized business core in an H2 database and a separate content-oriented persistence model for handling growing traffic data, metadata and assets like web content, documents and media.
Internet architecture style (REST), the Open/Closed Principle deeply embedded in development and a consistent event bus form the basis of a modern, adaptable application platform for tomorrow’s requirements.
Enterprise process platform and content system for the website
Initiator, lead developer, technical consultant
ONEXSYS: Struts, Hibernate, JBoss AS, Tomcat, MySQL, Apache httpd, IntelliJ IDEA, Ant
NOX: Vaadin, jQuery, Spring, Hibernate, JPA, Lucene, AspectJ, MS SQL Server, JSR-303 (Bean Validation), POI, Google EventBus, Sling/Felix/Karaf (OSGi), MongoDB, Jackrabbit/JCR (NoSQL), H2, Tomcat, Jetty, Apache httpd, Enterprise Architect, IntelliJ IDEA, Maven
Business development and modernization of the leading hotel auction platform “eRFP.” Extended and made existing Vaadin-based frontends more dynamic, connected to new central service components, introduced an event bus to decouple the framework, integrated specialized JavaScript components and refactored code for better quality and maintainability.
Migrated the frontend platform from Vaadin 6 to 7.
Frontends for user groups “Hotel,” “Hotel Chain” and “HRS Sourcing Agents” (call center/back office)
Full-stack Developer
Vaadin 6 & 7, GWT, JSF, MBassador, Spring, JPA, Hibernate, MySQL, MariaDB, Flyway, Maven, IntelliJ IDEA, Subversion, Apache Tomcat 7, Scrum
Internal training project “pathfinder”
Teaching practical, market-relevant skills to new employees around object- and component-oriented Java Enterprise development. Under the motto “make .jar, not .war,” we built a self-contained Spring Boot data app with JPA persistence, REST interface and responsive frontend.
After a detailed functional analysis, we modeled the domain as JPA entities for persistence in the popular H2 developer database accessed via Spring Data repositories. We then designed and implemented the REST interface as Spring controllers, focusing on REST not only as cohesive endpoints mapping to entities but also including pseudo-resources to express high interface semantics. Proper use of HTTP status codes, parameterizing requests and responses, and the state paradigm HATEOAS, making REST partly a client concern, rounded out the service part.
Cutting-edge frontend technologies with Apache Wicket, Bootstrap and HTML5 gave the solid base app a polished presentation and responsive design to cover all major device classes from one codebase.
All project phases—from analysis and design discussions to issue tracking and code management—were documented in Bitbucket’s agile hosting platform.
In under 30 days we delivered a working application, an agile configuration management setup and a successful team!
Haeger Consulting staff
Software Development Coach
Wicket, Bootstrap, HTML5, CSS3, jQuery, RESTful HTTP, Spring Boot, Spring Data, JPA/Hibernate, H2, IntelliJ IDEA, Maven, Bitbucket (wiki, issue tracking, git)
Developed a prototype app for displaying vehicle inventories optimized for iPad. The app presents a list of vehicle elements that adapt via responsive design to display context. On mobile devices, the focus is on vehicle elements, while desktops show extra controls.
Page loading occurs in phases to avoid blocking and ensure smooth UX. Vehicle data is classified into layers and populated in the background via jQuery AJAX calls after initial rendering. Busy indicators show background activity.
The app demonstrates various Wicket features: as a rendering engine, resource manager, JS generator/executor and stateful/stateless JSON and markup response provider. The delivery scenario hosts the app centrally while fetching payload from local LAN RESTful services.
A solution for CORS issues was shown using preflight requests and necessary response headers.
As a style guide baseline, the prototype sports a modern look with Bootstrap components, chart controls, CSS transitions, infinite scrolling, slideshows, type-aheads, slide-in menus, hover effects and high usability.
The prototype influenced the decision to choose Wicket over a GWT-based alternative.
Java Web Development Mazda Europe
Full-stack Developer
Wicket, jQuery, Bootstrap, HTML5, CSS3, Spring Boot, RESTful HTTP, Maven 3, IntelliJ IDEA, Subversion
Single Source Publishing
Designed and implemented a content information system providing reusable, internationalized content elements for brochures, web and web specials. Followed corporate SOA/REST architecture. Developed online interfaces for integration into the corporate infrastructure. Designed a content repository managing elements per ISO 639 localization and mapped REST interfaces accordingly. Built a Web 2.0 admin frontend.
Intranet application with external service integration
Sling/Felix/Karaf (OSGi), Jackrabbit/JCR (NoSQL), Vaadin, jQuery, Google EventBus, Jetty, SOA, REST, Maven, Enterprise Architect, IntelliJ IDEA, CentOS
TCO Calculator
Re-engineered and extended an existing web app calculating cost of ownership for various construction vehicles vs. competitors. Switched text inputs to interactive sliders and implemented financial algorithms.
Internet application
Felix/Karaf (OSGi), Jetty, Vaadin, jQuery, Google EventBus, Maven, IntelliJ IDEA, Debian OS
Full-stack Developer, Technical Consultant, Concept Author
Software solution for efficient documentation of care and treatment services and digital medication management.
Improved the existing codebase for maintainability, test coverage and modularization
Set up a Docker stack to support local development against MS SQL Server, SAP MaxDB and MariaDB
Migrated the monolithic codebase from Java 8 to Java 17
Identified module boundaries around catalog import/export and built a Spring Boot prototype
Developed and test-documented the REST API for catalog import/export using Spring REST Docs
Deep-customized exporter serialization for JSON and XML
Provided HTTP usage samples via .http files and comprehensive Groovy scripts
Coached the development team on Spring, REST, Docker and test strategies
Ran tech talks on REST and the Spock BDD test/spec framework including an intro to Groovy
Guided Spock adoption, BDD approach and test practice improvements
Configured the Azure deployment pipeline
Implemented the Azure security concept (subscription key)
Served as the go-to for design and architecture questions
Built Docker stacks in the existing Linux environment
Analyzed and optimized native Linux scripts, moving them into Docker stacks for portability and CI integration (e.g. Docker-in-Docker remote containers)
Attended Scrum training
Software Developer, Coach
Java 17, Groovy, Spring 5, Spring Boot 3, REST, Spring WebFlux (client), Spring Data, Spock Framework (BDD), Hibernate 5, Liquibase, MS SQL, SAP MaxDB, MySQL, Lombok, Docker, Azure Cloud, git, IntelliJ IDEA, Maven, REST (Level 3), Scrum
Responsible for aligning, developing and deploying the Product Information Service (microservice).
Prototyped the internal deployment stack with Docker Swarm including an HTTPS reverse proxy (nginx), frontend (React) and Postgres database
Built an automated CI chain with Jenkins (declarative pipeline)
Evolved and migrated the stack toward Google Cloud Platform/GKE (Kubernetes)
Continuously tracked runtime behavior with Spring Boot Admin
Established domain-driven design and PACT testing
Coordinated with stakeholders from business units and adjacent developments
Promoted a feedback culture
Agile process following Scrum
End customers
Software Developer, Technical Coordinator
Spring Boot, RESTful HTTP, Docker, Jenkins, Git (Bitbucket), Gradle, Java, Groovy, Spock Framework, Let’s Encrypt, React
PIN/TAN Management
Migrated a complex Struts app to the Wicket web framework with temporary hybrid operation using zoning integration. Extended business functionality per design specs.
Backoffice, intranet
Core Developer
Struts, Wicket, Maven, Tomcat, Oracle WebLogic/RMI, Oracle RAC, SAP, IntelliJ IDEA, Solaris
Uniform Client Platform
Built and evolved a web framework and component library as a strategic platform for new web apps across the group. Classified and created generic, reusable components from UI controls to multi-step dialogs.
All web-based frontends (e.g. online banking, call center client, direct sales client)
Core Developer
Wicket, jQuery, Maven, Tomcat, IntelliJ IDEA, Solaris
3D Secure MTan
International security project with RSA to develop a webservice gateway for secure access to authentication and authorization services in Postbank’s multichannel architecture. For high-risk transactions in online payments, an additional MTan authorization with the host bank is required.
Online payment platforms (Amazon, eBay, etc.)
Core Developer, Concept Author
JAX-WS, SOAP/WSDL, Tomcat, Oracle WebLogic/RMI, SAP, IntelliJ IDEA, Solaris
Internet Client Back Office
Developed a web app for researching credit application denials and managing mobile numbers. Tight deadlines due to legal requirements and high look-and-feel convergence with the parallel SAP GUI.
Backoffice, intranet
Lead Developer
Wicket, Maven, Tomcat, Oracle WebLogic/RMI, SAP, IntelliJ IDEA, Solaris
Multichannel Sales Platform
Built enterprise apps and business components for the bank’s multichannel sales platform using product-line engineering. Components are developed and QA tested independently, then assembled declaratively into channel-specific apps with front-end adaptors.
Nationwide multichannel sales platform
Core Developer, Component Owner
Java EE, Maven, Oracle WebLogic/RMI, IntelliJ IDEA, Solaris
TMKP Platform Relaunch
Modernized and rebuilt the TMKP multichannel transaction platform across the stack. Refactored and rebuilt a 4000-class enterprise app and migrated to new JDK, app server and OS.
Nationwide: call centers, statement printing, brokerage, speech computers, Schufa client; local: compliance center, output management
Lead Developer, planned and ran regression and load tests
J2EE, Swing, Oracle WebLogic/RMI, Oracle RAC, Ant, JMeter, SAP, IntelliJ IDEA, Solaris
J2EE z/OS Integration
Java to CICS calls. Decoupled TMKP from a BS2000 host app and transparently connected to a z/OS backend via JCA. Ensured transaction control from UTM to CICS/CTG with no client changes.
Same environments as above
Lead Developer, planned and ran regression and load tests
J2EE, Oracle WebLogic/RMI, JCA, CICS, Ant, JMeter, SAP, IntelliJ IDEA, Solaris
Data Driven Testing
Built a web-based functional test app using data driven testing. Test data uploaded as Excel, analyzed in memory, executed on a remote J2EE platform and results written back to the file for download. Progress indicator provided user feedback.
Test operations
Lead Developer
J2EE, Struts, POI, DDT, Oracle WebLogic/RMI, Maven, IntelliJ IDEA, Solaris
IVTA
Developed a web app to support software acceptance processes before production launch. Captured clients, software components and deployment orders. Controlled workflow and generated test protocols as PDF/Word.
Test operations, Change Advisory Board
Lead Developer
J2EE, Struts, POI, iText, JBoss AS, IntelliJ IDEA, Solaris
TMKP (Technical Multichannel Platform)
Large IT project to build a central J2EE multichannel banking platform. Transparent migration of transactions from the legacy core KORDOBA to SAP. Aim to minimize client effort during phased SAP rollouts to eventual decommissioning of KORDOBA. Designed and built subsystems to adapt channel specifics, open APIs for new frontends, and integration components for SAP, BS2000/KORDOBA, UTM, LDAP and Oracle RAC. Front-end adapters via CORBA and HTTP. Protocol converters and gateways to host thin clients. Continuous adaptation in a dynamic environment via code generators and CI. Designed and implemented high-availability (SLA Gold).
Extensive cross-team coordination and competency management. QA and test automation with custom tools.
Long-term corporate development and follow-on projects for SAP expansion: Financial Services Business Partners, Account Management, Deposit Management, Customer Mortgage Loan, Transaction Banking.
On-the-spot development with top management attention.
Nationwide: ATMs, statements, online banking, online brokerage, direct portal, sales services, call center, speech computers, EPOS terminals, Schufa client, HBCI
Technical Lead J2EE, platform owner through target architecture "Banking Services 8.0" in 2012
J2EE, Oracle WebLogic/RMI, servers, Ant, CCM, Subversion, IntelliJ IDEA, UTM, LDAP, SAP, Oracle RAC, Solaris
TMKP ongoing
Continued service component development and expansion of TMKP’s business functionality. Quick adaptations for frequent SAP rollouts: customization, interface changes and full platform releases. Long-term support and major release planning.
Same environments as above
Lead developer of core banking services and components in areas such as: transaction inquiry/financial status, partner management, payment scheduling, garnishments/account locks, procedure inquiry, ANIS, account/deposit management, compliance, card blocks, fee refunds, tax exemptions, exposure limits, account holder changes, online statement printing, identity verification, multitenancy, KORDOBA to SAP synchronization, Telserve failover, 3rd level support and incident management. Taskforce and ITIL problem management. Primary contact in change management.
J2EE, Oracle WebLogic/RMI, Ant, CCM, Subversion SVN, IntelliJ IDEA, UTM, LDAP, SAP, Oracle RAC, Solaris
TXReloader
Developed and implemented a backup strategy to safeguard core transactions. Identified all record-changing transactions and built an interim store for recovery on Oracle RDBMS. Created a reload algorithm handling incoming transactions by type, execution and value date. Delivered a Java recovery tool with documentation and audit approval.
Same environments as above
Lead Developer, Concept Author
J2EE, Oracle WebLogic/RMI, Ant, CCM, Subversion SVN, IntelliJ IDEA, SAP, JCO, Oracle RAC, Solaris
PBInsight
Built a content system precursor to a corporate wiki for consolidating cross-departmental knowledge and collaboration. Full-text indexing of user inputs and attachments (HTML, Word, Excel, PDF). Tagging and organizing data into articles and hierarchical containers.
Central data center operations
Initiator, Lead Developer
J2EE, JBoss AS, Hibernate, Apache Lucene, IntelliJ IDEA, Linux
Location Management
Developed a location management system for building resources. Captured halls, building structures, detailed room info and attached plans auto-indexed in a full-text search engine. A query mechanism finds locations based on event parameters like capacity, seating, power supply, projector and manual tags.
Congress Center Düsseldorf marketing and events
Lead Developer
Apache Tomcat, Hibernate, Apache Lucene, JDOM, IntelliJ IDEA, Solaris
Talent & Digital Asset Management
Developed a content storage and organization system for modeling agencies. Managed talent attributes and associated assets (images, setcards, promotion media). Allowed grouping talent into castings by theme or client and sending as public homepage links.
Model marketing/booking agencies
Lead Developer, Technical Consultant
Apache Tomcat, Hibernate, Apache Lucene, JDOM, IntelliJ IDEA, Linux
Subsystem for synchronous substitute item determination
For picking online orders in a REWE market open to walk-in customers, we created a software platform guiding pickers through the store and helping them gather order items quickly. If items are unavailable during picking, substitute items must be provided. Requests go synchronously via HTTP to the Substitute service, which wraps, orchestrates and aggregates multiple requests into a usable result.
The core component for substitutes runs on a dedicated Elasticsearch cluster using HTTP More-Like-This searches for each item. Matching substitutes get availability data and scored sorting. The “Substitute service” bounded context maintains its own data store (Elasticsearch index) for substitutes and a relational JPA/Cloud SQL model for stock info. Local stores are fed from external Kafka messages: continuous updates and full reloads by resetting topic offsets. Reindexing and stock rebuild are Jenkins jobs.
Availability data accuracy is enhanced by synchronous REST calls that consider future availability and quantities already picked for other orders.
With synchronous end-to-end processing and a strict response time guarantee, availability and fault tolerance are primary quality goals. Achieved via Kubernetes and circuit-breaker patterns from the Resilience library Hystrix.
Use of meaningful HTTP status codes, hypermedia/self-describing resources (HATEOAS) and intuitive resource identifiers ensures full REST maturity (Level 3). Complete openAPI 3.0 documentation via Swagger meets high customer quality standards and architectural constraints.
Fulfilment center pickers
Software Developer, Architect
Microservices, Domain-Driven Design (DDD), RESTful HTTP, HATEOAS, Spring Boot, Spring Data (JPA), Spring JDBC, Hibernate, resilience, circuit-breaker, Hystrix, Apache Kafka, Jenkins, Spock Framework, MockMVC, Groovy, WireMock, Swagger, Jackson, Gradle, git, Docker, Kubernetes, Jira, Confluence, Bitbucket, Scrum, IntelliJ IDEA
KOS-Web
Developed a framework to support migrating and building microservices with Spring Boot. Encapsulated logging, end-to-end monitoring, resilience, security and testing as modular Spring Boot starters. Created a showcase app and test-driven REST API docs with Spring REST Docs. Managed versions and dependencies via Maven. Provided the showcase as a Docker Compose stack.
Lead Developer
Kartenwelt
Designed and built a digital voucher platform integrating providers epay and PAYBACK with three central Spring Boot microservices (Transactor, Purchaser, Exporter). Key feature: quick processing of incoming POS transactions. Transactor accepts and stores transactions in DB2, returns acknowledgment, then a Spring scheduler triggers Purchaser calls and the Exporter supplies downstream systems (data warehouse, SAP, metrics platform).
Architect, Lead Developer
Coupon-World
Developed a new platform for generative digital coupons using DDD. Contexts: Generation, Redemption, Validation and Support. Triggered by campaign data from an internal planning tool via REST. Following the reloader pattern, requests are stored as jobs and quick acknowledgment returned. Near-real-time in-memory code generation persists codes in DB2 with dynamic table allocation and returns CSV download links. Up to 10M coupons per campaign, with optional regeneration. Dedicated components handle validation and redemption, parallelizing service calls to meet POS performance. Support context provides detailed analytics to internal systems. REST API and architecture docs (DDD context map, domain story telling, call flows) complete the project.
Architect, Lead Developer
Relaunch KOS-Payback (Alpha Phase)
Restructuring the 10-year-old KOS-Payback platform. Analyzed and refactored all aspects per modern criteria for a slim, consolidated architecture on Kubernetes in Google Cloud. Decoupled REST services with event streaming via Kafka or Pub/Sub. Delivered detailed analysis and risk assessment, designed a tailored solution focusing on containerization, cloud ops, event-driven design, monorepos (GitLab), GitLab CI and DDD docs. Provided prototypical monorepo and GitLab CI implementations.
Introduced Kotlin, Groovy, Spock (BDD)
Brought in Docker/Docker Compose for local dev quality
Promoted domain-driven design and domain story telling
Weekly coaching meetings for developers (Kotlin, Spock, Groovy, Spring Boot, Docker, git, IntelliJ IDEA, RESTful HTTP, CI/CD, Kafka, NoSQL, etc.)
Advocated clean code principles: readability, cohesion, decoupling, single responsibility, test coverage
Architect, Lead Developer
Kotlin, Java, Groovy, Spring Boot, Spock Framework (BDD), Docker, Docker Compose, Apache Kafka, git, GitLab CI, Maven, Gradle, RESTful HTTP, HATEOAS, Testcontainers, Liquibase, DB2, event-driven architecture, domain-driven design, domain story telling, Scrum
Big Data Dashboard
Designed and implemented a web UI for visualizing stats from a big-data platform. The focus was an appealing, modern look with high usability using Bootstrap, chart components, jQuery plugins and modern UI patterns like progressive disclosure.
Users: REWE Group management
Marktdatenbank
Built a web info system for managing in-store placement elements. Included a JPA data layer, REST API for other systems, batch processing, an in-memory mock client lib and a web UI. Security requirements included SSL encryption and a role-based access concept. Features could be toggled per build. The app reused some existing DB2 tables and included SQL scripts to create and seed new ones.
Users: store managers
Full-stack Developer
Apache Wicket, Bootstrap, HTML5, CSS3, jQuery, AJAX, Spring, Hibernate, JPA, SQL, Apache Tomcat, JBoss CDI, DB2, IntelliJ IDEA, Eclipse, DBVisualizer, Subversion, Maven, Quickbuild (CI), Jira, Confluence
Business Portal KAM/GFL
Extended a web info system. Refactored the persistence layer using Hibernate/JPA, generated schema diffs via Hibernate Maven plugin, applied manual DB patches and SQL migration scripts, implemented business logic in Spring beans and adjusted the AJAX-driven Apache Wicket UI.
Users: category buyers, trade partners, accountants (approx. 100)
Web-Components Showcase / Prototype Application
Built a component library as a strategic platform for new web apps in the REWE Group. Components based on Wicket, jQuery UI and Bootstrap provide top UX, flexibility and reusability in different projects via a clear structure, common patterns and documented APIs. Modern web standards like responsive design allow building desktop, tablet and smartphone apps from one codebase. High-level components—Google Maps, geo-completion, tag clouds, Highcharts, collapsibles, tag fields, smart tables, content sliders, animated fullscreen backgrounds, type-aheads, masked input and more—became standard in REWE Group web development. Besides the technical showcase app, many components were applied in a business-oriented prototype (customer dashboard, online shopping, Payback data) and well received by business stakeholders.
REWE Informationssysteme GmbH app development
Full-stack Developer
Apache Wicket, Bootstrap, HTML5, CSS3, jQuery/UI, AJAX, Spring, Hibernate, JPA, SQL, Apache Tomcat, Jetty, Solr, IntelliJ IDEA, Eclipse, DBVisualizer, Subversion, Jira, Confluence
Supported continuous team workflow using Kanban focusing on:
Breaking up the REWE online shop monolith
Customer registration and login
Customer self-services (profile updates, token-protected password reset, email change)
Data synchronization (application layer)
Session management, authorization
GDPR compliance
Fraud protection, geo-blocking
Consent management
Technical migrations
Analyzed and refocused existing business structures, promoted domain formation per DDD
Migrated logic from a Tomcat shop monolith to Spring Boot/Kotlin microservices with Kafka
Reimplemented customer registration as a microservice (Kotlin/Spring Boot) and microfrontend (Next.js/React)
Implemented authorization service with Spring Security OAuth and central Redis
Designed a scalable data replication service for event-based customer data sync to REWE commerce, SAP, Salesforce and backoffice
Continuously improved monitoring/alerting with Kibana, Prometheus and Grafana
Established and documented clean REST APIs
Created a Kotlin DSL for fluent HTTP requests with RestTemplate
Introduced Kotlintest/MockK (now Kotest) as an alternative test stack to Spock/Groovy
Added aspect-oriented programming to separate cross-cutting concerns from business code
Developed data migration strategies for Postgres and Kafka topics
Built HTTP-based Kafka publishing stack for local dev
Developed BFFs and components with Node.js/Next.js and React
Adapted self-contained systems for integration into a dynamic UI composition framework
Enhanced CI chain from native to agent-based builds (Jenkins)
Added Google reCAPTCHA (Enterprise) for registration and login frontends
Integrated services into machine/user token workflow (OAuth2)
Stakeholder impact:
End customers of shop.rewe.de
B2B delivery service clients
About 170 internal e-commerce services including voice & mobile gateways, customer service & backoffice apps
Full-stack Developer, Domain Architect
Kotlin, Java, Groovy/Spock, Spring Boot, AspectJ, Kotlintest (now Kotest), PACT, Maven, Gradle, Git (Bitbucket), Jenkins, RESTful HTTP, Apache Kafka, OAuth2, PostgreSQL, Docker, Nomad, Consul, Kibana, Grafana, Prometheus, ChatOps, IntelliJ IDEA, Kanban
Worked on the large retail project “REWE Bonus” to replace Payback and design an in-house loyalty solution for REWE and Penny customers. Served as the go-to for application modernization around cloud-native, microservice and data mesh architectures and supported implementation.
Analyzed the historical data model and legacy backends in central promotion planning and discount management since 2003
Identified and removed non-core responsibilities (context cleanup)
Resolved misplacements and designed product-focused data structures
Analyzed a COBOL-driven record-type interface (SEDAS) and transformed it into a hierarchical domain model for expressiveness and performance
Designed, implemented and QA-tested the message model for promotional articles using Java and Spock
Defined business-driven domain events (vs. CRUD events)
Created an efficient Kafka topic design for the event architecture
Implemented Kafka producers/consumers using Kotlin, Quarkus and Spring Boot
Identified further optimization opportunities in domain modeling, decoupling and modularization
Advised communication partners on using the product-focused model
Guided partners on new data sources for deprecated structures
Regularly aligned with architecture leads and tech teams on goals, platform strategy, innovation and risk
Planned and agreed transitional solutions to meet strict deadlines
Documented architecture decisions per corporate guidelines
Promoted ubiquitous language in the promotions domain
Translated interface models into English
Solution Architect, Developer
Java, Kotlin, Spring Boot, Quarkus, Apache Kafka, Docker, REST, GitLab, Spock Framework (BDD), Groovy, IBM DB2 z/OS, IntelliJ IDEA, Maven, Jira, Confluence, Scrum, SEDAS, data mesh, domain-driven design, event-driven architecture
CMS-based eCommerce platform for ZEG brand shops and partner dealers
ZEG is a purchasing cooperative of 960 bike stores in Europe and develops exclusive models in collaboration with leading manufacturers for their online platform.
To expand payment providers, delivery/sorting options, improve availability detection, connect more dealers (from 5 to over 200), comply with new data protection laws and implement many detail improvements, the ZEG platform needs a large upgrade.
The platform is a monolith. Despite microservice trends, well-structured, maintainable monoliths are possible. However, the system grew pragmatically under low-agile processes and fell far short in stability, flexibility, performance and maintainability, making development slow and inefficient.
After proposing agile methods, better documentation and setting up QS and CI infrastructure, I was given the chance as co-lead to implement these improvements.
Positive impacts on quality and team feedback acceptance led to my appointment as technical lead. I then set the core goals:
Define clear business areas and key abstractions (domain entities)
Drive domain formation, design clean interfaces (RESTful HTTP)
Build independent microservices targeting modern orchestration runtimes
Shift to reactive programming and non-blocking communication
Externalize new cross-functional frontend on performant React
Increase resilience via external circuit-breakers (sidecar pattern) and failover strategies
Establish monitoring, alerting, metrics and self-healing
Remove redundant code and obsolete features
Raise automation, write Jenkins Job DSL scripts
Migrate from centralized Bamboo agents to Infrastructure as Code
Instill clean code, software quality and 12-factor compliance values in the team
Stakeholders: internet end users, online editors and partner dealers on the ZEG platform
Technical Lead, Software Developer, DevOps Engineer
Java 8/10, Magnolia CMS, JCR (Jackrabbit), microservices, domain-driven design, RESTful HTTP, HATEOAS, Spring Boot 2, Guice, Groovy, Spock Framework, Handlebars/Freemarker, Maven, Gradle, Git (Bitbucket), Docker Swarm, Docker Machine, Kubernetes, Google Cloud Platform, Bamboo, Jenkins, nginx, Let’s Encrypt (certbot), Stackdriver, Load Impact, Commercetools (SDK, IMPEx, GraphQL)
Oncology information system in a microservice landscape
Developed a medical information system in the highly regulated oncology domain in a Scrum setting. Each business module represents a bounded context (patients, accounts, analyses, cases, diagnoses, medical history, documents, lab, identity, discovery, gateway, user management) for a scalable microservice architecture. A dedicated identity module handles cross-service keys. Database-per-service with a filter resolution framework lets clients filter/sort by local and external data. Optimized read/write models with @JsonView reduce IO for operations like get/list/create/update. Services expose self-describing HATEOAS resources to guide UI flows. Complex sequence data from cyclical imports is presented in the UI with coloring and highlighting. Threshold/datatype rules are configurable via SpEL. Token-based SSO (with/without user context) is provided by Keycloak. A custom API gateway with Zuul offers dynamic routing and a single entry point. Work spanned the full stack: PL/pgSQL, JPA, scheduling, service and endpoint implementation, automated integration and UI tests. Modules are aggregated into a Docker runtime for local dev/test with iterative growth. High quality gates for code and test coverage—from unit to cross-module integration to UI tests—are validated in agile processes. Strict care for medical and system-critical data (disk encryption, secure channels) and regulatory compliance (GAMP, 21 CFR Part 11, CSV) completes the dev process.
New Oncology staff, partner labs, specialist doctors and clinics
Software Developer, Test Engineer
Microservices, Domain-Driven Design (DDD), REST, HATEOAS, JSON, Spring, Spring Boot, Spring Data (JPA), Spring Security, Spring Test, Spring EL, Spring Cloud, Netflix OSS, Zuul, Eureka, Ribbon, Hystrix, Gradle, git, Docker, Lombok, JsonPath, Jenkins, SonarQube, CodeBeamer, Postgres, PL/pgSQL, Hibernate, Keycloak, Cucumber, Selenium, Mockito, MockMVC, Confluence, IntelliJ IDEA, arc42
With more than 20 years of professional experience as a software developer and architect and after various renowned collaborations with agencies, corporations and external partners, Mr. Jarnot handles the diverse challenges between analysis, design and implementation of modern information systems. A holistic concept with a focus on the highest quality and reliability as well as optimization for the operational target platform is at the heart of his work.
Mr. Jarnot relies on the creative combination of established technologies such as Java, Kotlin, Spring Boot, Docker, Spock Framework (BDD), Apache Kafka with long-proven concepts and architectural styles such as REST/HATEOAS, Domain-Driven Design, event-driven architecture, CI/CD, 12-Factor apps, as well as the focus areas of security, monitoring and scalability.
As a senior full-stack developer and technical lead, he was able to apply this knowledge profitably for many years in interface design, legacy backend integration, design and implementation of high-availability systems, monolith refactoring and numerous rollout projects in a dynamic and heterogeneous application environment.
Many years of experience in agile software development using Scrum and Kanban for REWE Group, OBI digital, Postbank, HRS, DHL IT Services, Mercedes-Benz, RTL, Bank-Verlag, AXA Group and others, as an initiator of a congress and trade-show platform, as a coach for software development with Java, Kotlin and Spring Boot, and as a contact person for modern architecture and design topics round off his range of expertise.
Discover other experts with similar qualifications and experience
2025 © FRATCH.IO GmbH. All rights reserved.