Projekte außerhalb von D8 kommen in Frage, wenn ein hoher Remote-Anteil möglich ist.
Das Produkt bildet eine Kernkomponente einer Plattform, die ihre Prozesse auf Stamm- und Bewegungsdaten von Flurförderfahrzeugen (u.a. Gabelstabler) stützt (Stichwort "Digitaler Zwilling"). Die Vision des Unified Data Layers ist es alle Daten, die für die Anwendungsfälle dieser Lösungen benötigt werden bereitzustellen. Synergien, die dadurch geschaffen werden, sollen die digitalen Prozesse unterstützen und ganz neue Geschäftsszenarien ermöglichen. Hierfür wurden und werden zahlreiche Microservices mittels Java und Spring Boot/Cloud entwickelt.
Alle Komponenten werden via Docker in Kubernetes gehosted. Das Hosting findet in der Microsoft Azure Cloud statt.
Tätigkeit:
- Konzeption und Weiterentwicklung der Softwarearchitektur im Team
- Umsetzung der fachlichen Anforderungen nach Clean-Code-Prinzipien im Scrum-Team.
- Code-Reviews
Beschreibung:
- Weiterentwicklung des Kreditcenters, in welchem ein Benutzer seine bisherigen Kreditvergleichsresultate verwalten kann.
- Hierfür wurden diverse Microservices (SpringBoot) inkl. UI (Angular) entwickelt und werden stets weiterentwickelt.
- Alle Komponenten werden via Docker in einer In-House Kubernetes-Cloud (Rancher) im Rechenzentrum von CHECK24 gehostet.
Tätigkeit:
- Konzeption der Softwarearchitektur im Team
- Umsetzung der sehr komplexen fachlichen Anforderungen als Developer nach Clean-Code-Prinzipien im Scrum-Team.
- Code-Reviews
Beschreibung:
- Neuentwicklung des Kreditvergleichs nachdem der Benutzer die Antragsstrecke vollendet hat und die diversen Kreditangebote der Banken eintreffen.
- Hierfür wurde ein neuer Microservice (SpringBoot) inkl. UI (Angular) entwickelt.
- Alle Komponenten werden via Docker in einer In-House Kubernetes-Cloud (Rancher) im Rechenzentrum von CHECK24 gehostet.
Tätigkeit:
- Konzeption der Softwarearchitektur zusammen mit dem IT-Direktor
- Umsetzung der sehr komplexen fachlichen Anforderungen als Lead-Developer nach Clean-Code-Prinzipien im Scrum-Team. Vor allem das Schreiben von Backend-Integrationstests war eine Herausforderung aufgrund der Asynchronität vom UI zum Backend (WebSockets) sowie der asynchronen Verarbeitung im Backend (Scheduling/JMS)
- Code-Reviews
Beschreibung:
- Weiterentwicklung der zentralen Authentifizierung für VR-Bank-Kunden (CAS). Die Authentifizierung basiert auf OpenID Connect 1.0 sowie OAuth 2.0 und verwendet einen selbst vom Team angepassten/erweiterten Forgerock openAM als OIDC/OAuth-Server.
- Neben dem Customizing des openAM werden noch eine Vielzahl von selbst geschriebenen und verwalteten ("you build it, you run it") Microservices eingesetzt. Diese kümmern sich z.B. um Pin- und TAN-Prüfung, Relying-Party-Management oder die Lieferung von legitimierten Personendaten.
- Alle Komponenten (openAM und Microservices) werden via Docker in einer In-House OpenShift-Kubernetes-Cloud im Rechenzentrum der Fiducia und GAD IT gehostet.
Fachliche Schwerpunkttätigkeiten:
- Anbindung aller VR-Banken an die YES-Plattform (https://yes.com/)
- Anbindung der Firmenkunden-App und des Firmenkundenportals an CAS
- Migration des Features, dass sich VR-Bankkunden mittels ihrer Bank-Credentials bei der Bausparkasse Schwäbisch Hall authentifizieren können, von Docker-Swarm nach OpenShift (Kubernetes)
- Implementierung Single-Sign-On
Entwicklungstechnische Tätigkeiten:
- Mitkonzeption der Softwarearchitektur neu zu entwickelnder Systembestandteile
- Umsetzung fachlicher Anforderungen
- Code-Reviews
Beschreibung:
- ZuMPA ist Teil eines Programms zur Entwicklung eines Nachfolgesystems der dynamischen Fahrgastinformationsanzeiger an U-Bahn, S-Bahn, Bus- und Tramhaltestellen in München.
- ZuMPA stellt ein verteiltes System zur Aufbereitung, Verteilung und Darstellung der Fahrgastinformationen an den diversen Fahrgastinformationsanzeigegeräten dar.
- ZuMPA besteht aus diversen (reaktiven) SpringBoot-Micro-Services sowie einer Angular5-Applikation, welche in Docker-Containern laufen.
Tätigkeit:
- Konzeption der Softwarearchitektur neu zu entwickelnder Systembestandteile
- Umsetzung fachlicher Anforderungen als Lead-Developer
- Code-Reviews
Beschreibung:
Neuentwicklung einer Projektmanagement-Software und dadurch Ablösung einer zugekauften und angepassten Software. Die neue Software besteht aus diversen SpringBoot-Micro-Services sowie einer AngularJS-Applikation (1.5, Components), welche auf Pivotal Cloud-Foundry laufen.
Tätigkeit:
- Umsetzung fachlicher Anforderungen als Lead-Developer
- Code-Reviews
- Migration der Daten des abzulösenden Systems in das neue System
Beschreibung:
Weiterentwicklung eines Systemverbunds zur Planung, Genehmigung und Umsetzung von Maßnahmen in Projekten. Der Systemverbund besteht aus zwei eigenentwickelten GWT-Applikationen zur Planung und Genehmigung von Maßnahmen sowie einer zugekauften und angepassten Projektmanagement-Software.
Tätigkeit:
- Umsetzung fachlicher Anforderungen als Lead-Developer
- Code-Reviews
- Refactoring von Legacy-Code
- Update aller Backend-Services auf Spring Boot
- 3rd Level Support
Beschreibung:
Komplette Neuentwicklung von Pegasus Strom, da die Geschäftsprozesse sich teils grundlegend verändert haben. Zudem ist die in Pegasus Strom eingesetzte Technologie veraltet. Der Aufwand für ein Refactoring gegenüber einer Neuentwicklung war nicht angemessen. Pegasus Power Plus berechnet nicht nur die Strombeschaffungskosten, sondern auch die Vertriebskosten für diverse Produkte.
Tätigkeit:
- Konzeption von Softwarearchitektur und –design
- Neuentwicklung von Pegasus Strom im Scrum-Team
- Code-Reviews
- Migration der Daten des Altsystems in das neue System
Beschreibung: Pegasus Strom berechnet die Strombeschaffungspreise der E.ON Vertrieb Deutschland GmbH für diverse Produkte.
Tätigkeiten:
- Technische Konzeption von Softwarearchitektur und –design.
- Entwicklung im Team und seit ca. 07/2011 fast ausschließlich alleiniger Entwickler.
- Weiterentwicklungsstopp seit 2014 aufgrund des neuen Projekts „Pegasus Power Plus“.
- Weiterhin 3rd-Level-Support-Tätigkeiten.
Beschreibung:
Komplette Neuentwicklung von Pegasus Gas 1.0 aufgrund veralteter Technologien. Ein umfassendes Refactoring wäre teurer gewesen, als eine Neuentwicklung. Zudem hatten sich die Geschäftsprozesse erheblich verändert, so dass beispielsweise Pegasus Gas 2.0 neben den Beschaffungskosten auch die Vertriebskosten berechnet.
Tätigkeiten:
- Weiterentwicklung von Pegasus Gas im Scrum-Team
- Code-Reviews
Beschreibung: Pegasus Gas 1.0 berechnet die Gasbeschaffungspreise der E.ON Vertrieb Deutschland GmbH für diverse Produkte.
Tätigkeiten:
- Konzeption von Softwarearchitektur und –design.
- Entwicklung von Pegasus Gas auf Basis von Pegasus Strom.
Kenntnisse und Produkte: Siehe Projekt „Pegasus Strom“
Erstellung der schriftlichen Abschlussarbeit (05.2018 - 07.2018) und mündliche Prüfung (09.2018).
Softwaresysteme und –architekturen agil entwerfen und weiterentwickeln.
Entwurf flexibler Software-Architekturen, wie Microservices oder Self-Contained Systems.
Dokumentation und Kommunikation Softwarearchitekturen.
Software-Design (Architektur) und -Entwicklung, Lead-Developer
Mein Schwerpunkt liegt im Design und der Entwicklung modernster verteilter Anwendungen mit Java und JavaScript (Stichwort Microservices, Self-Contained-Systems, Cloud). Dabei stellt für mich das Verständnis der fachlichen Domäne eine Grundvoraussetzung dar, um qualitativ hochwertige Software zu entwickeln (Stichwort Domain-Driven-Design).
Die Einarbeitung in neue fachliche (und auch technische) Themen bereitet mir sehr viel Spaß, so dass ich gerne Projekte in mir auch unbekannten Domänen annehme.
Ich programmiere nach den Clean-Code-Prinzipien und gehe nach TDD (Test-Driven-Development) vor. Ferner führe ich gerne Code-Reviews anderer Entwickler sowie Code-Refactorings durch. Durch alle diese Maßnahmen erreiche ich mein Bestreben, stets sauberen, wartbaren und gut getesteten Code zu schreiben. Qualitativ hochwertige Software besticht aber auch durch eine angemessene und aktuelle Dokumentation (Stichwort arc42), welche immer entwicklungsbegleitend stattfinden sollte.
Ich bin ein absoluter Team-Player und gebe mein Wissen gerne im Team weiter. Zudem bin ich immer offen für Neues und nehme konstruktive Kritik gerne an.
Eingesetzte Technologien und Frameworks sind vor allem Java, Spring, JPA/Hibernate, REST, Messaging, JavaScript, TypeScript, Angular, HTML 5, CSS 3, Oracle, Jenkins/Bamboo, SonarQube, Apache Tomcat oder Netty, Apache Maven bzw. Gradle, Docker, Subversion/Git.
Projekte außerhalb von D8 kommen in Frage, wenn ein hoher Remote-Anteil möglich ist.
Das Produkt bildet eine Kernkomponente einer Plattform, die ihre Prozesse auf Stamm- und Bewegungsdaten von Flurförderfahrzeugen (u.a. Gabelstabler) stützt (Stichwort "Digitaler Zwilling"). Die Vision des Unified Data Layers ist es alle Daten, die für die Anwendungsfälle dieser Lösungen benötigt werden bereitzustellen. Synergien, die dadurch geschaffen werden, sollen die digitalen Prozesse unterstützen und ganz neue Geschäftsszenarien ermöglichen. Hierfür wurden und werden zahlreiche Microservices mittels Java und Spring Boot/Cloud entwickelt.
Alle Komponenten werden via Docker in Kubernetes gehosted. Das Hosting findet in der Microsoft Azure Cloud statt.
Tätigkeit:
- Konzeption und Weiterentwicklung der Softwarearchitektur im Team
- Umsetzung der fachlichen Anforderungen nach Clean-Code-Prinzipien im Scrum-Team.
- Code-Reviews
Beschreibung:
- Weiterentwicklung des Kreditcenters, in welchem ein Benutzer seine bisherigen Kreditvergleichsresultate verwalten kann.
- Hierfür wurden diverse Microservices (SpringBoot) inkl. UI (Angular) entwickelt und werden stets weiterentwickelt.
- Alle Komponenten werden via Docker in einer In-House Kubernetes-Cloud (Rancher) im Rechenzentrum von CHECK24 gehostet.
Tätigkeit:
- Konzeption der Softwarearchitektur im Team
- Umsetzung der sehr komplexen fachlichen Anforderungen als Developer nach Clean-Code-Prinzipien im Scrum-Team.
- Code-Reviews
Beschreibung:
- Neuentwicklung des Kreditvergleichs nachdem der Benutzer die Antragsstrecke vollendet hat und die diversen Kreditangebote der Banken eintreffen.
- Hierfür wurde ein neuer Microservice (SpringBoot) inkl. UI (Angular) entwickelt.
- Alle Komponenten werden via Docker in einer In-House Kubernetes-Cloud (Rancher) im Rechenzentrum von CHECK24 gehostet.
Tätigkeit:
- Konzeption der Softwarearchitektur zusammen mit dem IT-Direktor
- Umsetzung der sehr komplexen fachlichen Anforderungen als Lead-Developer nach Clean-Code-Prinzipien im Scrum-Team. Vor allem das Schreiben von Backend-Integrationstests war eine Herausforderung aufgrund der Asynchronität vom UI zum Backend (WebSockets) sowie der asynchronen Verarbeitung im Backend (Scheduling/JMS)
- Code-Reviews
Beschreibung:
- Weiterentwicklung der zentralen Authentifizierung für VR-Bank-Kunden (CAS). Die Authentifizierung basiert auf OpenID Connect 1.0 sowie OAuth 2.0 und verwendet einen selbst vom Team angepassten/erweiterten Forgerock openAM als OIDC/OAuth-Server.
- Neben dem Customizing des openAM werden noch eine Vielzahl von selbst geschriebenen und verwalteten ("you build it, you run it") Microservices eingesetzt. Diese kümmern sich z.B. um Pin- und TAN-Prüfung, Relying-Party-Management oder die Lieferung von legitimierten Personendaten.
- Alle Komponenten (openAM und Microservices) werden via Docker in einer In-House OpenShift-Kubernetes-Cloud im Rechenzentrum der Fiducia und GAD IT gehostet.
Fachliche Schwerpunkttätigkeiten:
- Anbindung aller VR-Banken an die YES-Plattform (https://yes.com/)
- Anbindung der Firmenkunden-App und des Firmenkundenportals an CAS
- Migration des Features, dass sich VR-Bankkunden mittels ihrer Bank-Credentials bei der Bausparkasse Schwäbisch Hall authentifizieren können, von Docker-Swarm nach OpenShift (Kubernetes)
- Implementierung Single-Sign-On
Entwicklungstechnische Tätigkeiten:
- Mitkonzeption der Softwarearchitektur neu zu entwickelnder Systembestandteile
- Umsetzung fachlicher Anforderungen
- Code-Reviews
Beschreibung:
- ZuMPA ist Teil eines Programms zur Entwicklung eines Nachfolgesystems der dynamischen Fahrgastinformationsanzeiger an U-Bahn, S-Bahn, Bus- und Tramhaltestellen in München.
- ZuMPA stellt ein verteiltes System zur Aufbereitung, Verteilung und Darstellung der Fahrgastinformationen an den diversen Fahrgastinformationsanzeigegeräten dar.
- ZuMPA besteht aus diversen (reaktiven) SpringBoot-Micro-Services sowie einer Angular5-Applikation, welche in Docker-Containern laufen.
Tätigkeit:
- Konzeption der Softwarearchitektur neu zu entwickelnder Systembestandteile
- Umsetzung fachlicher Anforderungen als Lead-Developer
- Code-Reviews
Beschreibung:
Neuentwicklung einer Projektmanagement-Software und dadurch Ablösung einer zugekauften und angepassten Software. Die neue Software besteht aus diversen SpringBoot-Micro-Services sowie einer AngularJS-Applikation (1.5, Components), welche auf Pivotal Cloud-Foundry laufen.
Tätigkeit:
- Umsetzung fachlicher Anforderungen als Lead-Developer
- Code-Reviews
- Migration der Daten des abzulösenden Systems in das neue System
Beschreibung:
Weiterentwicklung eines Systemverbunds zur Planung, Genehmigung und Umsetzung von Maßnahmen in Projekten. Der Systemverbund besteht aus zwei eigenentwickelten GWT-Applikationen zur Planung und Genehmigung von Maßnahmen sowie einer zugekauften und angepassten Projektmanagement-Software.
Tätigkeit:
- Umsetzung fachlicher Anforderungen als Lead-Developer
- Code-Reviews
- Refactoring von Legacy-Code
- Update aller Backend-Services auf Spring Boot
- 3rd Level Support
Beschreibung:
Komplette Neuentwicklung von Pegasus Strom, da die Geschäftsprozesse sich teils grundlegend verändert haben. Zudem ist die in Pegasus Strom eingesetzte Technologie veraltet. Der Aufwand für ein Refactoring gegenüber einer Neuentwicklung war nicht angemessen. Pegasus Power Plus berechnet nicht nur die Strombeschaffungskosten, sondern auch die Vertriebskosten für diverse Produkte.
Tätigkeit:
- Konzeption von Softwarearchitektur und –design
- Neuentwicklung von Pegasus Strom im Scrum-Team
- Code-Reviews
- Migration der Daten des Altsystems in das neue System
Beschreibung: Pegasus Strom berechnet die Strombeschaffungspreise der E.ON Vertrieb Deutschland GmbH für diverse Produkte.
Tätigkeiten:
- Technische Konzeption von Softwarearchitektur und –design.
- Entwicklung im Team und seit ca. 07/2011 fast ausschließlich alleiniger Entwickler.
- Weiterentwicklungsstopp seit 2014 aufgrund des neuen Projekts „Pegasus Power Plus“.
- Weiterhin 3rd-Level-Support-Tätigkeiten.
Beschreibung:
Komplette Neuentwicklung von Pegasus Gas 1.0 aufgrund veralteter Technologien. Ein umfassendes Refactoring wäre teurer gewesen, als eine Neuentwicklung. Zudem hatten sich die Geschäftsprozesse erheblich verändert, so dass beispielsweise Pegasus Gas 2.0 neben den Beschaffungskosten auch die Vertriebskosten berechnet.
Tätigkeiten:
- Weiterentwicklung von Pegasus Gas im Scrum-Team
- Code-Reviews
Beschreibung: Pegasus Gas 1.0 berechnet die Gasbeschaffungspreise der E.ON Vertrieb Deutschland GmbH für diverse Produkte.
Tätigkeiten:
- Konzeption von Softwarearchitektur und –design.
- Entwicklung von Pegasus Gas auf Basis von Pegasus Strom.
Kenntnisse und Produkte: Siehe Projekt „Pegasus Strom“
Erstellung der schriftlichen Abschlussarbeit (05.2018 - 07.2018) und mündliche Prüfung (09.2018).
Softwaresysteme und –architekturen agil entwerfen und weiterentwickeln.
Entwurf flexibler Software-Architekturen, wie Microservices oder Self-Contained Systems.
Dokumentation und Kommunikation Softwarearchitekturen.
Software-Design (Architektur) und -Entwicklung, Lead-Developer
Mein Schwerpunkt liegt im Design und der Entwicklung modernster verteilter Anwendungen mit Java und JavaScript (Stichwort Microservices, Self-Contained-Systems, Cloud). Dabei stellt für mich das Verständnis der fachlichen Domäne eine Grundvoraussetzung dar, um qualitativ hochwertige Software zu entwickeln (Stichwort Domain-Driven-Design).
Die Einarbeitung in neue fachliche (und auch technische) Themen bereitet mir sehr viel Spaß, so dass ich gerne Projekte in mir auch unbekannten Domänen annehme.
Ich programmiere nach den Clean-Code-Prinzipien und gehe nach TDD (Test-Driven-Development) vor. Ferner führe ich gerne Code-Reviews anderer Entwickler sowie Code-Refactorings durch. Durch alle diese Maßnahmen erreiche ich mein Bestreben, stets sauberen, wartbaren und gut getesteten Code zu schreiben. Qualitativ hochwertige Software besticht aber auch durch eine angemessene und aktuelle Dokumentation (Stichwort arc42), welche immer entwicklungsbegleitend stattfinden sollte.
Ich bin ein absoluter Team-Player und gebe mein Wissen gerne im Team weiter. Zudem bin ich immer offen für Neues und nehme konstruktive Kritik gerne an.
Eingesetzte Technologien und Frameworks sind vor allem Java, Spring, JPA/Hibernate, REST, Messaging, JavaScript, TypeScript, Angular, HTML 5, CSS 3, Oracle, Jenkins/Bamboo, SonarQube, Apache Tomcat oder Netty, Apache Maven bzw. Gradle, Docker, Subversion/Git.