Rainer Diekmann

Application System for Asset Managers

Hamburg, Germany

Experience

Nov 2024 - Jul 2024
-1 years -3 months
Hamburg, Germany

Application System for Asset Managers

Signal-Iduna Asset Management

The application consists of multiple microservices that gather data via API interfaces and present it through an Angular Material frontend. The backend uses Java with JEE/DropWizard/Spring Boot. Project team size: 20 people.

  • Created architecture
  • Backend development with Java/JEE
  • Frontend development with Angular Material
  • Automated tests with Sahi-Pro
  • Implemented with: Java 21, Gradle, Tomcat, Linux, JUnit, Mockito, REST, Kafka, JPA, Hibernate, JEE, Dropwizard, OpenShift, SQL Server, Flyway, Liquibase, Postgres, Spring Boot 3, JSON, JDBC, Jpa
Jun 2024 - Aug 2024
3 months

System Integrator / Integration Lead for SW / SW (Verification) Test Manager

Rheinmetall

The German armed forces are switching their radios in all vehicles from analog to digital technology. Project team size: 5 people.

  • Created system and subsystem concepts
  • Conducted requirements analysis and management
  • Supported negotiation of technical content with customers, partners and suppliers
  • Assisted in defining, planning and tracking work packages (actual vs. target)
  • Coordinated and created key system documents
  • Performed technical reviews and audits
  • Prepared technical decision proposals (including make or buy)
  • Created test concepts and documents
  • Monitored current technical trends
  • System modeling in SysML
  • Implemented with: SysML, Enterprise Architect, Rhapsody, DOORS, CI/CD
Mar 2024 - Apr 2024
2 months

Legacy Application Maintenance

Edeka

The application is outdated and will be replaced soon. Until then it must be kept running (bug fixes, CVEs, third-party library updates). Project team size: 1 person.

  • Bug fixing
  • Security updates (CVEs)
  • Open-source library updates
  • Implemented with: Java 11/17, Struts, Maven, Tomcat, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, SOAP, REST, JSON, JDBC
May 2023 - Dec 2023
8 months
Germany

KONSENS - LAVENDEL

RZF – Data Center of the Financial Administration

Private health insurers send their members’ contributions to the Federal Central Tax Office. Contributions are linked to employees via tax ID. Using the LAVENDEL (KONSENS) procedure, contributions are delivered to employers (previously on paper). Project team size: 30 people.

  • Created architecture concept
  • Advised on microservices migration compliant with TZAK-2025 using Spring Boot, JMS, Kafka and Kubernetes
  • Developed PoC for microservices migration (Konsens Appkit, Spring Boot)
  • Extended Lavendel-KDialog with KVPV attributes (Java SWT)
  • Performed quality analysis with SonarQube for Lavendel system
  • Implemented with: Java 17, JBoss 7.4, Spring Boot 3, Konsens Appkit, SWT, KDialog, Jira, Confluence, Docker, SOAP, REST, JMS, Kafka, Maven, Gradle, GitLab, OpenShift, MagicDraw, XMLSpy, XML, Oracle, JPA, Hibernate, ISO 27001, TZAK-2025, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, BPMN, Quarkus, Cloud Native, JSON, XSD, JDBC, Jpa
Feb 2023 - Mar 2023
2 months
Germany

Atruvia Hub

Atruvia

Atruvia is reworking its internal intranet portal with microservices technologies. Project team size: 10 people.

  • Advised on microservices architecture
  • Implemented Spring Boot backend (Spring Data JPA)
  • Developed Angular frontend
  • Implemented with: Java, Spring Boot 3, Jira, Confluence, Docker, REST, Gradle, Jenkins, Angular, OpenShift, Spring Data JPA, ELK Stack, Elasticsearch, MinIO, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, SOAP, BPMN, Flyway, JEE, JBoss, JSON, Jpa
Mar 2022 - Dec 2022
10 months
Germany

KVPV (ELStAM)

ITZBund

Private health insurers send contributions to the Federal Central Tax Office, linked by tax ID. Using ELStAM, contributions are delivered to employers (previously on paper). Project team size: 20 people.

  • Created architecture with arc42
  • Advised on microservices migration with Spring Boot, JMS/Kafka and Kubernetes
  • Developed PoC for ELStAM integration
  • Defined migration path for legacy monolith
  • Quality checks with SonarQube for ELStAM legacy system
  • Implemented with: Java, Spring Boot, Jira, Confluence, ARC42, Docker, REST, Maven, Jenkins, Federal Cloud, JEE 7/8, JBoss 7.4, RabbitMQ, OpenAPI, AsyncAPI, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, SOAP, Apache CXF, BPMN, XML, XSD, JDBC, Jpa
Jan 2021 - Feb 2022
2 months
Germany

OTS – Online Appointment Service

AOK Health Insurance

AOK customers can book branch appointments online. Project team size: 10 people.

  • Advised on microservices with Spring Boot, Angular and Kafka
  • Developed prototypes
  • Deployed via Helm charts on Kubernetes
  • Implemented with: Java, Spring Boot, Jira, Confluence, Docker, REST, Angular, Maven, OpenShift, Jenkins, Argo CD, Helm, Kubernetes, Elasticsearch, ELK Stack, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, BPMN, JDBC, Jpa
Apr 2021 - Dec 2021
9 months
Hamburg, Germany

Organ Donor Register

Bundesdruckerei

Built multiple microservices and portals for the OGR project. Project team size: 30 people.

  • Developed microservices with Spring Boot
  • Integrated Keycloak via Admin REST API
  • Built Angular frontend components
  • CI with GitLab
  • Deployed services with Docker on OpenShift
  • Advised on microservices architecture with Spring Boot
  • Implemented with: Java, Spring Boot, Jira, Confluence, Docker, REST, Angular, Maven, OpenShift, DDD, Hexagonal Architecture, Keycloak, JPQL, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, SOAP, BPMN, Apache Camel, JDBC, Jpa
Feb 2021 - Mar 2021
2 months
Hamburg, Germany

EnergieWächter II – Alarm Management for Municipal Energy Usage

EON Digital Port

Extension of EnergieWächter: added an AI component that detects anomalies in energy usage and generates alerts. Project team size: 3 people.

  • Extended existing Spring Boot service with REST interface for AI
  • Defined REST API with OpenAPI
  • Data analysis of usage data with Python and Pandas
  • CI with GitLab; deployed on Azure with Docker
  • Implemented with: Java, Spring Boot, Jira, Confluence, Docker, Azure, REST, Python, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, SOAP, Flyway, Jpa
Jan 2020 - Jan 2021
1 year 1 month
Hamburg, Germany

Robin – Bid Document Generation for Concession Procedures

EON Digital Port

Replacing a VBA solution for generating Word bid documents. Angular frontend uses a special editor for outlines and text blocks, sends XHTML via REST to backend. Doc4jX creates Word docs. Project team size: 10 people.

  • Defined microservices architecture
  • Designed REST API with Swagger
  • Implemented Java backend with Spring Boot
  • Developed Angular frontend
  • Documented architecture and API
  • Defined requirements with Product Owner
  • Security with OAuth2/JWT
  • Implemented with: Java, Spring Boot, Jira, Confluence, Docker, Azure, Postgres, REST, Angular, MyBatis, OAuth2, JWT, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, HTTP, TCP, Liquibase, Jpa
Nov 2019 - Dec 2020
2 months
Berlin, Germany

Billing Console – Invoice Data Export

Webtrekk

Exports billing data from the existing web app to NetSuite. Batch and manual exports. Angular 1 frontend adjustments. Project team size: 1 person.

  • Extended Java backend for CSV export
  • Updated Angular 1 frontend
  • Defined requirements with client
  • Implemented with: Java, Spring, Jira, Confluence, MySQL, REST, Angular, Linux, JUnit, Mockito, JMX, Eclipse, HTTP, TCP
May 2019 - Oct 2019
6 months
Hamburg, Germany

EnergieWächter – Alarm Management for Municipal Energy Usage

EON Digital Port

In the municipal energy portal, added EnergieWächter to analyze building energy data for anomalies (e.g. spikes, limit breaches). Generates alerts and notifies energy manager. Project team size: 5 people.

  • Defined and built Spring Boot batch service
  • Defined requirements with Product Owner
  • Tested application
  • CI with GitLab and Docker
  • Agile Scrum
  • Implemented with: Java, Spring Boot, Jira, Confluence, Docker, Azure, Postgres, REST, Python data analysis, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse
May 2018 - Apr 2019
1 year

Enerchain – Blockchain in Energy Trading

Ponton GmbH

Used blockchain (Tendermint in Go, Java API via jABCI) to record and distribute energy trade orders. Orders distributed via WebSockets to network partners. Frontends are fat clients and Angular prototypes. Project team size: 10 people.

  • Supported Java development
  • Defined distributed architecture with WebSockets
  • Implemented with: Blockchain, Tendermint, Java, WebSocket, Angular, Jira, Confluence, Vagrant, Docker, Elasticsearch, Kibana, Linux, JUnit, Mockito, DBUnit, JMX, Eclipse, REST
Apr 2018 - May 2018
2 months
Hamburg, Germany

New Shipment Visibility

Kühne & Nagel

Developed shipment tracking microservices with Spring Boot. Analyzed existing architecture and recommended improvements. Project team size: 15 people.

  • Performed software architecture review and improvement recommendations
  • Conducted code review
  • Implemented with: Spring Boot, Java, JPA, Oracle, Spring, REST, JMS, Git, Jira, Docker, OpenShift
Oct 2017 - Mar 2018
6 months
Quickborn, Germany

MiFID II

comdirect (Bank)

Under MiFID II, banks must display pre-order costs to customers online and in their postbox. Project team size: 20 people.

  • Development with in-house J2EE stack
  • Supported software testing
  • Led subproject for postbox integration
  • Implemented with: Java EE, JPA, Oracle, Spring, JSF, JMS, Git, Jira, Bitbucket, JBoss, Tomcat
Apr 2017 - Sep 2017
6 months
Hamburg, Germany

COIN

Eurogate (Logistics)

Web app to manage container movements. Processes EDI messages into Oracle. Terminal processes in PL/SQL and Java. Client uses Java Swing/SWT. Project team size: 2 people.

  • Developed with client’s Java framework
  • Coded PL/SQL procedures
  • Analysis and concept creation
  • Implemented with: Java, PL/SQL, JPA, Oracle, Spring, Swing, SWT, JBoss, Tomcat
Jul 2016 - Mar 2017
9 months

ZSK – Central Customer Service

Hermes (Logistics)

Built a central customer service microservice architecture with Spring Boot and ActiveMQ. Project team size: 4 people.

  • Defined microservices architecture with Spring Boot
  • Developed JMS messaging between microservices
  • Led ZSK subproject
  • Analysis and concept creation
  • Authentication with JWT
  • Agile Scrum
  • Implemented with: Java, Microservices, Spring Boot, JPA, JMS, ActiveMQ, Oracle, Docker, Git, Jira
Jun 2015 - Jun 2016
1 year 1 month
Hamburg, Germany

MABS – Broker Order Processing System

Signal-Iduna (Insurance)

Migrated broker order processing from MS Access to a web portal. AngularJS frontend; JEE backend with REST services. Project team size: 8 people.

  • Defined J2EE-based architecture
  • Defined REST API
  • Built AngularJS frontend
  • Subproject lead
  • Analysis and concept creation
  • Implemented with: Java, JEE 7, WebSphere, Jira, Confluence, MQSeries, AngularJS, JPA
Aug 2014 - Jun 2015
11 months
Quickborn, Germany

DC – COWIAS Integration

Comdirect (Bank)

Migrated securities orders from C on SNA to Java/JEE on MQSeries. Project team size: 15 people.

  • Software architecture
  • Development
  • Subproject lead
  • UML concept modeling
  • Implemented with: Java, JEE, JBoss, C, Enterprise Architect, Git, Jira, Stash, MQSeries, SNA
Feb 2013 - Aug 2014
1 year 7 months
Quickborn, Germany

TFE – Trading Frontend

Comdirect (Bank)

Built trading frontend for heavy traders, integrating an external vendor’s software with in-house order core. Supports exchange and OTC securities trading. Project team size: 20 people.

  • Test lead (team of 5)
  • Manual and automated testing
  • Developed automated test software
  • Implemented with: HP QC, QTP, Oracle, Java, Splunk
May 2012 - Dec 2013
8 months
Hamburg, Germany

ECDA – Enhanced Consumption Data Analysis

Airbus Spares

Forecasts aircraft maintenance part usage via statistics to optimize inventory. Project team size: 5 people.

  • Technical subproject lead
  • Defined architecture
  • Data warehouse design
  • Development
  • Implemented with: Qt, C++, Java, Postgres, SQL
Jan 2011 - Apr 2012
4 months
Neumünster, Germany

Car Radio Development for VW, Audi, Seat, Skoda

Panasonic

Developed modular infotainment kit (MIB) for VW car radios. Project team size: 400 people.

  • Release manager
  • Integration and release planning
  • Coordinated with build management
  • Led integration team (10 people)
  • Managed supplier deliveries
  • Implemented with: MS Project, Jira, Subversion
Oct 2008 - Dec 2011
3 years 3 months
Hamburg, Germany

@MOST – Systems Engineering

Airbus

Research project to build aviation fleet simulation using systems engineering and a software tool for part usage analysis. Project team size: 50 people.

  • Technical subproject lead
  • Defined architecture
  • Developed process models
  • Systems engineering (SysML, IDEF, MLDesigner)
  • Development
  • Implemented with: SysML (Rhapsody, MagicDraw), IDEF (Core), MLDesigner, MATLAB, Qt, C++, Booch
Oct 2007 - Oct 2008
1 year 1 month
Hamburg, Germany

Planet Inflight Application – Portal

Airbus

Developed AJAX-based cabin portal complementing IFE. Project team size: 20 people.

  • Technical subproject lead
  • Software architecture
  • Quality assurance
  • Module and performance testing with business users
  • Implemented with: MS Project, UML, AJAX, Postgres, JEE, Spring, JSF, Hibernate, Dojo, JSON, Android ADT, JMeter
May 2007 - Oct 2007
6 months
Hanover, Germany

Workflow Application

Construction BG

Created a suite of apps to support business processes on IBM Workflow Server. Swing clients communicate with JEE servers. Project team size: 200 people.

  • Technical subproject lead
  • Software architecture
  • Quality assurance
  • Implemented with: MS Project, Adonis, Innovator, IBM Workflow Server, DB2, J2EE, Hibernate
Jan 2007 - Mar 2007
3 months
Zürich, Switzerland

Basel II – Large Exposure Reporting

Credit Suisse

Credit Suisse must report large exposures under Basel II to regulators. Aggregates private banking credit risks and investment banking issuer risks at partner level. Internal and regulatory reports. Project team size: 10 people.

  • Technical design
  • Business analysis
  • Software architecture
  • Quality assurance
  • Validated reports with Basel II expertise
  • Implemented with: MS Project, Requisite Pro, Rational Rose, PowerDesigner, Oracle
Nov 2006 - Dec 2006
2 months
Hamburg, Germany

Migration from z/OS to Solaris

Hamburger Sparkasse

Migrated applications (SAMBA, WP, etc.) from mainframe to Solaris Unix. Project team size: 20 people.

  • Release management
  • Quality assurance
  • RBE
  • Software architecture
  • Project management
  • Implemented with: MS Project, DOORS
Apr 2006 - Oct 2006
7 months
Hamburg, Germany

NSS-CC Cabin Architecture

Airbus

Developing hardware and software for in-flight passenger internet access. Project team size: 30 people.

  • Requirements engineering
  • Project management
  • Quality management per Airbus standards (ABDxxx, DO178B)
  • Software architecture
  • Systems engineering
  • Implemented with: MS Project, DOORS, UML, SysML, Enterprise Architect
Feb 2005 - Mar 2006
1 year 2 months
Frankfurt, Germany

Basel II

Commerzbank

Developed a Basel II calculation core with SAS. Wrote specs. Created a Java reference implementation and ran QIS4 and QIS5 tests. Validated results in QIS sheets. Project team size: 20 people.

  • Business analysis
  • Software architecture
  • Testing
  • Validated and verified Basel II core results with custom reports and queries
  • Implemented with: SAS, Java, VBA, Oracle, DWH, PL/SQL, Crystal Reports
Jul 2002 - Nov 2004
2 years 5 months
Hamburg, Germany

Cabin Logbook as Web Application

Airbus

Records aircraft defects via web app, sends reports to ground via Axis web services. J2EE MVC with Struts, Tomcat, EJBs on JBoss/WebLogic or plain Tomcat, DB via JDBC DAOs, touch-screen optimized JSP views, PDF reports via XSLT. Clients on plane use Axis; ground clients in Java Swing and C# WinForms. Project team size: 3 people.

  • Analysis
  • Design
  • Software architecture
  • Development and testing
  • Implemented with: UML (RUP), Java, J2EE, Struts, Tomcat, XML, XSLT, .NET C#, Axis, HTML, JavaScript
May 2001 - May 2002
1 year 1 month
Hamburg, Germany

Internet Integration of a Portfolio Management System

UniCredit Bank (formerly HVB)

Connected new C++ PM server (MQSeries, Oracle) and VisualBasic browser client via an internal SOAP-based XML bus (Hiob). Created integration concept for web client on BEA WebLogic cluster. Evaluated XML tools, chose JAXB for JAXB classes from DTD. Developed EJBs on WebLogic and JSP frontend. Module and load testing with business users. Project team size: 2 people.

  • Analysis
  • Design
  • Software architecture
  • Development and testing
  • Implemented with: UML (Together/J), Java, J2EE, JSP, EJB, BEA WebLogic, AbaXX Engines, XML (SAX, DOM, JDOM, XSLT, JAXB), HTML, JavaScript
May 2000 - Apr 2001
1 year
Munich, Germany

Internet Relaunch – Banking/Trading

HypoVereinsbank

Relaunched the HypoVereinsbank private customer portal for online securities trading. Connected IMS host via IMS Connect for Java, middle tier on BEA WebLogic cluster with EJBs, JSP frontend with Struts and tag libs. Led the securities team (depot, order system, new issues). Module and load tests with business users. Project team ~50, securities team 6.

  • Analysis
  • Architecture
  • Development
  • Testing
  • Subproject lead for securities team
  • Implemented with: UML (Together/J), Java, J2EE, JSP, EJB, BEA WebLogic, Struts, HTML, JavaScript
Jan 1999 - Apr 2000
4 months
Frankfurt, Germany

Corporate Finance Portal

Dresdner Bank

Developed internet portal for corporate customers in teams. In securities team, defined object model and use cases, built server components with EJBs on WebLogic/WebSphere, JSP/Servlet frontend, backend via JDBC to DB2 and MQSeries, SWIFT MT502 messages. Project team ~100.

  • Analysis
  • Design
  • Development
  • Testing
  • Implemented with: J2SE, J2EE (JSP, Servlets, CORBA), JDBC, XML, UML, Oracle 8i, JBuilder, VisualAge, Together/J, BEA WebLogic, HTML, JavaScript on Solaris/Windows NT
Dec 1999 - Dec 1999
1 month

OOA/OOD and Java Training

SolveIT Internet Agency

Conducted one-week in-house training: two days OOA/OOD and three days Java. Project size: 8 trainees.

  • Delivered training
  • Implemented with: J2SE, Swing, JDBC, Oracle 8i, PowerPoint on Windows NT
Mar 1999 - Nov 1999
9 months

Support for Various Web Projects

IXL Internet Agency

Converted existing applet to servlet-based solution for a bank. Built websites with servlets and JHTML (JSP precursor). Team sizes up to 4.

  • Project management
  • Analysis
  • DB design
  • Development
  • Implemented in heterogeneous C/S environment
Feb 1999 - Feb 1999
1 month

OOA/OOD and Java Training

Bijou Brigitte Retail

Delivered two one-week in-house trainings twice: two days OOA/OOD and three days Java:

  • OOA/OOD: Use case modeling

  • OOA/OOD: Class diagrams, dynamics

  • Java: language features

  • Java: JDBC, Swing

  • Java: JavaBeans, threads Team size: 5 trainees each.

  • Delivered training

  • Implemented with: J2SE, Swing, JDBC, Oracle 8i, PowerPoint on Windows NT

Apr 1998 - Aug 1998
5 months
Oslo, Norway

OO4GL Client-Server Project

Norwegian Labor Office Oslo

Managed disabled unemployed registries in Norway with a fat-client Oracle-based app built in Visual Age. Project team size: 20 people.

  • Analysis
  • Design
  • Implementation
  • Implemented with: VisualAge Smalltalk, Rational Rose
Jan 1997 - Jan 1997
1 month
Kiel, Germany

OOA/OOD and Java Training

Finance Authority Kiel

One-week in-house training: two days OOA/OOD and three days Java. Team size: 3 trainees.

  • Delivered training
  • Implemented with: J2SE, Swing, JDBC, Oracle 8i, PowerPoint on Windows NT
Apr 1996 - Jan 1999
2 years 10 months
Hamburg, Germany

OO4GL Client-Server Project

Hamburg Police

Developed EPOS for events, persons, objects, items tracking. Defined 3-tier OO architecture and business objects with a 4GL tool (Dynasty). Project team size: 3 people.

  • Analysis
  • Architecture
  • Implementation
  • Project lead
  • Implemented with: Dynasty 4GL, ERWin, Rational Rose
Nov 1995 - Apr 1996
6 months

CORBA Client-Server Project

Shipbuilding CAD System

Designed CORBA implementation (Orbix) to wrap PL/1 code in C++ classes distributed via ORB for porting. Project team size: 3 people.

  • Project lead
  • Analysis
  • Design
  • Development
  • Implemented with: CORBA, PL/1, C++, Orbix on Solaris/HP-UX
Jan 1993 - Apr 1996
2 years 4 months

Software System for Reliability Calculation

Classification Society

Developed software combining finite element stress analysis and stochastic methods (Monte Carlo) to model uncertainties in ship structures. Project team size: 2 people.

  • Subproject lead
  • Development
  • Developed new numerical methods
  • Implemented with: Fortran and C++
Jan 1993 - Apr 1996
2 years 4 months

Multiple PPS and Manufacturing Automation Projects

Shipbuilding Clients

Custom enhancements for PPS and CAD interfaces. Project team size: 2 people.

  • Subproject lead
  • Development
  • Implemented with: PL/1 and C++
Jan 1993 - Nov 1995
1 year 11 months

OO Database Evaluation Project

Shipbuilding CAD System

Evaluated object databases versus relational. Planned migration strategy. Project team size: 2 people.

  • Project lead
  • Analysis
  • Design
  • Development
  • Implemented with: ODMG, C++, Orbix, Objectivity on Solaris/HP-UX

Summary

  • Work experience in IT since 1991.
  • 1991 – 1998 Employed at various software development firms and consulting companies.
  • Since 1999 self-employed as an IT consultant for different industries.
  • Working in software architecture, development and testing. Focus in software architecture on designing multi-tier and microservices architectures. In modeling/analysis/design using object-oriented methods with UML/SysML and simulation. In data modeling using the ER method. In object-oriented application development programming with Java and C++.

Languages

German
Native
English
Intermediate

Education

University of Hamburg

Degree in Applied Mathematics, Numerical Methods for Solving Partial Differential Equations for Shock Waves · Mathematics · Hamburg, Germany

Certifications & licenses

ISQI Software Architect Foundation Level

OMG UML Professional (Fundamental)