Über mich
Ich bin Java Backend-Entwickler, spezialisiert auf SpringBoot und Schnittstellenentwicklung (REST) per openAPI. Auch die Alternative zu SpringBoot, nämlich Quarkus durfte ich bisher in Projekten vertiefen. Testen (Unit-Tests, Integrationstests, End-To-End-Tests) und Testautomatisierung gehören auch zu meinen Aufgaben. Im Frontendbereich (React, Angular) habe ich auch schon Erfahrungen sammeln können, allerdings noch nicht in der Tiefe wie im Backend. DevOps und Wartung ist für mich genauso selbstverständlich wie die Entwicklung.
Skills
Expert:in
Fortgeschritten
Grundkenntnisse
Projekte
Behörde
· Steuern und Recht
August 2025 — Juni 2026
Entwicklung und Wartung eines Backend-Systems
Folgende Funktionalitäten wurden umgesetzt
Implementierung der Business-Logik mit Java 17 und Spring Batch
Befüllung der Oracle Datenbank durch die Anwendung
Abfragen und Anzeigen von Daten in der UI über Prime Faces
Migration von Java 11 auf Java 17
XML und XML-Schema-Validierung
Refactoring von Code
Einhaltung von OWASP Regeln bei der Implementierung zur Sicherstellung der Anwendungssicherheit
OWASP XXE-Schutz (Xml External Entity Prevention)
Saxon, Xalan XSLT-Prozessoren
Migration von Saxon auf Xalan und umgekehrt
Automatische Generierung von JAXB-Java-Code auf Basis von XML-Schema-Dateien mit Hilfe des xjc-Compilers
Anpassung von JUnit Tests, DBUnit Tests und Integrationstets
Ausführung von Regressionstests mit Micro Focus ALM
Implementierung von Liquibase Skripten
Implementierung von Junit-Tests, DBUnit-Tests und Integrationstests
Durchführung von DevOps Tätigkeiten
Verwendung von Claude AI bei der Implementierung und Konzeption
Verwendete Technologien: Eclipse, Intellij, Java 17, Git, GitBash, Spring, Spring Batch, Maven, Junit 5, Mockito, Jakarta Persistence (JPA), Liquibase, Hibernate, Lombok, SQL, ORACLE Datenbank 19c, H2, Linux, Bash-Scripting, Nexus, Jenkins, Groovy, Logback, XML, XSLT, XPath, JBoss Application Server, JSF, Prime Faces, OWASP Sicherheitsregeln, Clean Code, Micro Focus ALM, Claude AI, Jira, Confluence, FTP/SFTP
Vorgehensmodell: Agil per SCRUM
Migration eines Backend-Systems von SOAP auf REST
Folgende Funktionalitäten wurden umgesetzt:
Umstellung von SOAP auf REST
Contract First Ansatz mit openAPI
Generierung von Java-Code über den Contract First Ansatz mit dem openAPI Generator von Maven
Anpassung von JUnit Tests, DBUnit Tests und Integrationstets
Implementierung von Junit-Tests, DBUnit-Tests und Integrationstests
DevOps Tätigkeiten zur Wartung der Anwendung
Verwendete Technologien: Eclipse, Intellij, Java 17, Git, GitBash, Spring, openAPI, Maven, Junit 5, Mockito, REST API, RESTEasy, Swagger UI, ORACLE Datenbank 19c, H2, Linux, Bash-Scripting, Nexus, Jenkins, Podman, Logback, XML, XSLT, XPath, SOAP, WSDL, JBoss Application Server, JSF, Prime Faces, Postman, curl, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Migrations von Eclipse auf IntelliJ IDEA
Folgende Funktionalitäten wurden umgesetzt:
Umstellung der Java Projekte
Umstellung der Launcher/Runner
Umstellung der Konfigurationen
Nutzung des Dependency Analyzer in IntelliJ zur Aufdeckung von Konflikten in den Dependencies und deren Behebung
Verwendete Technologien: Eclipse, Intellij, Java 17, Git, GitBash, Maven, Junit 5, Mockito, SQL, ORACLE Datenbank 19c, Linux, Nexus, Jenkins, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Entwicklung und Wartung eines Testautomatisierung-Systems
Folgende Funktionalitäten wurden umgesetzt:
Implementierung der Regressionstests
Migration von Spring auf Spring Boot
Migration von plain JDBC aud JDBCTemplate und NamedParameterJDBCTemplate
Erstellung von Testfällen in Zephyr Scale
Durchführung von DevOps Tätigkeiten
Verwendete Technologien: Eclipse, Intellij, Java 17, Git, GitBash, Spring, Spring Boot, Maven, Junit 5, Mockito, SQL, ORACLE Datenbank 19c, Linux, Bash-Scripting, Nexus, Jenkins, Zephyr Scale, XML, XSLT, XPATH, Clean Code, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Bank
· Banken und Finanzdienstleistungen
Juni 2024 — Juni 2025
Zusätzlich zu den Entwickler-Tätigkeiten, wurden in allen Projekten folgende DevOps Tätigkeiten durchgeführt:
Konfiguration durch Helm-Skripte, um alle Umgebungen per DevOps zu versorgen
Erstellung von Kubernetes ConfigMaps, Services, ServiceAccounts, Deployments, Secrets, Certificates, Routes und Sidecar Konfiguration als ConfigMap
Build und Deployment der Docker Images über Azure DevOps Pipelines auf die einzelnen Umgebungen in Richtung Azure Cloud
Überwachung der Kubernetes POD’s aller Umgebungen über OpenShift
Entwicklung und Wartung eines Microservices und Betrieb eines Service Mesh zur Breitstellung eines Sidecar Containers zur Persistierung der Zustandsveränderung von Prozessen diverser Fachabteilungen
Folgende Funktionalitäten wurden umgesetzt:
Erstellung der Schnittstellen auf Basis von OpenAPI nach dem Contract First Ansatz
Generierung der REST-Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Erzeugung von Kotlin DTOs und API-Interfaces (Generatorname kotlin-spring) durch den OpenAPI Generator zur Vergegenwärtigung und Vergleich zum Java Ansatz
Implementierung dieser Schnittstellen
Umsetzung der REST-Controller und dazugehöriger Services
Implementierung einer Pagination unter Einhaltung von Hateoas
Einbindung einer vom Kunden selbstgeschriebenen Java-Library in die eigene Anwendung, um das DB-Secret zu verschleiern
Einrichten einer Oracle Datenbank Version 19c als Docker Container auf der eigenen Maschine zur lokalen Entwicklung
Einrichten von Kafka und Zookeeper als Docker Image auf der eigenen Maschine zur lokalen Entwicklung
Erstellung von Avro Schemas, um die Kafka Nachrichten zu modellieren
Vertestung aller Controller und Services
Einrichten der PKI Infrastruktur, um die sichere Kommunikation mit dem Server herzustellen
Implementierung von Flyway Skripten
Implementierung der Persistenzschicht mit Spring Data JPA und Criteria API
Implementierung der Versendung von Daten an Kafka zur Versorgung der Umsysteme
Implementierung von Kafka-Listenern, um Daten von Umsystemen zu empfangen und zu verarbeiten
Behebung von CVE‘s
Implementierung und Durchführung von Lasttests mittels K6
Einbau von Metriken
Einrichtung der Anzeige der Applikationslogs in ELK Stack Kibana
Implementierung von konfigurierbaren Hintergrundjobs durch Spring-Scheduler mit Cron Expressions
Verwendete Technologien: Domain Driven Design (DDD), Intellij, Java 21, Kotlin, Spring Boot 3.5.0, Hateoas, Spring Boot Test Slices, Camunda, BPMN, Maven, Junit 5, Mockito, Hamcrest, Jakarta Persistence (JPA), HQL, Criteria API, Flyway, Hibernate, Lombok, SQL, ORACLE Datenbank 19c, DBeaver, H2, REST API, HTML, Javascript, OpenAPI 3.0.3, Swagger, JSON Web Tokens (JWT), Kafka, Zookeeper, Avro Schema, JSON, JSON-Path, Jackson, Shedlock, Postman, Docker, Kubernetes, Helm, Microsoft Azure DevOps, Azure Key Vault, OpenShift, Linux, Bash-Scripting, Grafana, Metriken, Prometheus, Artifactory, Logback, ELK Stack, Elasticsearch, Kibana, Logstash, K6, Clean Code, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Krankenkasse
· Versicherungen
September 2020 — März 2024
Zusätzlich zu den Entwickler-Tätigkeiten, wurden in allen Projekten folgende DevOps Tätigkeiten durchgeführt:
Konfiguration durch Helm-Skripte, um alle Umgebungen per DevOps zu versorgen
Encrypten/Decrypten von Secrets
Erstellung von Kubernetes ConfigMaps, Services, ServiceAccounts, Deployments
Deployment über TeamCity Pipelines als Docker-Images in Richtung AWS Cloud
Deployment über Gitlab CI/CD Pipelines als Docker-Images in Richtung AWS Cloud
Überwachung der Kubernetes POD’s und aller DEV -und Integrationsumgebungen
Weiterentwicklung einer bestehenden Identity Provider Software (IDP) unter Einsatz von einem Custom-Keycloak und Quarkus-Integration
Folgende Funktionalitäten wurden umgesetzt, um die Customization zu erreichen:
Generierung der Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Implementierung dieser Schnittstellen als eine Ressource und Keycloak-Erweiterung als Service Provider Interfaces (SPI)
Umsetzung der REST-Controller und dazugehörigen Services
Vertestung aller Controller und Services
Implementierung der Persistenzschicht
Implementierung eines Verschlüsselungsservices, um Datenbankspalten mit verschlüsselten Daten zu versorgen
Implementierung von Authenticators und Required Actions als SPI, um customized-Handhabung mit dem Keycloak zu erreichen
Implementierung von Required-Action-Frontends
Konfiguration von Keycloak Benutzern, Clients, Scopes und Roles in der Keycloak-AdminUI
Implementierung der Versendung von Daten an Kafka zur Versorgung der Umsysteme
Implementierung von Kafka-Listenern, um Daten von Umsystemen zu empfangen und zu verarbeiten
Behebung von CVE‘s
Einbau von Metriken
Implementierung von konfigurierbaren Hintergrundjobs durch Quarkus-Scheduler
Verwendete Technologien: Domain Driven Design (DDD), Intellij, Java 8 bis 21, Maven, Junit 5, Mockito, EasyMock, Hamcrest, Powermock, Selenium, Jakarta Persistence (JPA), Liquibase, SQL, MySQL, PostgreSQL, PGAdmin, MariaDB, H2, Keycloak, REST API, RESTEasy, FreeMarker Templates (FTL), HTML, Javascript, CSS, Keycloak Admin UI, OAuth2, OpenID Connect, OpenAPI, Swagger, Python, JSON Web Tokens (JWT), Nimbus Jose JWT, Quarkus, Kafka, Zookeeper, AKHQ, JSON, JSON-Path, Jackson, Camel, Quarkus-Scheduler, ShedLock, Postman, Insomnia, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Renovate Bot, Clean Code, DevSecOps, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Implementierung von Kafka-Listenern, um Daten aus einem anderen System über Kafka zu importieren und in einer PostgreSQL Datenbank verschlüsselt zu speichern
Folgende Funktionalitäten wurden umgesetzt:
Implementierung von Kafka-Listenern, Konvertierung der Daten in eine Datenbankstruktur
Speichern der Daten in der Datenbank. Dabei wurden sensible Daten verschlüsselt abgespeichert.
Implementierung eines Verschlüsselungsservices, um die Daten verschlüsselt zu speichern
Einbau von Metriken
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Gradle, Spring Boot, Spring Boot Test Slices, Spring Security, Spring Kafka, Junit 5, Mockito, Jakarta Persistence (JPA), Liquibase, SQL, PostgreSQL, PGAdmin, H2, OAuth2, OpenID Connect, OpenAPI, Kafka, AKHQ, Python, JSON, JSON-Path, Jackson Databind, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Postman, Insomnia, DevSecOps, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Implementierung von Kafka-Listenern, um Daten aus einem anderen System über Kafka zu importieren, Mapping vorzunehmen und die gemappten Daten an andere Kafka Topics zu schicken
Es wurden Daten aus einem SAP-System über Kafka mittels über Kafka-Listener entgegengenommen. Anschliessend wurden diese Daten in eine Struktur gebracht, die ein Zielsystem versteht und schliesslich wurden diese über Kafka mittels KafkaTemplate ans Zielsystem verschickt.
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Spring Boot, Spring Kafka, JUnit 5, PI-Tests, Mockito, Jakarta Persistence (JPA), Liquibase, SQL, PostgreSQL, PGAdmin, H2, Keycloak, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), Kafka, Kafka Template, AKHQ, JSON, JSON-Path, Jackson Databind, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Postman, Insomnia, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Implementierung von REST-Schnittstellen über den openAPI Generator
Folgende Implementierungen wurden vorgenommen:
Generierung der Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Umsetzung der REST-Controller und dazugehörigen Services
Vertestung aller Controller und Services
Einbau von Metriken
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Spring Boot, Spring Boot Test Slices, Spring Security, Spring Kafka, Junit 5, PI-Tests, Mockito, Jakarta Persistence (JPA), Liquibase, SQL, PostgreSQL, PGAdmin, H2, Keycloak, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), Logback, Kafka, AKHQ, JSON, JSON-Path, Jackson, Python, Docker, Kubernetes, Helm, AWS, Linux, Bash-Scripting, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Postman, Insomnia, Clean Code, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Testsuite zur Automatisierung von Smoke-Tests
Es wurde eine Testsuite implementiert, die dabei helfen sollte, die Smoketests nicht mehr manuell machen zu müssen.
Folgende Funktionalitäten wurden umgesetzt:
Erstellen von Cucumber Test Skripten (Feature-Dateien)
Verwendung von Gherkin-Keywords auf deutsch
Implementierung der Tests mittels WebDriver von Selenium
Verwendung des openAPI Generators, um REST-Schnittstellen in den Tests zu konsumieren
Verwendete Technologien: Intellij, Java 21, Maven, Gradle, Junit 5, Selenium, WebDriver, BDD, Cucumber, Gherkin, Jakarta Annotation API, Keycloak Admin Client, REST API, JSON, Jackson, TeamCity, Artifactory, GitLab CI, Jira, Confluence
Implementierung einer Applikation zur Registrierung über das Web/Mobile App
Frontend:
Neukunden bekamen die Möglichkeit, sich über ein Web-Frontend zu registrieren. Dazu wurde ein React-Frontend mit Typescript zur Eingabe und zum abschließenden Verschicken der Kundendaten gebaut.
Auch die Einwilligung und Datenschutzerklärung war Bestandteil der Webseite. Vor dem Absenden wurde eine Seite entwickelt, über die Kunden ihr eigenes Passwort vergeben konnten.
Dazu wurde die Javascript-Library JSEncrypt zum Verschlüsseln der Passwörter eingesetzt.
Backend:
Das Backend hat Anfragen vom Web-Client erhalten und seinerseits mit dem Identity Provider (Keycloak) über JWT Token Austausch zur Umsetzung der Authentifizierung/Authorisierung kommuniziert. Dabei wurde der Client Credential Flow im Sinne von OpenID Connect/OAuth angewandt. Schließlich wurde der Kunde im Datenbestand des Keycloak angelegt.
Folgende Funktionalitäten wurden im Backend umgesetzt:
Generierung der Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Umsetzung der REST-Controller und dazugehörigen Services
Vertestung aller Controller und Services
Verwendete Technologien: React, ReactNative, Typescript, Javascript, Jest, JSEncrypt, Npm, Yarn, SwaggerClient, Nginx als Reverse-Proxy, Intellij, Java 21, Maven, Spring Boot Webflux, Reactor, Spring Security OAuth2, Junit 5, PI-Tests, Mockito, AssertJ, Keycloak, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), Kafka, AKHQ, JSON, JSON-Path, Jackson, Docker, Kubernetes, Helm, AWS, Linux, Bash-Scripting, Sentry, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Postman, Insomnia, Jira, Confluence
Implementierung einer Applikation zur Verwendung von Support Mitarbeitern
Frontend:
Die Support-Mitarbeiter haben am Frontend Prozesse anstossen können, die Kunden helfen konnten, ihre Anfragen zu lösen. Das hat dazu geführt, dass viele Kundenanfragen sofort über den Support durchgeführt werden konnten, ohne stets mit dem 3rd Level Support in Kontakt zu treten. Das hatte eine schnellere Abarbeitung von Support-Tickets ermöglicht. Auch wurde im Frontend eine Möglichkeit geboten, Klärfälle bei Videoidentifikationsfehlern zu bearbeiten.
Backend:
Die Daten wurden aus der IDP-Software bezogen und im Frontend zur Anzeige gebracht. Dabei wurden Schnittstellen mittels openAPI generiert und zwar über den OpenAPI Generator Maven Plugin.
Folgende Funktionalitäten wurden im Backend umgesetzt:
Generierung der Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Umsetzung der REST-Controller und dazugehörigen Services
Vertestung aller Controller und Services
Einbau von Metriken
Verwendete Technologien: SapUi5, Javascript, NPM, SwaggerClient, Nginx als Reverse-Proxy, Intellij, Java 21, Maven, Spring Boot Webflux, Reactor, Spring Security OAuth2, Junit 5, PI-Tests, Mockito, AssertJ, Keycloak, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), Kafka, AKHQ, JSON, JSON-Path, Jackson, Docker, Kubernetes, Helm, AWS, Linux, Bash-Scripting, Sentry, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI, Postman, Insomnia, Clean Code, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Applikation zum Exportieren von Prometheus-Metriken auf Basis von SQL-Abfragen zu konfigurierbaren Zeitintervallen
Durch Abfrage der Datenbank und Exportieren der Ergebnisdaten in Prometheus, konnten zu statistischen Fragestellungen Metriken erstellt werden, die zu Monitoringzwecken dienten.
Dazu wurde auf einer als Docker-Image vorliegende Lösung aufgesetzt, die in der eigenen
Cloud verdrahtet wurde.
Folgende Funktionalitäten wurden umgesetzt:
Implementierung und Speicherung der SQL-Abfragen in einer Kubernetes ConfigMap
Verwendete Technologien: Intellij, SQL, Docker, Kubernetes, Helm, AWS, Grafana, Metriken, Prometheus, TeamCity, Artifactory, GitLab CI
Vorgehensmodell: Agil per SCRUM
Applikation zur Identifizierung von Kundenidentitäten
Neukunden, die sich registriert haben, mussten eine Videoidentifikation durchlaufen. Dabei mussten persönliche Daten geprüft werden, um ihre Identifikation zu verifizieren.
Folgende Funktionalitäten wurden umgesetzt:
Generierung der Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Umsetzung der REST-Controller und dazugehörigen Services
Vertestung aller Controller und Services
Verschlüsselung von Daten mittels Java-Kryptografie
Speicherung der verschlüsselten Daten in der Datenbank
Einbau von Metriken
Behebung von CVE‘s
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Spring Boot, Spring Boot Test Slices, Spring Security, Spring Kafka, Junit 5, PI-Tests, Mockito, AssertJ, Jakarta Persistence (JPA), Liquibase, SQL, MySQL, H2, Keycloak, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), Logback, Kafka, AKHQ, JSON, JSON-Path, Jackson, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Grafana, Metriken, Prometheus, Cloudwatch, TeamCity, Artifactory, GitLab CI, Postman, Insomnia, Renovate Bot, Clean Code, DevSecOps, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Applikation zum Anlegen von Mock-Daten zur Identifizierung von Kundenidentitäten
Zum einfacheren Testen der Applikation zur Identifizierung von Kundenidentitäten wurde ein Tool gebaut, das Mockdaten in das jeweilige Kafka-Topic gepumpt hat. Auf diese Weise konnte die Consumer-Appikation diese Mockdaten konsumieren und Test-Szenarien schneller durchgeführt werden.
Folgende Funktionalitäten wurden umgesetzt:
Umsetzung der REST-Controller und dazugehörigen Services
Verschlüsselung von Daten mittels Java-Kryptografie
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Gradle, Spring Boot Webflux, Spring Security, Spring Kafka, Logback, Kafka, AKHQ, JSON, JSON-Path, Jackson, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Cloudwatch, TeamCity, Artifactory, GitLab, Postman, Insomnia, Renovate Bot, DevSecOps, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Applikation zur Versendung von SMS und E-Mails aus Kafka Events
Kunden wurden per Email/Sms benachrichtigt wenn bestimmte Ereignisse an ihren Konten passiert sind. Diese Ereignisse konnten die Kunden selbst über ihr App-Verhalten, aber auch das System selbst ausgelöst haben. Um gleiche Nachrichten nicht mehrfach zu verschicken, wurden Kafka-spezifische Informationen in einer Datenbank gespeichert.
Folgende Funktionalitäten wurden umgesetzt:
Kafka-Consumer inklusive Retry –und Deadletter-Funktionalität zum Erhalt der Message
Speichern von Kafka-Topic Informationen in der Datenbank
Verschicken von SMS über einen externen Dienst
Verschicken der Emails durch AWS SES
Vertestung dieser Funktionalitäten
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Spring Boot, Spring Security, Spring Kafka, Junit 5, PI-Tests, Mockito, Hamcrest, Jakarta Persistence (JPA), Liquibase, SQL, MySQL, H2, Wiremock, Kafka, AKHQ, JSON, JSON-Path, Jackson Core, Jackson Databind, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS SDK, AWS SES, AWS STS, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Renovate Bot, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Weiterentwicklung einer Webapplikation zur Verwaltung von Kundenprofilen
Frontend:
Kunden hatten die Möglichkeit in ihrem eigenen Profil Daten aktuell zu halten. Z.Bsp Aenderung ihrer Telefonnumer, Email, Löschen ihres Profils etc. Dafür wurde in ReactJS ein Frontend implementiert, um dies zu bewerkstelligen.
Folgende Funktionalitäten wurden im Frontend umgesetzt:
Implementierung der Kommunikation zwischen Frontend und Backend
Implementierung der Anfrage an den IDP, um ein Access-Token zum Austausch mit dem IDP zur Abfrage von Benutzerkonten zu erhalten
Implementierung aller GUIs per ReactJS
Backend:
Die Daten wurden aus der IDP-Software bezogen und im Frontend zur Anzeige gebracht. Dabei wurden Schnittstellen mittels openAPI generiert und zwar über den OpenAPI Generator Maven Plugin.
Folgende Funktionalitäten wurden im Backend umgesetzt:
Generierung der Schnittstellen nach außen über den OpenAPI Generator Maven Plugin
Umsetzung der REST-Controller und dazugehörigen Services
Vertestung aller Controller und Services
Verwendete Technologien: ReactJS, Javascript, HTML, CSS, NPM, Node, Axios, Intellij, Java 21, Maven, Spring Boot Webflux, Reactor, Spring Security OAuth2, Junit 5, PI-Tests, Mockito, Wiremock, Keycloak, Keycloak Admin Client, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), JSON, Jackson, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Sentry, Grafana, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Postman, Insomnia, Jira, Confluence
Vorgehensmodell: SCRUM
Implementierung eines Import-Systems zur Versorgung von aktualisierten Benutzerkonten
Da das führende System ein anderes System war, musste ein Import-Tool her, um Benutzerkonten in den IDP zu bekommen. Dabei ging es um Benutzerkonten, die aus verschiedenen Gründen aktualisiert wurden. Die Aktualisierung und Versorgung des IDP-Systems sollte durch dieses Tool umgesetzt werden.
Folgende Funktionalitäten wurden umgesetzt:
Importieren der Daten über einen Kafka-Consumer
Aggregation der Daten in konfigurierbaren Paketgrössen
Konvertierung der Daten in die Ziel-Struktur
Verschicken der Daten der neuen Struktur an den IDP
Vertestung dieser Funktionalitäten
Verwendete Technologien: Intellij, Java 8 bis 17, Maven, Kafka, AKHQ, Apache Camel, Camel JSONPath, Spring Boot Webflux, Reactor, Spring Security, Junit 5, PI-Tests, Mockito, Logback, Keycloak, REST API, OAuth2, OpenID Connect, OpenAPI, JSON Web Tokens (JWT), JSON, Jackson, Jackson Databind, Apache Avro, Docker, Kubernetes, Helm, Linux, Bash-Scripting, AWS, Sentry, Grafana, Cloudwatch, TeamCity, Artifactory, GitLab CI/CD, Postman, Insomnia, Jira, Confluence
Vorgehensmodell: Agil per SCRUM
Entwicklung eines Standalone-Tools zum Erzeugen von einem Certificate Signing Request (CSR) für AWS KMS
Das Cloud-Team hat dieses Tool angefragt.
Folgende Funktionalitäten wurden umgesetzt:
Entwicklung des CSR‘s
Verwendete Technologien: Intellij, Java 8, Maven, Spring Boot, AWS Java SDK, KMS und STS
Vorgehensmodell: Ausnahmsweise auf Anfrage
Entwicklung eines Tools zur Umwandlung von Daten aus einem JSON-Format in ein Java-Format
Folgende Funktionalitäten wurden umgesetzt:
Konvertierung der Daten aus dem JSON-Format nach Java
Verwendete Technologien: Intellij, Java 17, Maven, Jackson, Jackson Databind, Junit 5, Mockito
Einmaljobs zur Versorgung von Umsystemen
Umsysteme mussten zum Hauptsystem synchron gehalten werden. Dabei wurden Einmaljobs in Java Spring Batch implementiert, um grössere Datenmengen abzusetzen.
Folgende Funktionalitäten wurden umgesetzt:
Einlesen der Daten
Konvertierung der Daten in eine andere Struktur
Verschicken der neuen Struktur an Kafka Topics
Verwendete Technologien: Intellij, Java 8 bis 21, Maven, Spring Batch, Spring Kafka, Kafka, AKHQ, Apache Avro, Jira, Confluence
