Erfahrener Full-Stack-Entwickler und Scrum Master im Java Umfeld
Aktualisiert am 13.06.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 13.06.2024
Verfügbar zu: 100%
davon vor Ort: 100%
Java
Scrum
Docker
Kubernetes
Java EE
Spring Boot
OpenApi
JUnit
Spock
SQL
Kafka
OpenShift
Git
JPA
Clean Code
Microservices
Domain Driven Design

Einsatzorte

Einsatzorte

Augsburg (+20km) München (+20km) Nürnberg (+20km)
Deutschland
möglich

Projekte

Projekte

6 Monate
2024-01 - heute

Start Up Support

Full-Stack Entwickler IntelliJ Maven Git ...
Full-Stack Entwickler

Webanwendung für KI gestützte Bildbearbeitung

  • Nach dem Aufbau eines Grundgerüsts für die Anwendung, die eine Spring Boot-Backend und ein Angular-Frontend umfasst, wurden Komponenten implementiert, die es ermöglichen, den Hintergrund von Bildern mittels KI zu entfernen und einen neuen Hintergrund zu generieren. Das Angular-Frontend bietet eine Oberfläche über die der User Bilder auswählen und Bildbearbeitungsfunktionen anwenden kann.
  • Um die Bildbearbeitungsfunktion zu unterstützen wurde das Spring Boot Backend so aufgebaut, dass es über eine REST-API mit dem Frontend kommuniziert.  Dafür wurde OpenApi eingesetzt um den Client Code generieren zu können.
  • Das Backend kommuniziert außerdem mit Stable Diffusion über dessen REST-Schnittstelle, um die KI-gestützte Hintergrundentfernung und die Generierung eines neuen Hintergrunds zu ermöglichen. Hierzu wurden HTTP-Anfragen eingerichtet und Funktionen implementiert, um die entsprechenden Anfragen an Stable Diffusion zu senden und die Ergebnisse zurückzugeben.

IntelliJ Maven Git Trello GitHub Angular Java 21 Spring Boot 3 Spock Docker Kanban
IM4GINE
11 Monate
2023-02 - 2023-12

Host-Ablösung Provisionsberechnung

Backend Entwickler IntelliJ Jenkins Postman ...
Backend Entwickler

  • Versicherungsvertreter erhalten von der Signal Iduna Gruppe eine Provision für die Vermittlung und Betreuung von Versicherungsverträgen. Die Ermittlung der Provisionsart und die Berechnung der Provisionshöhe erfolgte bisher komplett auf dem Mainframe. Ziel des Projekts war es die Provisionsanalyse im Bereich der Krankenversicherung komplett vom Host zu lösen und in eine dezentrale Java Anwendung zu überführen.
  • Die relevanten Vertragsdaten zur Provisionsberechnung wurden aus bestehenden Host Services übernommen und überall in der Dropwizard Anwendung verwendet. Damit die Umstellung auf eine neue Schnittstelle problemlos von Statten gehen konnte war meine erste Aufgabe ein Fachdatenmodell zu erstellen.
  • Hierfür habe ich den bestehenden Code Analysiert und Abhängigkeiten durch Refactorings aufgelöst. Ich habe meine Erkenntnisse regelmäßig mit dem Fachbereich verifiziert und bin proaktiv auf das Team, dass die neue Schnittstelle entwickeln sollte zugegangen. Hierbei sind auch noch einige fehlende Elemente aufgefallen, die daraufhin noch berücksichtigt werden konnten.
  • Ich habe die neue Schnittstelle angebunden indem ich die benötigten Klassen mit Gradle aus dem OpenApi Contract generiert hatte. Mithilfe von Mapstruct konnten die Informationen schnell und einfach in das Fachdatenmodell gemappt werden.
  • Um sicherzustellen, dass mit der Umstellung auf die neue Schnittstelle sich kein Fehler einschleichen kann, habe ich nach Absprache mit dem Team zum einen Spock als Unit-Test Framework eingeführt, zum anderen die Recording Funktion von Wiremock eingebaut.
  • Dadurch konnte die Anzahl an qualitativen Integrationstest massiv erhöht werden.
  • Ich habe gemeinsam mit dem Fachbereich fehlende Anforderungen identifiziert, Tickets erstellt und im Anschluss umgesetzt. Hierbei ging es hauptsächlich darum zu erkennen, um welche Art von Vertragsänderung es sich handelt, damit dann die entsprechende Verarbeitung erfolgen konnte.
  • Ein großer Punkt war noch auf die Zahlungseingänge zu reagieren. Hier sollte von eine Batch Verarbeitung die auf dem Host lief durch eine reaktive Verarbeitung mit Apache Kafka abgelöst werden.
  • Hierfür habe ich einen SpringBoot Microservice erstellt, der die Informationen reaktiv aus einem Kafka Topic liest, aggregiert und in eine Datenbank sowie ein weiteres Kafka Topic schreibt.
  • Hierbei mussten auch ein neues Bitbucket Projekt, eine neue Jenkins Pipeline, sowie die zugehörige Openshift Konfiguration vorgenommen werden.

IntelliJ Jenkins Postman Insomnia Gradle Git Java 17 Dropwizard Spring Boot Junit Spock Docker Openshift Apache Kafka Mapstruct SQL DB2 Z/OS Kanban
Signal Iduna
2 Jahre 11 Monate
2020-03 - 2023-01

Neuentwicklung einer Vertriebsplattform

Fullstack Entwickler Git Maven Jira ...
Fullstack Entwickler

Eine bestehende monolithische Vertriebssoftware für Bankprodukte wurde, in Kooperation mit mehreren internationalen Teams, neu implementiert. Besonderer Wert wurde hier daraufgelegt, die Software in fachliche unabhängige Module aufzuteilen.
  • Fullstack Entwickler für fachliche Themen z.B. Verwaltung von Kredit- und Debitkarten 
  • Verschiedene Steuerthemen wie z.B. Freistellungsaufträge
  • Überweisungen und Daueraufträge
  • Die fachlichen User Stories (z.B. ?Sperren einer Kreditkarte?) wurden gemeinsam mit dem PO in Jira und Confluence ausgearbeitet. Hierbei wurden auch gleich die Kriterien für einen Akzeptanztest und die voraussichtlich benötigten Host-Services hinterlegt.
  • Die konkrete Umsetzung meinerseits war hier typischerweise:
    • Analyse der zugehörigen Host-Services und der REST-Schnittstelle
    • Design der Schnittstelle zwischen Backend und Frontend mit OpenAPI nach dem Contract-First Ansatz
    • Planung und Implementierung des JEE Backends inklusiver der Unit Tests mit Spock, bei neuen Themen auch die Erstellung eines zugehörigen fachlichen Maven Moduls. MapStruct war hier ausgiebig für das Mapping der Backend-Klassen auf die Klassen der Host-REST-Services im Einsatz
    • Design und Implementierung des Frontends mit Angular und TypeScript und der zugehörigen Tests mit Jasmine 
    • Implementierung der Akzeptanztests mit Geb
    • Feedback auf die Implementierung durch andere Entwickler durch Code-Reviews mit Bitbucket
    • ?Gemeinsame ?Abnahme mit dem PO
  • Außerdem habe ich gemeinsam mit einem weiteren Entwickler die Akzeptanztest ausgebaut. Zum einen haben wir durch die Einführung von WireMock mit seiner Record und Playback funktion die Akteptanztests vom Host entkoppelt und dadurch Robuster gemacht. Des Weiteren haben wir Jenkins Pipeline gebaut die mit den Red Hat Build Tools bei jedem ?push? gegen Bitbucket die Akzeptanztests in Openshift ausgeführt hat.
  • Ich habe die Verantwortung dafür übernommen zwei internationale Mitarbeiter in das Projekt einzuarbeiten. Dies erfolgte durch die Vorstellung des Projekts, Einarbeitung in die relevanten Technologien (z.B. Spock) gemeinsames Pair Programming und die Zuweisung von stetig anspruchsvoller werdenden Tickets. Da die häufig benötigte legacy Dokumentation komplett auf Deutsch war, war es hier eine besondere Herausforderung Aufgaben zu finden, für die keine Deutschkentnisse benötigt wurden.

Git Maven Jira Bitbucket Jenkins Java JEE Angular JavaScript TypeScript Spock Groovy Openshift OpenAPI Docker Podman Buildah Scopeo Mapstruct Scrum
Sopra Financial Technology
10 Monate
2019-05 - 2020-02

GLOBO

Scrum Master Maven Jira Confluence ...
Scrum Master

Eine bestehende Baufinanzierungssoftware sollte mangels Supports durch eine Neuimplementierung abgelöst werden.

  • Meine enge Zusammenarbeit mit den anderen Entwicklern ermöglichte es mir, die agilen Prozesse im Team zu fördern und sicherzustellen, dass Scrum effektiv angewendet wurde. Eine entscheidende Maßnahme zur Bewältigung der wachsenden teamübergreifenden Komplexität bestand in der Einführung des Nexus Frameworks
  • Zusätzlich habe ich gemeinsam mit einem internen Kollegen die Auswahl neuer Entwickler unterstützt und anschließend zwei Entwicklungsteams betreut. Dabei lag mein Schwerpunkt besonders auf der Moderation der Scrum-Events. Durch kontinuierliche Verbesserungen der Scrum-Events, Einhaltung der Timebox, Klärung und Zielsetzung innerhalb der einzelnen Events sowie durch effektive Retrospektiven mit nachverfolgten Maßnahmen und der Beseitigung von Hindernissen konnte der Entwicklungsprozess schrittweise verbessert werden.
  • Im Verlauf des Projekts konnten wir die Kommunikation mit den Kunden über die Reviews verbessern, was zu einem effektiveren Feedbackprozess führte. Dadurch waren wir in der Lage, die Planung der nächsten Features besser zu priorisieren, indem wir die Anforderungen klarer definierten. Diese Verbesserungen trugen dazu bei, die Effizienz des gesamten Entwicklungsprozesses zu steigern.

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum Retrospektiven Reviews
Sopra Financial Technology
1 Jahr 2 Monate
2018-03 - 2019-04

GLOBO

Fullstack Entwickler und später Scrum Master Maven Jira Confluence ...
Fullstack Entwickler und später Scrum Master

Eine bestehende Baufinanzierungssoftware sollte mangels Supports durch eine Neuimplementierung abgelöst werden.

Meine Rolle hat sich im laufe des Projekts vom Entwickler zum Scrum Master geändert.

  • Angefangen habe ich als JEE Fullstack Entwickler.
  • Hierbei ging es zunächst darum in zwei Teams Anpassungen an bestehenden Funktionalitäten vorzunehmen, bzw. diese zu erweitern.
  • Hierbei wurden Anpassungen am Frontent mit JSF und Primefaces vorgenommen. Fehler im Backend behoben, bestehende JUnit Tests angepasst oder neu geschrieben. Gelegentlich mussten auch Änderungen an der Datenbank vorgenommen werden erst auf DB2 z/OS später an einer Oracle Datenbank.
  • Eine essentielle Funktion die noch gefehlt hat war die Erstellung der Verträge zur Baufinanzierung, deshalb wurde ein dediziertes schlagkräftiges Team erstellt um diese zur Verfügung zu stellen.
  • Nachdem ich gemeinsam mit dem PO einen Proof of Concept erstellt hatte ging es darum die für ein Dokument benötigten Informationen zu identifizieren und aus den richtigen Teilen der Anwendung zu lesen. Dies Erfolgte teils aus bestehenden Domänen Objekten und teilweise durch Aggregation verschiedener Daten aus der Datenbank.
  • Die Informationen wurden dann auf das für die Dokumentenvorlage benötigte Format gemappt und über eine SOAP Schnittstelle in das zugehörige System übergeben
  • Parallel dazu hat ein DevOps-Team die Anwendung Containerisiert und in ein Kubernetes Cluster deployt.
  • Dadurch hat sich für uns der Vorteil ergeben, dass wir die Anwendung in einem eigenen Bereich einfach hochfahren und für Tests verwenden konnten.
  • Teilweise habe ich den bestehenden Scrum Master unterstützt, z.B. durch die Vorbereitung und Durchführung von Retrospektiven.
  • Nachdem die Dokumente nahezu fertig waren und das Projekt von drei auf fünf Entwicklungsteams anwachsen sollte, habe ich die Rolle gewechselt und Vollzeit als Scrum Master unterstützt. 

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum
Sopra Financial Technology
6 Monate
2017-10 - 2018-03

KIWI - Ablösung kleiner Familienkassen (ÖD)

Backend Developer Java (JEE) und Scrum Master Maven Jira Confluence ...
Backend Developer Java (JEE) und Scrum Master

Zahlverfahren der Bundesagentur für Arbeit (34 Mrd. Euro/Jahr)

Agiles (Scrum) Wartungs- und Weiterentwicklungsprojekt
Jeder öffentliche Arbeitgeber fungierte als eigene Familienkasse für seine angestellten. Diese Aufgabe war besonders für kleinere Arbeitgeber kompliziert und zeitaufwändig.

Es sollte eine Schnittstelle bereitgestellt werden um bestehende Kindergeldfälle möglichst ohne manuelle Tätigkeiten zu übernehmen.

  • Falldaten können über ein Online-Portal oder über eine Massendatenschnitstelle im XML-Format von einer Abgebenden Institution an die Anwendung geliefert werden. Fälle, die schon bekannt sind, sollten automatisch zusammengeführt werden können. Dabei war besonders darauf zu achten, dass der Fall immer in einem gültigen Zustand ist.
  • Analyse, Design, Implementierung und Test
  • Moderation der Scrum Events
  • Durchführung von Retrospektiven

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum
IT-Systemhaus der Bundesagentur für Arbeit
2 Monate
2017-08 - 2017-09

KIWI - Spike DDD für Kindergeld

Backend Developer Java (JEE) und Scrum Master User Story Mapping Event Storming Java ...
Backend Developer Java (JEE) und Scrum Master

Die bisherige Anwendung zur Bearbeitung und Auszahlung von Kindergeldfällen soll nach längerem Bestehen zukunftssicher um- bzw. neugebaut werden. Im Rahmen erster Analyse der Möglichkeiten habe ich mit einem Team einen Proof of Concept für DDD mit Rest für die Fachliche Domäne ?Sachbearbeitung in der Familienkasse? erstellt.

  • Erstellung eines Prototyps bei den einzelnen Domänen in Aggregates (bestehend aus Entitys und Value Objects) implementiert werden und über REST-Schnittstellen kommunizieren.

User Story Mapping Event Storming Java JPA JAX-RS (Jersey) Ant Junit Grizzly DDD JSON Scrum
IT-Systemhaus der Bundesagentur für Arbeit
8 Monate
2017-01 - 2017-08

KIWI ? Security Improvements

Backend Developer Java (JEE) und Scrum Master Ant Jira Confluence ...
Backend Developer Java (JEE) und Scrum Master

Zahlverfahren der Bundesagentur für Arbeit (34 Mrd. Euro/Jahr)

Agiles (Scrum) Wartungs- und Weiterentwicklungsprojekt
In einem Penetrationtest wurden Sicherheitslücken entdeckt. Über einen manipulierten Client konnten ungeprüft Daten ans Backend übergeben werden.

Die bestehende Anbindung vom Client an das Backend wurde um ein erweitertes Loggingverfahren und erweiterte Prüfungen ergänzt. 

  • Analyse, Design, Implementierung und Test
  • Moderation der Scrum Events
  • Durchführung von Retrospektiven

Ant Jira Confluence Subversion Jenkins SQL Developer JEE JPA Junit Fit Eclipse Innovator SCTM SonarQube Oracle Weblogic Scrum
IT-Systemhaus der Bundesagentur für Arbeit
11 Monate
2016-02 - 2016-12

KIWI - Automatisierter Datenabgleich BZfSt

Backend Developer Java (JEE) und Scrum Master Maven Jira Confluence ...
Backend Developer Java (JEE) und Scrum Master

Zahlverfahren der Bundesagentur für Arbeit (34 Mrd. Euro/Jahr)

Agiles (Scrum) Wartungs- und Weiterentwicklungsprojekt

  • Dies war mein erstes Projekt nach der Ausbildung. Anfang des Jahres erfolgte die Umstellung von einem Wasserfall basiertem vorgehen auf Scrum.
  • Da in der Abteilung keine Scrum Erfahrung bestand konnte ich durch mein Interesse an agiler Softwareentwicklung direkt in die Rolle des Scrum Masters schlüpfen.
    • Vermitteln der agilen Werte
    • Coaching zu agiler Softwareentwicklung
    • Moderation der Scrum Events
    • ?Durchführung ?von Retrospektiven

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum
IT-Systemhaus der Bundesagentur für Arbeit

Aus- und Weiterbildung

Aus- und Weiterbildung

Studium/Abschluss Fachinformatiker für Anwendungsentwickung


Zertifizierungen

ISTQB:

  • Certified Tester Foundation Level
  • Extension ? Agile Tester
  • Scrum.org:
  • Professional Scrum Master I
  • Professional Scrum Master II


IREB:

  • Certified Professional for Requirements Engineering
  • CPRE Foundation Level
  • iSAQB:
  • Certified Professional for Software Architecture

Kompetenzen

Kompetenzen

Top-Skills

Java Scrum Docker Kubernetes Java EE Spring Boot OpenApi JUnit Spock SQL Kafka OpenShift Git JPA Clean Code Microservices Domain Driven Design

Produkte / Standards / Erfahrungen / Methoden

Profil:

  • IT Consultant für Java Enterprise Systeme mit mehrjähriger Erfahrung als Full-Stack-Entwickler und Scrum Master.
  • Es ist mir wichtig gemeinsam mit dem Kunden qualitativ hochwertige Software zu entwickeln die wartbar und erweiterbar ist. Ich interessiere mich für Agilität, Domain Driven Design und Test Driven Development.


Werkzeuge

  • IntelliJ
  • Eclipse
  • SQL-Developer
  • Git
  • Subversion
  • Postman
  • Jenkins
  • Confluence
  • Jira
  • Bitbucket


Technologien

  • Java, Groovy, TypeScript, JavaScript 
  • JEE, Dropwizard, Quarkus, Spring, Spring Boot 
  • Junit, Spock, FIT, Geb, Selenium, Angular, JSF mit Primefaces 
  • Docker, Kubernetes, Openshift 
  • OpenApi Mapstruct
  • Microservices, DDD
  • Oracle DB, DB2/zOS, DB2 LUW
  • JPA, Hibernate


Methodik/Vorgehen

  • Scrum
  • Kanban
  • Wasserfall


Projekthistorie Kompakt

01/2024 - heute:

Rolle: Full-Stack-Developer 

Kunde: IM4GINE 


Aufgaben:

  • Startup Support
  • Java, Angular, Spring Boot 3, Docker, OpenApi, Stable Diffusion


02/2024 ? 12/2023:

Rolle: Backend Developer

Kunde: Signal Iduna 


Aufgaben:

  • Host-Ablösung Provisionsberechnung
  • Java, Spring Boot, Dropwizard, Kafka, Docker, Openshift


03/2020 ? 01/2023:

Rolle: Full-Stack-Developer 

Kunde: Sopra Financial Technology 


Aufgaben:

  • VUN
  • Java, Angular, JEE, OpenApi, Openshift


05/2019? 02/2020:

Rolle: Scrum Master für zwei Entwicklungsteams

Kunde: Sopra Financial Technology 


Aufgaben:

  • GLOBO


03/2018 ? 04/2019:

Rolle: Full-Stack-Developer 

Kunde: Sopra Financial Technology 


Aufgaben:

  • GLOBO
  • Java, JSF, JEE, Kubernetes, Liquibase


10/2017 ? 03/2018:

Rolle: Backend Developer Java (JEE) und Scrum Master

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Ablösung kleiner Familienkassen (ÖD)


08/2017 ? 09/2018:

Rolle: Backend Developer

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Spike DDD für Kindergeld


01/2017 ? 08/2017:

Rolle: Backend Developer und Scrum Master

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Security Improvements


02/2016 ? 12/2016:

Rolle: Fullstack Developer und Scrum Master

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Automatisierter Datenabgleich BZfSt

Branchen

Branchen

  • Banken
  • Versicherungen
  • Öffentlicher Sektor

Einsatzorte

Einsatzorte

Augsburg (+20km) München (+20km) Nürnberg (+20km)
Deutschland
möglich

Projekte

Projekte

6 Monate
2024-01 - heute

Start Up Support

Full-Stack Entwickler IntelliJ Maven Git ...
Full-Stack Entwickler

Webanwendung für KI gestützte Bildbearbeitung

  • Nach dem Aufbau eines Grundgerüsts für die Anwendung, die eine Spring Boot-Backend und ein Angular-Frontend umfasst, wurden Komponenten implementiert, die es ermöglichen, den Hintergrund von Bildern mittels KI zu entfernen und einen neuen Hintergrund zu generieren. Das Angular-Frontend bietet eine Oberfläche über die der User Bilder auswählen und Bildbearbeitungsfunktionen anwenden kann.
  • Um die Bildbearbeitungsfunktion zu unterstützen wurde das Spring Boot Backend so aufgebaut, dass es über eine REST-API mit dem Frontend kommuniziert.  Dafür wurde OpenApi eingesetzt um den Client Code generieren zu können.
  • Das Backend kommuniziert außerdem mit Stable Diffusion über dessen REST-Schnittstelle, um die KI-gestützte Hintergrundentfernung und die Generierung eines neuen Hintergrunds zu ermöglichen. Hierzu wurden HTTP-Anfragen eingerichtet und Funktionen implementiert, um die entsprechenden Anfragen an Stable Diffusion zu senden und die Ergebnisse zurückzugeben.

IntelliJ Maven Git Trello GitHub Angular Java 21 Spring Boot 3 Spock Docker Kanban
IM4GINE
11 Monate
2023-02 - 2023-12

Host-Ablösung Provisionsberechnung

Backend Entwickler IntelliJ Jenkins Postman ...
Backend Entwickler

  • Versicherungsvertreter erhalten von der Signal Iduna Gruppe eine Provision für die Vermittlung und Betreuung von Versicherungsverträgen. Die Ermittlung der Provisionsart und die Berechnung der Provisionshöhe erfolgte bisher komplett auf dem Mainframe. Ziel des Projekts war es die Provisionsanalyse im Bereich der Krankenversicherung komplett vom Host zu lösen und in eine dezentrale Java Anwendung zu überführen.
  • Die relevanten Vertragsdaten zur Provisionsberechnung wurden aus bestehenden Host Services übernommen und überall in der Dropwizard Anwendung verwendet. Damit die Umstellung auf eine neue Schnittstelle problemlos von Statten gehen konnte war meine erste Aufgabe ein Fachdatenmodell zu erstellen.
  • Hierfür habe ich den bestehenden Code Analysiert und Abhängigkeiten durch Refactorings aufgelöst. Ich habe meine Erkenntnisse regelmäßig mit dem Fachbereich verifiziert und bin proaktiv auf das Team, dass die neue Schnittstelle entwickeln sollte zugegangen. Hierbei sind auch noch einige fehlende Elemente aufgefallen, die daraufhin noch berücksichtigt werden konnten.
  • Ich habe die neue Schnittstelle angebunden indem ich die benötigten Klassen mit Gradle aus dem OpenApi Contract generiert hatte. Mithilfe von Mapstruct konnten die Informationen schnell und einfach in das Fachdatenmodell gemappt werden.
  • Um sicherzustellen, dass mit der Umstellung auf die neue Schnittstelle sich kein Fehler einschleichen kann, habe ich nach Absprache mit dem Team zum einen Spock als Unit-Test Framework eingeführt, zum anderen die Recording Funktion von Wiremock eingebaut.
  • Dadurch konnte die Anzahl an qualitativen Integrationstest massiv erhöht werden.
  • Ich habe gemeinsam mit dem Fachbereich fehlende Anforderungen identifiziert, Tickets erstellt und im Anschluss umgesetzt. Hierbei ging es hauptsächlich darum zu erkennen, um welche Art von Vertragsänderung es sich handelt, damit dann die entsprechende Verarbeitung erfolgen konnte.
  • Ein großer Punkt war noch auf die Zahlungseingänge zu reagieren. Hier sollte von eine Batch Verarbeitung die auf dem Host lief durch eine reaktive Verarbeitung mit Apache Kafka abgelöst werden.
  • Hierfür habe ich einen SpringBoot Microservice erstellt, der die Informationen reaktiv aus einem Kafka Topic liest, aggregiert und in eine Datenbank sowie ein weiteres Kafka Topic schreibt.
  • Hierbei mussten auch ein neues Bitbucket Projekt, eine neue Jenkins Pipeline, sowie die zugehörige Openshift Konfiguration vorgenommen werden.

IntelliJ Jenkins Postman Insomnia Gradle Git Java 17 Dropwizard Spring Boot Junit Spock Docker Openshift Apache Kafka Mapstruct SQL DB2 Z/OS Kanban
Signal Iduna
2 Jahre 11 Monate
2020-03 - 2023-01

Neuentwicklung einer Vertriebsplattform

Fullstack Entwickler Git Maven Jira ...
Fullstack Entwickler

Eine bestehende monolithische Vertriebssoftware für Bankprodukte wurde, in Kooperation mit mehreren internationalen Teams, neu implementiert. Besonderer Wert wurde hier daraufgelegt, die Software in fachliche unabhängige Module aufzuteilen.
  • Fullstack Entwickler für fachliche Themen z.B. Verwaltung von Kredit- und Debitkarten 
  • Verschiedene Steuerthemen wie z.B. Freistellungsaufträge
  • Überweisungen und Daueraufträge
  • Die fachlichen User Stories (z.B. ?Sperren einer Kreditkarte?) wurden gemeinsam mit dem PO in Jira und Confluence ausgearbeitet. Hierbei wurden auch gleich die Kriterien für einen Akzeptanztest und die voraussichtlich benötigten Host-Services hinterlegt.
  • Die konkrete Umsetzung meinerseits war hier typischerweise:
    • Analyse der zugehörigen Host-Services und der REST-Schnittstelle
    • Design der Schnittstelle zwischen Backend und Frontend mit OpenAPI nach dem Contract-First Ansatz
    • Planung und Implementierung des JEE Backends inklusiver der Unit Tests mit Spock, bei neuen Themen auch die Erstellung eines zugehörigen fachlichen Maven Moduls. MapStruct war hier ausgiebig für das Mapping der Backend-Klassen auf die Klassen der Host-REST-Services im Einsatz
    • Design und Implementierung des Frontends mit Angular und TypeScript und der zugehörigen Tests mit Jasmine 
    • Implementierung der Akzeptanztests mit Geb
    • Feedback auf die Implementierung durch andere Entwickler durch Code-Reviews mit Bitbucket
    • ?Gemeinsame ?Abnahme mit dem PO
  • Außerdem habe ich gemeinsam mit einem weiteren Entwickler die Akzeptanztest ausgebaut. Zum einen haben wir durch die Einführung von WireMock mit seiner Record und Playback funktion die Akteptanztests vom Host entkoppelt und dadurch Robuster gemacht. Des Weiteren haben wir Jenkins Pipeline gebaut die mit den Red Hat Build Tools bei jedem ?push? gegen Bitbucket die Akzeptanztests in Openshift ausgeführt hat.
  • Ich habe die Verantwortung dafür übernommen zwei internationale Mitarbeiter in das Projekt einzuarbeiten. Dies erfolgte durch die Vorstellung des Projekts, Einarbeitung in die relevanten Technologien (z.B. Spock) gemeinsames Pair Programming und die Zuweisung von stetig anspruchsvoller werdenden Tickets. Da die häufig benötigte legacy Dokumentation komplett auf Deutsch war, war es hier eine besondere Herausforderung Aufgaben zu finden, für die keine Deutschkentnisse benötigt wurden.

Git Maven Jira Bitbucket Jenkins Java JEE Angular JavaScript TypeScript Spock Groovy Openshift OpenAPI Docker Podman Buildah Scopeo Mapstruct Scrum
Sopra Financial Technology
10 Monate
2019-05 - 2020-02

GLOBO

Scrum Master Maven Jira Confluence ...
Scrum Master

Eine bestehende Baufinanzierungssoftware sollte mangels Supports durch eine Neuimplementierung abgelöst werden.

  • Meine enge Zusammenarbeit mit den anderen Entwicklern ermöglichte es mir, die agilen Prozesse im Team zu fördern und sicherzustellen, dass Scrum effektiv angewendet wurde. Eine entscheidende Maßnahme zur Bewältigung der wachsenden teamübergreifenden Komplexität bestand in der Einführung des Nexus Frameworks
  • Zusätzlich habe ich gemeinsam mit einem internen Kollegen die Auswahl neuer Entwickler unterstützt und anschließend zwei Entwicklungsteams betreut. Dabei lag mein Schwerpunkt besonders auf der Moderation der Scrum-Events. Durch kontinuierliche Verbesserungen der Scrum-Events, Einhaltung der Timebox, Klärung und Zielsetzung innerhalb der einzelnen Events sowie durch effektive Retrospektiven mit nachverfolgten Maßnahmen und der Beseitigung von Hindernissen konnte der Entwicklungsprozess schrittweise verbessert werden.
  • Im Verlauf des Projekts konnten wir die Kommunikation mit den Kunden über die Reviews verbessern, was zu einem effektiveren Feedbackprozess führte. Dadurch waren wir in der Lage, die Planung der nächsten Features besser zu priorisieren, indem wir die Anforderungen klarer definierten. Diese Verbesserungen trugen dazu bei, die Effizienz des gesamten Entwicklungsprozesses zu steigern.

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum Retrospektiven Reviews
Sopra Financial Technology
1 Jahr 2 Monate
2018-03 - 2019-04

GLOBO

Fullstack Entwickler und später Scrum Master Maven Jira Confluence ...
Fullstack Entwickler und später Scrum Master

Eine bestehende Baufinanzierungssoftware sollte mangels Supports durch eine Neuimplementierung abgelöst werden.

Meine Rolle hat sich im laufe des Projekts vom Entwickler zum Scrum Master geändert.

  • Angefangen habe ich als JEE Fullstack Entwickler.
  • Hierbei ging es zunächst darum in zwei Teams Anpassungen an bestehenden Funktionalitäten vorzunehmen, bzw. diese zu erweitern.
  • Hierbei wurden Anpassungen am Frontent mit JSF und Primefaces vorgenommen. Fehler im Backend behoben, bestehende JUnit Tests angepasst oder neu geschrieben. Gelegentlich mussten auch Änderungen an der Datenbank vorgenommen werden erst auf DB2 z/OS später an einer Oracle Datenbank.
  • Eine essentielle Funktion die noch gefehlt hat war die Erstellung der Verträge zur Baufinanzierung, deshalb wurde ein dediziertes schlagkräftiges Team erstellt um diese zur Verfügung zu stellen.
  • Nachdem ich gemeinsam mit dem PO einen Proof of Concept erstellt hatte ging es darum die für ein Dokument benötigten Informationen zu identifizieren und aus den richtigen Teilen der Anwendung zu lesen. Dies Erfolgte teils aus bestehenden Domänen Objekten und teilweise durch Aggregation verschiedener Daten aus der Datenbank.
  • Die Informationen wurden dann auf das für die Dokumentenvorlage benötigte Format gemappt und über eine SOAP Schnittstelle in das zugehörige System übergeben
  • Parallel dazu hat ein DevOps-Team die Anwendung Containerisiert und in ein Kubernetes Cluster deployt.
  • Dadurch hat sich für uns der Vorteil ergeben, dass wir die Anwendung in einem eigenen Bereich einfach hochfahren und für Tests verwenden konnten.
  • Teilweise habe ich den bestehenden Scrum Master unterstützt, z.B. durch die Vorbereitung und Durchführung von Retrospektiven.
  • Nachdem die Dokumente nahezu fertig waren und das Projekt von drei auf fünf Entwicklungsteams anwachsen sollte, habe ich die Rolle gewechselt und Vollzeit als Scrum Master unterstützt. 

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum
Sopra Financial Technology
6 Monate
2017-10 - 2018-03

KIWI - Ablösung kleiner Familienkassen (ÖD)

Backend Developer Java (JEE) und Scrum Master Maven Jira Confluence ...
Backend Developer Java (JEE) und Scrum Master

Zahlverfahren der Bundesagentur für Arbeit (34 Mrd. Euro/Jahr)

Agiles (Scrum) Wartungs- und Weiterentwicklungsprojekt
Jeder öffentliche Arbeitgeber fungierte als eigene Familienkasse für seine angestellten. Diese Aufgabe war besonders für kleinere Arbeitgeber kompliziert und zeitaufwändig.

Es sollte eine Schnittstelle bereitgestellt werden um bestehende Kindergeldfälle möglichst ohne manuelle Tätigkeiten zu übernehmen.

  • Falldaten können über ein Online-Portal oder über eine Massendatenschnitstelle im XML-Format von einer Abgebenden Institution an die Anwendung geliefert werden. Fälle, die schon bekannt sind, sollten automatisch zusammengeführt werden können. Dabei war besonders darauf zu achten, dass der Fall immer in einem gültigen Zustand ist.
  • Analyse, Design, Implementierung und Test
  • Moderation der Scrum Events
  • Durchführung von Retrospektiven

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum
IT-Systemhaus der Bundesagentur für Arbeit
2 Monate
2017-08 - 2017-09

KIWI - Spike DDD für Kindergeld

Backend Developer Java (JEE) und Scrum Master User Story Mapping Event Storming Java ...
Backend Developer Java (JEE) und Scrum Master

Die bisherige Anwendung zur Bearbeitung und Auszahlung von Kindergeldfällen soll nach längerem Bestehen zukunftssicher um- bzw. neugebaut werden. Im Rahmen erster Analyse der Möglichkeiten habe ich mit einem Team einen Proof of Concept für DDD mit Rest für die Fachliche Domäne ?Sachbearbeitung in der Familienkasse? erstellt.

  • Erstellung eines Prototyps bei den einzelnen Domänen in Aggregates (bestehend aus Entitys und Value Objects) implementiert werden und über REST-Schnittstellen kommunizieren.

User Story Mapping Event Storming Java JPA JAX-RS (Jersey) Ant Junit Grizzly DDD JSON Scrum
IT-Systemhaus der Bundesagentur für Arbeit
8 Monate
2017-01 - 2017-08

KIWI ? Security Improvements

Backend Developer Java (JEE) und Scrum Master Ant Jira Confluence ...
Backend Developer Java (JEE) und Scrum Master

Zahlverfahren der Bundesagentur für Arbeit (34 Mrd. Euro/Jahr)

Agiles (Scrum) Wartungs- und Weiterentwicklungsprojekt
In einem Penetrationtest wurden Sicherheitslücken entdeckt. Über einen manipulierten Client konnten ungeprüft Daten ans Backend übergeben werden.

Die bestehende Anbindung vom Client an das Backend wurde um ein erweitertes Loggingverfahren und erweiterte Prüfungen ergänzt. 

  • Analyse, Design, Implementierung und Test
  • Moderation der Scrum Events
  • Durchführung von Retrospektiven

Ant Jira Confluence Subversion Jenkins SQL Developer JEE JPA Junit Fit Eclipse Innovator SCTM SonarQube Oracle Weblogic Scrum
IT-Systemhaus der Bundesagentur für Arbeit
11 Monate
2016-02 - 2016-12

KIWI - Automatisierter Datenabgleich BZfSt

Backend Developer Java (JEE) und Scrum Master Maven Jira Confluence ...
Backend Developer Java (JEE) und Scrum Master

Zahlverfahren der Bundesagentur für Arbeit (34 Mrd. Euro/Jahr)

Agiles (Scrum) Wartungs- und Weiterentwicklungsprojekt

  • Dies war mein erstes Projekt nach der Ausbildung. Anfang des Jahres erfolgte die Umstellung von einem Wasserfall basiertem vorgehen auf Scrum.
  • Da in der Abteilung keine Scrum Erfahrung bestand konnte ich durch mein Interesse an agiler Softwareentwicklung direkt in die Rolle des Scrum Masters schlüpfen.
    • Vermitteln der agilen Werte
    • Coaching zu agiler Softwareentwicklung
    • Moderation der Scrum Events
    • ?Durchführung ?von Retrospektiven

Maven Jira Confluence Bitbucket SQL Developer Java JEE Docker Kubernetes DB2 z/OS Oracle DB Spock JSF Selenium Geb Liquibase Scrum
IT-Systemhaus der Bundesagentur für Arbeit

Aus- und Weiterbildung

Aus- und Weiterbildung

Studium/Abschluss Fachinformatiker für Anwendungsentwickung


Zertifizierungen

ISTQB:

  • Certified Tester Foundation Level
  • Extension ? Agile Tester
  • Scrum.org:
  • Professional Scrum Master I
  • Professional Scrum Master II


IREB:

  • Certified Professional for Requirements Engineering
  • CPRE Foundation Level
  • iSAQB:
  • Certified Professional for Software Architecture

Kompetenzen

Kompetenzen

Top-Skills

Java Scrum Docker Kubernetes Java EE Spring Boot OpenApi JUnit Spock SQL Kafka OpenShift Git JPA Clean Code Microservices Domain Driven Design

Produkte / Standards / Erfahrungen / Methoden

Profil:

  • IT Consultant für Java Enterprise Systeme mit mehrjähriger Erfahrung als Full-Stack-Entwickler und Scrum Master.
  • Es ist mir wichtig gemeinsam mit dem Kunden qualitativ hochwertige Software zu entwickeln die wartbar und erweiterbar ist. Ich interessiere mich für Agilität, Domain Driven Design und Test Driven Development.


Werkzeuge

  • IntelliJ
  • Eclipse
  • SQL-Developer
  • Git
  • Subversion
  • Postman
  • Jenkins
  • Confluence
  • Jira
  • Bitbucket


Technologien

  • Java, Groovy, TypeScript, JavaScript 
  • JEE, Dropwizard, Quarkus, Spring, Spring Boot 
  • Junit, Spock, FIT, Geb, Selenium, Angular, JSF mit Primefaces 
  • Docker, Kubernetes, Openshift 
  • OpenApi Mapstruct
  • Microservices, DDD
  • Oracle DB, DB2/zOS, DB2 LUW
  • JPA, Hibernate


Methodik/Vorgehen

  • Scrum
  • Kanban
  • Wasserfall


Projekthistorie Kompakt

01/2024 - heute:

Rolle: Full-Stack-Developer 

Kunde: IM4GINE 


Aufgaben:

  • Startup Support
  • Java, Angular, Spring Boot 3, Docker, OpenApi, Stable Diffusion


02/2024 ? 12/2023:

Rolle: Backend Developer

Kunde: Signal Iduna 


Aufgaben:

  • Host-Ablösung Provisionsberechnung
  • Java, Spring Boot, Dropwizard, Kafka, Docker, Openshift


03/2020 ? 01/2023:

Rolle: Full-Stack-Developer 

Kunde: Sopra Financial Technology 


Aufgaben:

  • VUN
  • Java, Angular, JEE, OpenApi, Openshift


05/2019? 02/2020:

Rolle: Scrum Master für zwei Entwicklungsteams

Kunde: Sopra Financial Technology 


Aufgaben:

  • GLOBO


03/2018 ? 04/2019:

Rolle: Full-Stack-Developer 

Kunde: Sopra Financial Technology 


Aufgaben:

  • GLOBO
  • Java, JSF, JEE, Kubernetes, Liquibase


10/2017 ? 03/2018:

Rolle: Backend Developer Java (JEE) und Scrum Master

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Ablösung kleiner Familienkassen (ÖD)


08/2017 ? 09/2018:

Rolle: Backend Developer

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Spike DDD für Kindergeld


01/2017 ? 08/2017:

Rolle: Backend Developer und Scrum Master

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Security Improvements


02/2016 ? 12/2016:

Rolle: Fullstack Developer und Scrum Master

Kunde: IT-Systemhaus der Bundesagentur für Arbeit


Aufgaben:

  • KIWI - Automatisierter Datenabgleich BZfSt

Branchen

Branchen

  • Banken
  • Versicherungen
  • Öffentlicher Sektor

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.