Senior Entwickler Java / Architekt / Technischer Projektleiter
Aktualisiert am 16.06.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.07.2024
Verfügbar zu: 100%
davon vor Ort: 5%
Spring Boot
Kubernetes
Java
JMS
Kotlin
Scala
DevOps
Cloud
Apache Tomcat
Scrum
Angular
Vue.js
Deutsch
Englisch

Einsatzorte

Einsatzorte

München (+50km)
Deutschland
möglich

Projekte

Projekte

8 Monate
2023-10 - heute

Technische Modernisierung Download-Portal

Java 17 Spring Boot 3 JPA ...
  • Das Ziel dieses Projektes war die Modernisierung einer älteren Anwendung für den nachvollziehbaren Download von Steuersoftware im internationalen Umfeld
  • Dies ermöglichte die Umsetzung neuer fachlicher Anforderungen, eine erhebliche Verbesserung der Wartbarkeit sowie die Behebung bestehender Sicherheitslücken
  • Im Rahmen der Modernisierung wurde die 15 Jahre alte Anwendung auf Java 17, die neueste Version von Spring Boot und das aktuellste ZK-GUI-Framework migriert
  • Diese technische Aktualisierung erfolgte entsprechend meiner Beratung
  • Die Datenbank der Anwendung wurde gemäß den aktuellen Standards des Kunden von Oracle auf SQL Server migriert, inklusive des Schemas, der Datenbank-Trigger und der Daten
  • Darüber hinaus wurde die Persistenzschicht von EclipseLink auf Hibernate umgestellt
  • Neue Kunden mit neuen Anforderungen wurden erfolgreich in die Anwendung integriert
  • Hierbei war es erforderlich, neue Funktionen zu konzipieren, mit den Kunden und der Projektleitung abzustimmen und diese anschließend zu impilmentieren
  • Die Anwendung wurde in das Monitoring-Tool Checkmk integriert, wobei anwendungsspezifische Metriken implementiert wurden, um eine effektive Überwachung zu gewährleisten
  • Die Funktionalität wurde durch die Implementierung automatisierter GUI-Tests mittels Selenium für ausgewählte Funktionen neu abgesichert
Java 17 Spring Boot 3 JPA Hibernate Eclipse Link SQL Server Oracle ZK Framework REST Jenkins Maven Junit Mockito IntelliJ Idea Clean Code Xray SonarQube Selenium Checkmk Python
Transportwesen und Bahnverkehr
4 Jahre 6 Monate
2019-01 - 2023-06

Neuentwicklung Abrechnungssoftware für Lizenzkosten von Tonträgern

SW-Entwicklung, Architekturberatung und DevOps Java 11 Spring Kubernetes ...
SW-Entwicklung, Architekturberatung und DevOps

Das Ziel dieses Projektes bestand darin, ein neues System zur automatisierten Anmeldung und Abrechnung von Lizenzgebühren für Musikverwertungen auf Tonträgern zu entwickeln. Zusätzlich sollte den Sachbearbeitern über eine Experten-Benutzeroberfläche Unterstützung bei dieser Aufgabe geboten werden. Die Anwendung zeichnet sich durch eine anspruchsvolle Geschäftslogik im Abrechnungsbereich aus und erforderte die Anbindung an diverse externe Systeme wie SAP und hausinterne proprietäre Systeme. Dies spiegelte sich in der Entwicklung von 24 hochkomplexen Microservices wider, die neu implementiert werden mussten.

In meiner Rolle als Senior-Entwickler im Team hatte ich die Verantwortung für Architekturberatung und Konzeptentwicklung. Zudem war ich Ansprechpartner für andere Entwickler im Team und führte Code-Reviews durch. Meine eigenen Entwicklungsbeiträge erstreckten sich unter anderem auf folgende Bereiche:

  • Im Bereich der Produktanmeldung habe ich einen Importer für verschiedene Legacy-Dateiformate entwickelt sowie einen Microservice zur Speicherung und Historisierung von Produktanmeldungen
  • Bei der Produktabrechnung wie für viele andere komplexe Algorithmen habe ich die Strukturierung der Geschäftslogik übernommen.
  • Ich entwickelte verschiedene Adapter für externe Systeme, darunter für titelbasiertes Matching, Werkrechte und Adressvalidierung
  • Ich implementierte asynchrone Kommunikationswege zwischen den Microservices und integrierte externe Systeme über REST, WebService und Tibco

Aufgrund von Ressourcenengpässen und Infrastrukturproblemen habe ich im Verlauf des Projektes auch DevOps-Aufgaben übernommen:

  • Ausbau und Bugfixing der Build- und Deployment-Infrastruktur in einem Kubernetes On-Premise Cluster
  • Bugfixing in den über JobDSL generierten Jenkins-Pipelines
  • Erstellung neuer Build- und Deployment-Container mit Hilfe von Docker und Helm Charts
  • Konfiguration, Performance-Test und -Optimierung des JMS Brokers Artemis auf Kubernetes
  • Umstellung Jira-Anbindung des Test Frameworks auf Open Authorization

Ein bedeutender Beitrag, den ich zum Projekt leistete, war die Einführung hoher Qualitätsstandards für den Code im Team. Dies war von zentraler Bedeutung für die Zuverlässigkeit und Wartbarkeit des entwickelten Systems.

Java 11 Spring Kubernetes JPA Liquibase ActiveMQ REST Angular Elastic Search JMS Google PubSub WebService Kibana Grafana Jenkins Docker Helm Maven JUnit Mockito IntelliJ
Musikrechte
München
3 Monate
2018-10 - 2018-12

Push Notifications Javascript SDK und Backend

Konzeption, Architektur, Implementierung und DevOps in der Cloud Java 8 Spring Boot Google Cloud Platform (GCP) ...
Konzeption, Architektur, Implementierung und DevOps in der Cloud
  • Ziel des Projektes war die Integration von Push Notifications in diverse Web-Shops des Kunden
  • In diesem Projekt habe ich einen Javascript SDK erstellt, der als eigenständiges Modul auf Webseiten importiert werden kann, und die Registrierung für Push Notifications sowie den Empfang von Push Notifications zur Verfügung stellen kann
  • Als Backend habe ich eine Spring Boot-Applikation für die Verwaltung der registrierten Device Tokens sowie den Versand der Push Notifications über eine REST API erstellt
  • Um die Aktualität der registrierten Tokens sicher zu stellen wurden asynchrone Jobs erstellt, um beispielsweise stille Push Notifications zu versenden
  • Der Empfang stiller wie normaler Push Notifications, das Klicken von Push Notifications, sowie der Besuch eines Web-Shops mit aktiver Registrierung wurde jeweils aus dem Javascript SDK ans Backend gemeldet
  • Im Backend konnte somit die Aktualität der Registrierungen bewertet werden sowie Auswertungen für Versand und Empfang von Push Notifications erstellt werden
  • Die Laufzeit der asynchronen Versende-Jobs wurde über Thread Pools optimiert
  • Das Backend habe ich als skalierbarern Micro Service realisiert und in einem Kubernetes Cluster in der Google Cloud (GCP) deployt
  • CloudSQL diente hier als Datenbank
  • Deployment sowie Monitoring der Applikation wurden weitgehend automatisiert
Java 8 Spring Boot Google Cloud Platform (GCP) Kubernetes Docker CloudSQL Firbase Cloud Messaging (FCM) Nginx Javascript Rollup.js Service Worker BrowserStack Jenkins Stackdriver Logging + Monitoring REST Jira Confluence draw.io
Versandhandel
Remote
1 Jahr
2017-10 - 2018-09

Identity und Access Management als Cloud-Produkt: Implementierung, Architektur und Coaching

Architekt, Software-Entwickler Java 8 Angular 5 Spring Boot ...
Architekt, Software-Entwickler

In diesem Projekt durfte ich in der Rolle eines Cloud-Architekten ein junges Team hinsichtlich SW-Entwicklung mit Java 8 und Angular 5, Micro Service-Architekturen,

Cloud und agilen Vorgehensweisen coachen. Neben zahlreichen Code Reviews habe ich einige Micro Services selbst implementiert. 

Ziel des Projektes war die Realisierung eines Produktes für Identity und Access Management in der Cloud auf Basis der Open Source-Lösung WSO2 Identity Server als Kern einer Micro Service Architektur. Der Schwerpunkt meiner eigenen Implementierungsarbeiten lag dabei im Bereich der Persistierung von Audit-Events. Im Detail habe ich die folgenden Aufgaben wahrgenommen:

  • Definition der grundlegenden Micro Service-Architektur hinsichtlich Service-Schnitt, Abhängigkeiten und APIs mit Eureka als Service Registry
  • Entwurf und Implementierung von Micro Services zur Persistierung von Audit Events (z.B. ?ein neues Benutzerkonto wurde erstellt?) in Elasticsearch und mit Grafana als Auswertungstool. Eine Java Lib bzw. ein Log4J Appender sowie ein REST-Service stellen die Schnittstelle zur Entgegennahme von Audit-Events zur Verfügung. Audit-Events werden vor der Persistierung in Elasticsearch in ActiveMQ gepuffert und schließlich über das Open Source-Tool Grafana zur Anzeige gebracht.
  • Entwurf und Implementierung eines eigenen Micro Service zur Validierung der Vollständigkeit und Unveränderlichkeit der persistierten Audit Events. Hierfür wurde eine Lösung für lang laufende Batch-Jobs entworfen, die das Auto-Scaling der Cloud Foundry-Basis nutzt, d.h. lastabhängig die Ausführung automatisch auf mehrere Instanzen verteilt.
  • Entwurf und Review eines Konfigurations-Micro Services auf Basis von Spring Cloud Config mit einer relationalen Datenbank als Persistenz.
  • Entwurf und Implementierung eines generischen Micro Services für Benachrichtigungen über unterschiedliche Kommunikationskanäle (Email, SMS, Brief) sowie eines Micro Services für den Versand von Emails im Speziellen mit Apache Velocity als Templating Engine.
  • Entwurf und Implementierung eines Restful API Gateways inklusive Autorisierung an einem über XACML konfigurierten Policy Decision Point.
  • Review, Test und Build-Automatisierung von WSO2 IS mit Hilfe von Docker.
  • Code Reviews sowie Realisierung u.a. eines HTTP Interceptors im User Interface mit Angular 5.
  • Anforderungsdefinition gegenüber dem Plattform-Team (Cloud Foundry) sowie Begleitung von Lasttests.
  • Kosten-Evaluierung und Konfiguration von Amazon AWS-Services: Amazon RDS (relationale Datenbank), AmazonMQ (auf ActiveMQ basierender Message Broker) und Elasticsearch.
  • Installation und Wartung von Tools der Projektinfrastruktur:
    • Redmine als agiles Projektmanagement-Tool, Task und Bug Tracker, Review Tool und Wiki
    • Jenkins als Build-Server und SonarQube zur statischen Code-Analyse
    • ?automatische Backups über BorgBackup

Java 8 Angular 5 Spring Boot Cloud Foundry Amazon AWS Docker Eureka Spring Cloud Config Elasticsearch Grafana MySQL RabbitMQ JMS / ActiveMQ REST Swagger Apache Velocity Jenkins Redmine Apache Velocity WSO2 IS
IT Dienstleister
München
2 Monate
2017-08 - 2017-09

Full-Stack Softwareentwicklung eines Kundenportals

Angular 2 Java 8 Spring Boot 1.5 ...
In diesem Projekt habe ich als Architekt und Lead Developer ein neues Kundenportal
auf Basis von Spring Boot und Angular 2 realisiert.
  • Anbindung von SAP IS-U über oData zur Datenanzeige
  • Authentifizierung über open Authentication 2
Angular 2 Java 8 Spring Boot 1.5 Spring Security oAuth 2 Cloud Foundry Plattform REST SAP IS-U oData PostgreSQL Flyway Junit Mockito AssertJ Git JIRA Bamboo IntelliJ
Energiewirtschaft
1 Jahr 3 Monate
2016-07 - 2017-09

Energiewirtschaft ? Fachliche Konzeption und Softwareentwicklung im Backend

Java 8 Spring Boot 1.3 Cloud Foundry Plattform ...

Der Auftrag umfasste alle Aufgaben von der fachlichen Konzeption, also der Zusammenarbeit mit Product Owner, Fachabteilung und Design Agentur, bis hin zur Implementierung und Produktivsetzung des Backends.

  • Design und Implementierung einer REST-Schnittstelle für eine Smartphone-App
  • Konzeption und Implementierung von Fachlogik über die Logik hinaus, die SAP IS-U über Schnittstellen zur Verfügung stellt, beispielsweise für die Ver­brauchs­prognose und die Berechnung von Nachzahlung und Erstattung
  • Anbindung unterschiedlicher Systeme:
    • SAP-Schnittstellen über REST/oData und Web­service
    • bestehendes Internet Self-Service-Portal über REST
    • Archiv-System über eine Dateisystem-Schnittstelle
    • eines Services für den Versand von Android/iOS-Push-Nachichten
  • Entwicklung eines Request-Throttle-Mechanismus als Captcha-Ersatz
  • Performance-Tuning über Caching-Mechanismen und Request-Paralleli­sierung
  • Sicherstellung der Qualität kamen Units-Tests mit Hilfe von JUnit und Mockito, sowie Systemintegrationstests in Form einer programmatischen Geschäftsprozess-Automatisierung
  • Lasttests mit JMeter über mehrere Micro-Services
  • Bereitstellung von Sanity Checks für Centreon
Java 8 Spring Boot 1.3 Cloud Foundry Plattform REST SAP IS-U oData PostgreSQL Flyway Junit Mockito AssertJ Git JIRA Bamboo IntelliJ
Energiewirtschaft
München
8 Monate
2015-11 - 2016-06

Softwareentwicklung im Backend

Java 8 REST Spring 4 ...
  • Der Auftrag bestand in der Unterstützung eines Teams bei der Weiterentwicklung eines Backends zur Bereitstellung und Abrechnung von on-demand Filminhalten im Rahmen unterschiedlicher Projekte.
  • Thematisch war ich unter anderem mit der Verschlüsselung sensitiver Kundendaten, dem Einlösen von Gutscheinkarten, dem Anbinden eines neuen Payment Providers und der Anpassung bestehender Prozesse an neue Geschäftsfelder beschäftigt.
  • Neben der Entwicklung neuer Features und dem Beheben von Bugs waren insbesondere Code-Reviews, Refactorings zur Verbes­serung der Qualität und die Automatisierung von Lasttests gefragt.
Java 8 REST Spring 4 Hibernate 5 Maven Jenkins Mockito MockMVC JMeter IntelliJ IDEA Docker GIT Jenkins Kibana
Medienbranche
1 Jahr 10 Monate
2014-01 - 2015-10

Kreditkartenverwaltung

JBF und XBF (Dienstleister-internes Java Banken Framework) RSA (Rational Software Architect) VRService ...
  • Der Kunde stellt der genossenschaftlichen Finanzgruppe ein web-basiertes Experten-System für die Verwaltung von Kreditkarten zur Verfügung, u.a. für die Anlage von Karten, Sperren, Limit-Änderungen, Wiederprägungen oder Erstellung von Ersatzkarten.
  • Meine Aufgabe bestand in der Entwicklung neuer Features, im Bugfixing und im Refactoring von Teilen der Software zur Erhöhung der Wartbarkeit. Verantwortlich war ich für die Entwicklung und Test der fachlichen Optimierung des Ersatzkarten-Handlings.
  • Ich konnte im Team test-getriebene Entwicklung als Vorgehensweise einführen, sowie ein grundlegend neues Design-Pattern zur Strukturierung von Teilen der Software. Hierbei wurde u.a. ein transparenter Cache für Methoden-Aufrufe auf Request-Ebene implementiert.
  • Zudem war ich mit dem Aufsetzen und der Konfiguration des Build-Servers (Jenkins) sowie der projekt-spezifischen Konfiguration und Installation der statischen Code-Analyse (Sonar) betraut.

Meine Aufgaben: 

  • Entwicklung neuer Features und Bugfixing, Einführung test-  getriebener Entwicklung, Einführung neuer Design-Patterns zur besseren Wartbarkeit
JBF und XBF (Dienstleister-internes Java Banken Framework) RSA (Rational Software Architect) VRService JUnit JMockit DB2 Jenkins SonarQube QF-Test Eclipse
Bankendienstleister
6 Monate
2015-01 - 2015-06

Zeiterfassungssystem (JEE+Scala+Vaadin)

JEE 7 Scala 2.11. Vaadin 7.3 ...
  • Auf einem innovativen Technologie-Stack habe ich ein Zeiterfassungssystem realisiert und als Open Source-Projekt veröffentlicht.
  • Die Kombination aus Java Enterprise, Scala und Vaadin hat sich dabei als praxis-tauglich erwiesen und ermöglicht zudem eine hohe Produktivität bei der Anwendungserstellung. 
JEE 7 Scala 2.11. Vaadin 7.3 jQuery Mobile GWT Rest (Jersey) Glassfish 4 Arquillian (Integrationstests) JUnit 4 Maven 3 GIT
1 Jahr 11 Monate
2013-02 - 2014-12

RBL

Team-Leitung und Prozessverbesseung C++
Team-Leitung und Prozessverbesseung
  • Aufgabe der rechnergestützten Betriebsleitstelle (RBL) ist die Darstellung der aktuel­len Betriebslage für den Disponenten, die Kommunikation des Disponenten mit den Fahrern, die automatische und manuelle Anschlusssicherung, die Prognose von Ankunfts- und Abfahrtszeiten sowie die Bereitstellung von Daten für die dynamische Fahrgastinformation (Anzeiger an der Haltestelle).
  • Meine Aufgabe in diesem Projekt bestand in der Führung der Entwickler sowie der Einfüh­rung eines neuen Entwicklungs-, Integrationstest- und Lieferprozesses zur Qualitäts­verbesserung der existierenden C++-basierten Software.

C++
ATRON electronic GmbH
9 Monate
2014-01 - 2014-09

Anschlussinfos auf Innenanzeigern

ASEP Plattform Java JEE ...
  • Die Aufgabe der Innenanzeiger im Bus ist die Information der Fahrgäste über mögli­che Anschlüsse die entsprechend der aktuellen Betriebslage erreichbar sind.
  • Hierzu übermittelt das Backend alle notwendigen Informationen für die Anzeige an den Fahr­zeugrechner.
  • Meine Aufgabe bestand aus dem fachlichen Gesamt-Konzept, sowie der Konzeption und Architektur einer Anwendung für die fahrplan-basierte Daten-Pflege der darzu­stellenden Anschlussinformationen. Dies beinhaltet die detaillierte fachliche Modellie­rung von Fahrplänen sowie die Konzeption von Import und Export zu den Altsyste­men. Insbesondere die Konzeption eines Fahrplan-Modells gestaltete sich hierbei als spannende Herausforderung.

Meine Aufgaben: 

  • Gesamt-Konzept, Architektur, Design, Entwicklung
ASEP Plattform Java JEE Glassfish Datenmodellierung EJB Spring JPA Hibernate JDBC
ATRON electronic GmbH
2 Jahre 3 Monate
2012-05 - 2014-07

Betriebsdaten-Exporter

Technische Projektleitung, Architektur, Design, Entwicklung ASEP Plattform Java Webservice ...
Technische Projektleitung, Architektur, Design, Entwicklung
  • Der Betriebsdaten-Exporter nimmt die von den Fahrzeugrechnern gelieferten Betriebsdaten entgegen, bereitet diese auf und übermittelt sie zuverlässig über eine Webservice-Schnittstelle an ein Data Warehouse.
  • Übermittelt werden u.a. Kilo­meter-Stände mit Bezug zu den im Fahrplan definierten Fahrtabschnitten, Pünkt­lich­keits­daten und vom Fahrer durchgeführte und dokumentierte Sicherheitschecks am Fahr­zeug.
  • Die anfallende Datenmenge wird effizient über Webservice übermittelt. Zudem steht eine Benutzer-Oberfläche für Administration und Monitoring zur Verfü­gung.
  • Der Betriebsdaten-Exporter wurde beim Kunden in der Schweiz für die gelieferte Software-Qualität gelobt, ohne verbleibende Mängel abgenommen und ist produktiv im Einsatz. Neben Architektur und Design habe ich in diesem Projekt die Implementierung in Teilen selbst über­nommen.
ASEP Plattform Java Webservice Batch-Jobs (EJB Timer) JEE Glassfish EJB Spring JPA Hibernate JMS
ATRON electronic GmbH
2 Jahre 4 Monate
2012-04 - 2014-07

Bedarfsverkehr

Grob-Konzept und Architektur ASEP Plattform Java JEE ...
Grob-Konzept und Architektur
  • Die Software Bedarfsverkehr realisiert alle Geschäftsprozesse eines Call Centers über die Annahme von Fahrtaufträgen, die Disposition von Fahrterbringern bis hin zur Abrechnung erbrachter Fahrleistungen.
  • Meine Aufgabe bestand in diesem Projekt neben der Übernahme der Verantwortung für die Implementierung in Grob-Konzeption und Architektur.
ASEP Plattform Java JEE Glassfish EJB Spring JPA Hibernate EJB Timer Swing
ATRON electronic GmbH
1 Jahr 3 Monate
2013-01 - 2014-03

ACM

Architektur, Technische Projektleitung ASEP-Plattform Java JEE ...
Architektur, Technische Projektleitung
  • Der ACM (Atron Component Management) übernimmt die Parametrierung der Endgeräte im Feld, das Monitoring der Endgeräte und die Bereitstellung der Daten für die Endgeräte (Fahrzeugrechner und Fahrscheinautomaten).
  • Das Projekt ACM war ein Migrationsprojekt auf ASEP als neue Plattform und verwendet abwärts­kompatibel die existierenden Schnittstellen zu den Endgeräten.
  • Meine Aufgabe in diesem Projekt bestand neben der Erstellung der Architektur und dem Coaching der Entwickler in Tschechien in der technischen Projektleitung.
ASEP-Plattform Java JEE Glassfish EJB Spring JPA Hibernate Maven Liquibase Swing Webservice JMS Eclipse
ATRON electronic GmbH
7 Monate
2013-07 - 2014-01

Papierverfolgung

ASEP Plattform Java Swing ...
  • Die Papierverfolgung kann Lücken in der Abrechnung von werthaltigem Ticketing-Papier aufdecken, falls die einzelnen Abschnitte einer an den Bus-Fahrer ausgegebenen Papierrolle von den Fahrzeugrechnern nicht vollständig ins Backend gemeldet werden.
  • Die Software unterstützt die Aufdeckung von Verdachtsfällen (Betrug) sowie die Verfolgung selbiger durch die übersichtliche und detaillierte Dar­stellung an der Benutzer-Oberfläche.
  • In diesem Projekt habe ich neben der technischen Projektleitung und Architektur das fachliche Produkt-Konzept für das Backend erstellt.

Meine Aufgaben:

  • Produktkonzept, Technische Projektleitung, Architektur
ASEP Plattform Java Swing JForm-Designer XML JEE Glassfish EJB Spring JPA Hibernate
ATRON electronic GmbH
3 Jahre 8 Monate
2010-06 - 2014-01

eTicketing

Architektur, Schnittstellen-Design ASEP Plattform REST JSON
Architektur, Schnittstellen-Design
  • Electronic Ticketing nach VDV-KA ermöglicht den Fahrgästen die Nutzung von Chip­karten als Fahrscheine mit dem Fokus auf Interoperabilität unterschiedlicher Dienst­leister, Kunden-Vertragspartner und Produktverantwortlicher im ÖPNV.
  • Meine Aufgabe in diesem Projekt bestand neben der Übernahme der Verantwortung für die Umsetzung in der Festlegung der Rahmen-Architektur und der Konzeption der Schnittstellen zum C++-basierten Alt-System.
ASEP Plattform REST JSON
ATRON electronic GmbH
1 Jahr
2013-01 - 2013-12

Datendrehscheibe

ASEP Plattform Java HTTP (Server und Client) ...
  • Die Datendrehscheibe realisiert den Austausch von Echtzeitdaten nach VDV 453/454.
  • Dabei werden Daten zur aktuellen Verkehrslage zwischen unterschiedlichen Betriebsleitstellen (RBL)  mit dem Ziel der dynamischen Fahrgastinformation bzw. Anschlusssicherung ausgetauscht.
  • Die Datendrehscheibe fungiert als zentraler Ver­mittler und tauscht mit den angeschlossenen Partner-Syste­men XML-Telegramme über HTTP aus.
  • Das Verhalten unter Last (bis zu 10 XML-Telegramme in der Sekunde) und die Stabi­lität der realisierten Lösung wurden vom Kunden in der Schweiz explizit gelobt.
  • Das Produkt ist seit Oktober 2013 produktiv im Einsatz.
  • Die Implementierung in Java sowie die Per­formance-Optimierung habe ich in diesem Projekt selbst übernommen.
  • Eine Herausforderung in dieser auf optimistischem Sperren basierenden JEE-Standard-Architektur bestand in der Serialisierung der HTTP Requests, da die angebundenen Partner-Systeme mehrere Requests quasi gleichzeitig senden.

Meine Aufgaben:

  • Technische Projektleitung, Architektur, Design, Entwicklung
ASEP Plattform Java HTTP (Server und Client) XML JEE Glassfish EJB Spring JPA Hibernate JMS ActiveMQ
1 Monat
2013-11 - 2013-11

AIM (Monitoring)

Shinken (vormals Nagios) Java Tomcat ...
  • Der AIM ist eine auf dem Monitoring-Framework Shinken (Nachfolger von Nagios, aufbauende Lösung, für das Monitoring von Backend-Komponenten.
  • Shinken selbst ist eine sehr mächtiges Werkzeug mit umfangreichen Monitoring-Möglichkeiten.
  • Meine Aufgabe bestand in der Implementierung einer Web-basierten Oberfläche für den Kunden, die bestimmte Monitoring-Aspekte (Verfügbarkeits-Statistiken) nicht darstellt.
  • Die Schnittstelle zum Shinken-Backend bestand hierbei etwas gewöhnungs­be­dürftig aus einer Socket-Verbindung mit einer proprietären Abfrage­sprache und Semi­kolon-­separierten Zeichenketten als Antwort.

Meine Aufgabe:   

  • Gesamt-Konzeption und Implementierung
Shinken (vormals Nagios) Java Tomcat JSP HTML CSS
ATRON electronic GmbH
2 Monate
2013-08 - 2013-09

AAM (Abfahrtsmonitor)

Java Tomcat JSF ...
  • Der AAM (Atron Abfahrts-Monitor) ist eine preiswerte Lösung für die dynamische Fahrgastinformation, also für die Anzeige von Abfahr­ten an einer Haltestelle.
  • Anstatt einer Investition in Spezial-Hardware kommt als Computer ein Raspberry PI zu Ein­satz, der zusammen mit einem Monitor über HDMI beispielsweise in einem Einkaufs­zentrum betrieben werden kann.
  • Das Backend spielt die Daten über HTTP im JSON-Format aus.
  • Daten werden dabei allein an freigeschaltete Clients geliefert.
  • Eine Monitoring-Benutzeroberfläche erlaubt die Identifizierung von anderen, nicht-autorisierten Clients.
  • In diesem Projekt habe ich die Gesamt-Konzeption, die Architektur und die Imple­men­tierung übernommen.
  • Der als „Bastel-Hardware“ verschrieene Raspberry PI funk­tio­niert hier durchaus zuverlässig.

Meine Aufgaben:

  • Gesamt-Konzeption und Implementierung
Java Tomcat JSF JSP JMX HTML CSS Ajax jQuery Linux Raspberry PI
ATRON electronic GmbH
1 Jahr 10 Monate
2010-08 - 2012-05

Software Engineering Plattform ASEP

Technische Projektleitung, Architektur, Design, Entwicklung Java JEE Glassfish ...
Technische Projektleitung, Architektur, Design, Entwicklung
  • Die Software Engineering Plattform erlaubt die effiziente und modulare Entwicklung von Java Enterprise-Anwendungen.
  • Die Aufgabe bestand hier vor allem in der Ret­tung des bereits laufenden Projektes, das heißt im pragmatischen „Nutzbar­machen“ bereits vorhan­dener (zu theo­retischer) Konzepte und Implementierungen eines exter­nen Dienstleisters.
  • Trotz der anfänglichen Herausforderungen wurde letztlich eine Entwicklungs-Plattform in einem Umfang realisiert, die nicht viele Unternehmen ihr Eigen nennen können.
  • Die umgebaute Plattform hat eine hohe Akzeptanz im gesamten Entwickler-Team.
  • Die Praktikabilität und Effizienz bei der Anwendungs­erstel­lung wurde eben­falls bereits unter Beweis gestellt, siehe weitere Projektbeschreibungen.
  • Verschiedene auf der Plattform realisierte Anwendungen sind zudem produktiv im Einsatz.
  • Die Plattform generiert auf Basis einer sehr ausdrucksstarken Domänen-Sprache Standarddialoge in Form von Tabellen und Formularen, eine Datenzugriffsschicht (CRUD) sowie ein Datenbankschema.
  • In der generierten 3-Schichten Standard­architektur kann Geschäfts­logik ausprogrammiert und die Benutzer­oberfläche weiter gestaltet werden.
  • Neben den Platt­form-Diensten für modulare Entwicklung, Mandanten­fähigkeit, Lizenz­manage­ment, Rollen- und Rechte­Verwaltung und einem einfachen Installer für den Kunden bietet die Plattform eine umfangreiche Anwendungs-Bibliothek.
Java JEE Glassfish EJB Spring JPA Hibernate Maven Liquibase Swing Webservice Spring Remoting JMS ActiveMQ Xtext DSL Eclipse
ATRON electronic GmbH
5 Monate
2010-06 - 2010-10

eTicketing

ASEP Plattform REST JSON

Electronic Ticketing nach VDV-KA ermöglicht den Fahrgästen die Nutzung von Chip­karten als Fahrscheine mit dem Fokus auf Interoperabilität unterschiedlicher Dienst­leister, Kunden-Vertragspartner und Produktverantwortlicher im ÖPNV.

Meine Aufgabe in diesem Projekt bestand neben der Übernahme der Verantwortung für die Umsetzung in der Festlegung der Rahmen-Architektur und der Konzeption der Schnittstellen zum C++-basierten Alt-System.

Meine Aufgaben:

Architektur, Schnittstellen-Design

Branche:            

ÖPNV (Verkehrswesen)

ASEP Plattform REST JSON
ATRON electronic GmbH
9 Monate
2009-09 - 2010-05

GMX: Portal-Entwicklung

Entwickler, Coremedia Coach Coremedia CAE 2008 JSP Tomcat ...
Entwickler, Coremedia Coach
  • Das Celebrity-Portal top.de umfasst typische Elemente sozialer Netzwerke wie Bewertungen, Abstimmungen und  Diskussions-Threads.
  • Das Portal wurde auf Basis des Content Management Systems Coremedia 2008 im Projekt-Team bei GMX vor Ort umgesetzt.
  • Ich war in diesem Projekt Teil des Entwickler-Teams.
Coremedia CAE 2008 JSP Tomcat SCRUM

Aus- und Weiterbildung

Aus- und Weiterbildung

Abschluss Diplom-Informatiker (TU München)

Promotion in Informatik

Zertifikate:

  • Etengo Gold Partner 2023
  • SUN Certified Enterprise Architect

Position

Position

?pragmatisch, flexibel, engagiert, teamorientiert?


Mit langjähriger Expertise im Bereich der IT ? sowohl als Leiter eines Softwareentwicklungsteams in einem renommierten mittelständischen Unternehmen als auch durch zahlreiche Beratungsprojekte ? biete ich meine umfassende Hilfe entlang des gesamten Softwareentwicklungszyklus an:

  • Software-Entwicklung im Java-Umfeld
  • Konzeption und Umsetzung von Software-Architekturen
  • Technische Projektleitung
  • Coaching von Entwicklerteams
  • Expertise in Microservices, Cloud-Technologien und DevOps

Die Vorteile für Sie sind:

  • Effiziente und zielgerichtete Softwareentwicklung im Team
  • Lösungen von herausragender Qualität und Zuverlässigkeit
  • Durchdachte und skalierbare Architektur
  • Klar strukturierte und wartbare Software

Neben meinem fundierten theoretischen Hintergrund zeichne ich mich insbesondere durch Pragmatismus aus. Meine analytischen Fähigkeiten und Kommunikationsstärke bringe ich gerne in dynamische Teams ein. Meine ideale Projektumgebung zeichnet sich durch anspruchsvolle Herausforderungen aus, die mich zu Höchstleistungen motivieren.

Kompetenzen

Kompetenzen

Top-Skills

Spring Boot Kubernetes Java JMS Kotlin Scala DevOps Cloud Apache Tomcat Scrum Angular Vue.js

Schwerpunkte

  • Software-Entwicklung/Coaching im Java/JEE-Umfeld (Backend wie Frontend)
  • Erstellung und Umsetzung von Software-Architekturen,
  • Migration in die Jahre gekommener Software,
  • Konzeption neuer Produkte,
  • Technische Projektleitung,
  • Koordination verteilter/internationaler Teams
  • Build Management / Continuous Integration

Produkte / Standards / Erfahrungen / Methoden

Amazon AWS
Angular 5
ASEP Plattform
AssertJ
Bamboo
Cloud Foundry
Cloud Foundry Plattform
Docker
Eureka
Flyway
Git
Grafana
IntelliJ
Jenkins
JIRA
JMS / ActiveMQ
Junit
Kubernetes
Mockito
oData
Redmine
REST
SAP IS-U
Spring Boot
Spring Boot 1.3
Spring Cloud Config
Swagger

Methodik

agile Methoden / SCRUM, Continuous Integration, MDA / Model driven Architecture, DSL / Domänenspezifische Sprachen, Test Driven Development (TDD), UML

Tools

IntelliJ IDEA, Eclipse IDE, JIRA, Confluence, Bitbucket, Kibana, SQLDeveloper, Enterprise Architect, 

Versionsverwaltung

  • GIT, Subversion, CVS, Clearcase

Build

Maven, ANT, Jenkins, Sonar

Testing

JUnit, EasyMock, Mockito, PowerMock, JMockit, JMeter, JProfiler, QF-Test

Monitoring

JMX, Shinken, Nagios

Frameworks

EJB 3.1, Spring 4, XText/XTend 1.0, Hibernate Validator 4.2, JasperReport 4.5, Apache Hadoop 2.2

Container

Glassfish 4, JBoss Wildfly, Apache Tomcat 8, ActiveMQ 5.2

GUI

Web

  • Servlet, JSP, JSF, Struts, GWT, Vaadin 7, HTML, CSS, Javascript, JQuery, ...

Swing, JavaFX

Betriebssysteme

Linux (CentOS, Fedora, ...)
Windows (3.11 bis 10)

Programmiersprachen

Java 8
JEE 7
JSON
Kotlin
Scala 2.11
XML
XSD
XSLT

Datenbanken

Amazon RDS
Elasticsearch
Hibernate
JDBC
JPA 2.0
MongoDB
MySQL
MySQL / MariaDB
Oracle 11
PostgreSQL
PostgreSQL
Redis
SQL

Datenkommunikation

HTTP
JMS
oAuth 2
oData
RabbitMQ
REST
Webservices

Branchen

Branchen

  • Musikrechte
  • Medien
  • Banken
  • Verkehrswesen (ÖPNV)
  • Telekommunikation

Ich bin natürlich nicht auf diese Branchen-Liste festgelegt.

Einsatzorte

Einsatzorte

München (+50km)
Deutschland
möglich

Projekte

Projekte

8 Monate
2023-10 - heute

Technische Modernisierung Download-Portal

Java 17 Spring Boot 3 JPA ...
  • Das Ziel dieses Projektes war die Modernisierung einer älteren Anwendung für den nachvollziehbaren Download von Steuersoftware im internationalen Umfeld
  • Dies ermöglichte die Umsetzung neuer fachlicher Anforderungen, eine erhebliche Verbesserung der Wartbarkeit sowie die Behebung bestehender Sicherheitslücken
  • Im Rahmen der Modernisierung wurde die 15 Jahre alte Anwendung auf Java 17, die neueste Version von Spring Boot und das aktuellste ZK-GUI-Framework migriert
  • Diese technische Aktualisierung erfolgte entsprechend meiner Beratung
  • Die Datenbank der Anwendung wurde gemäß den aktuellen Standards des Kunden von Oracle auf SQL Server migriert, inklusive des Schemas, der Datenbank-Trigger und der Daten
  • Darüber hinaus wurde die Persistenzschicht von EclipseLink auf Hibernate umgestellt
  • Neue Kunden mit neuen Anforderungen wurden erfolgreich in die Anwendung integriert
  • Hierbei war es erforderlich, neue Funktionen zu konzipieren, mit den Kunden und der Projektleitung abzustimmen und diese anschließend zu impilmentieren
  • Die Anwendung wurde in das Monitoring-Tool Checkmk integriert, wobei anwendungsspezifische Metriken implementiert wurden, um eine effektive Überwachung zu gewährleisten
  • Die Funktionalität wurde durch die Implementierung automatisierter GUI-Tests mittels Selenium für ausgewählte Funktionen neu abgesichert
Java 17 Spring Boot 3 JPA Hibernate Eclipse Link SQL Server Oracle ZK Framework REST Jenkins Maven Junit Mockito IntelliJ Idea Clean Code Xray SonarQube Selenium Checkmk Python
Transportwesen und Bahnverkehr
4 Jahre 6 Monate
2019-01 - 2023-06

Neuentwicklung Abrechnungssoftware für Lizenzkosten von Tonträgern

SW-Entwicklung, Architekturberatung und DevOps Java 11 Spring Kubernetes ...
SW-Entwicklung, Architekturberatung und DevOps

Das Ziel dieses Projektes bestand darin, ein neues System zur automatisierten Anmeldung und Abrechnung von Lizenzgebühren für Musikverwertungen auf Tonträgern zu entwickeln. Zusätzlich sollte den Sachbearbeitern über eine Experten-Benutzeroberfläche Unterstützung bei dieser Aufgabe geboten werden. Die Anwendung zeichnet sich durch eine anspruchsvolle Geschäftslogik im Abrechnungsbereich aus und erforderte die Anbindung an diverse externe Systeme wie SAP und hausinterne proprietäre Systeme. Dies spiegelte sich in der Entwicklung von 24 hochkomplexen Microservices wider, die neu implementiert werden mussten.

In meiner Rolle als Senior-Entwickler im Team hatte ich die Verantwortung für Architekturberatung und Konzeptentwicklung. Zudem war ich Ansprechpartner für andere Entwickler im Team und führte Code-Reviews durch. Meine eigenen Entwicklungsbeiträge erstreckten sich unter anderem auf folgende Bereiche:

  • Im Bereich der Produktanmeldung habe ich einen Importer für verschiedene Legacy-Dateiformate entwickelt sowie einen Microservice zur Speicherung und Historisierung von Produktanmeldungen
  • Bei der Produktabrechnung wie für viele andere komplexe Algorithmen habe ich die Strukturierung der Geschäftslogik übernommen.
  • Ich entwickelte verschiedene Adapter für externe Systeme, darunter für titelbasiertes Matching, Werkrechte und Adressvalidierung
  • Ich implementierte asynchrone Kommunikationswege zwischen den Microservices und integrierte externe Systeme über REST, WebService und Tibco

Aufgrund von Ressourcenengpässen und Infrastrukturproblemen habe ich im Verlauf des Projektes auch DevOps-Aufgaben übernommen:

  • Ausbau und Bugfixing der Build- und Deployment-Infrastruktur in einem Kubernetes On-Premise Cluster
  • Bugfixing in den über JobDSL generierten Jenkins-Pipelines
  • Erstellung neuer Build- und Deployment-Container mit Hilfe von Docker und Helm Charts
  • Konfiguration, Performance-Test und -Optimierung des JMS Brokers Artemis auf Kubernetes
  • Umstellung Jira-Anbindung des Test Frameworks auf Open Authorization

Ein bedeutender Beitrag, den ich zum Projekt leistete, war die Einführung hoher Qualitätsstandards für den Code im Team. Dies war von zentraler Bedeutung für die Zuverlässigkeit und Wartbarkeit des entwickelten Systems.

Java 11 Spring Kubernetes JPA Liquibase ActiveMQ REST Angular Elastic Search JMS Google PubSub WebService Kibana Grafana Jenkins Docker Helm Maven JUnit Mockito IntelliJ
Musikrechte
München
3 Monate
2018-10 - 2018-12

Push Notifications Javascript SDK und Backend

Konzeption, Architektur, Implementierung und DevOps in der Cloud Java 8 Spring Boot Google Cloud Platform (GCP) ...
Konzeption, Architektur, Implementierung und DevOps in der Cloud
  • Ziel des Projektes war die Integration von Push Notifications in diverse Web-Shops des Kunden
  • In diesem Projekt habe ich einen Javascript SDK erstellt, der als eigenständiges Modul auf Webseiten importiert werden kann, und die Registrierung für Push Notifications sowie den Empfang von Push Notifications zur Verfügung stellen kann
  • Als Backend habe ich eine Spring Boot-Applikation für die Verwaltung der registrierten Device Tokens sowie den Versand der Push Notifications über eine REST API erstellt
  • Um die Aktualität der registrierten Tokens sicher zu stellen wurden asynchrone Jobs erstellt, um beispielsweise stille Push Notifications zu versenden
  • Der Empfang stiller wie normaler Push Notifications, das Klicken von Push Notifications, sowie der Besuch eines Web-Shops mit aktiver Registrierung wurde jeweils aus dem Javascript SDK ans Backend gemeldet
  • Im Backend konnte somit die Aktualität der Registrierungen bewertet werden sowie Auswertungen für Versand und Empfang von Push Notifications erstellt werden
  • Die Laufzeit der asynchronen Versende-Jobs wurde über Thread Pools optimiert
  • Das Backend habe ich als skalierbarern Micro Service realisiert und in einem Kubernetes Cluster in der Google Cloud (GCP) deployt
  • CloudSQL diente hier als Datenbank
  • Deployment sowie Monitoring der Applikation wurden weitgehend automatisiert
Java 8 Spring Boot Google Cloud Platform (GCP) Kubernetes Docker CloudSQL Firbase Cloud Messaging (FCM) Nginx Javascript Rollup.js Service Worker BrowserStack Jenkins Stackdriver Logging + Monitoring REST Jira Confluence draw.io
Versandhandel
Remote
1 Jahr
2017-10 - 2018-09

Identity und Access Management als Cloud-Produkt: Implementierung, Architektur und Coaching

Architekt, Software-Entwickler Java 8 Angular 5 Spring Boot ...
Architekt, Software-Entwickler

In diesem Projekt durfte ich in der Rolle eines Cloud-Architekten ein junges Team hinsichtlich SW-Entwicklung mit Java 8 und Angular 5, Micro Service-Architekturen,

Cloud und agilen Vorgehensweisen coachen. Neben zahlreichen Code Reviews habe ich einige Micro Services selbst implementiert. 

Ziel des Projektes war die Realisierung eines Produktes für Identity und Access Management in der Cloud auf Basis der Open Source-Lösung WSO2 Identity Server als Kern einer Micro Service Architektur. Der Schwerpunkt meiner eigenen Implementierungsarbeiten lag dabei im Bereich der Persistierung von Audit-Events. Im Detail habe ich die folgenden Aufgaben wahrgenommen:

  • Definition der grundlegenden Micro Service-Architektur hinsichtlich Service-Schnitt, Abhängigkeiten und APIs mit Eureka als Service Registry
  • Entwurf und Implementierung von Micro Services zur Persistierung von Audit Events (z.B. ?ein neues Benutzerkonto wurde erstellt?) in Elasticsearch und mit Grafana als Auswertungstool. Eine Java Lib bzw. ein Log4J Appender sowie ein REST-Service stellen die Schnittstelle zur Entgegennahme von Audit-Events zur Verfügung. Audit-Events werden vor der Persistierung in Elasticsearch in ActiveMQ gepuffert und schließlich über das Open Source-Tool Grafana zur Anzeige gebracht.
  • Entwurf und Implementierung eines eigenen Micro Service zur Validierung der Vollständigkeit und Unveränderlichkeit der persistierten Audit Events. Hierfür wurde eine Lösung für lang laufende Batch-Jobs entworfen, die das Auto-Scaling der Cloud Foundry-Basis nutzt, d.h. lastabhängig die Ausführung automatisch auf mehrere Instanzen verteilt.
  • Entwurf und Review eines Konfigurations-Micro Services auf Basis von Spring Cloud Config mit einer relationalen Datenbank als Persistenz.
  • Entwurf und Implementierung eines generischen Micro Services für Benachrichtigungen über unterschiedliche Kommunikationskanäle (Email, SMS, Brief) sowie eines Micro Services für den Versand von Emails im Speziellen mit Apache Velocity als Templating Engine.
  • Entwurf und Implementierung eines Restful API Gateways inklusive Autorisierung an einem über XACML konfigurierten Policy Decision Point.
  • Review, Test und Build-Automatisierung von WSO2 IS mit Hilfe von Docker.
  • Code Reviews sowie Realisierung u.a. eines HTTP Interceptors im User Interface mit Angular 5.
  • Anforderungsdefinition gegenüber dem Plattform-Team (Cloud Foundry) sowie Begleitung von Lasttests.
  • Kosten-Evaluierung und Konfiguration von Amazon AWS-Services: Amazon RDS (relationale Datenbank), AmazonMQ (auf ActiveMQ basierender Message Broker) und Elasticsearch.
  • Installation und Wartung von Tools der Projektinfrastruktur:
    • Redmine als agiles Projektmanagement-Tool, Task und Bug Tracker, Review Tool und Wiki
    • Jenkins als Build-Server und SonarQube zur statischen Code-Analyse
    • ?automatische Backups über BorgBackup

Java 8 Angular 5 Spring Boot Cloud Foundry Amazon AWS Docker Eureka Spring Cloud Config Elasticsearch Grafana MySQL RabbitMQ JMS / ActiveMQ REST Swagger Apache Velocity Jenkins Redmine Apache Velocity WSO2 IS
IT Dienstleister
München
2 Monate
2017-08 - 2017-09

Full-Stack Softwareentwicklung eines Kundenportals

Angular 2 Java 8 Spring Boot 1.5 ...
In diesem Projekt habe ich als Architekt und Lead Developer ein neues Kundenportal
auf Basis von Spring Boot und Angular 2 realisiert.
  • Anbindung von SAP IS-U über oData zur Datenanzeige
  • Authentifizierung über open Authentication 2
Angular 2 Java 8 Spring Boot 1.5 Spring Security oAuth 2 Cloud Foundry Plattform REST SAP IS-U oData PostgreSQL Flyway Junit Mockito AssertJ Git JIRA Bamboo IntelliJ
Energiewirtschaft
1 Jahr 3 Monate
2016-07 - 2017-09

Energiewirtschaft ? Fachliche Konzeption und Softwareentwicklung im Backend

Java 8 Spring Boot 1.3 Cloud Foundry Plattform ...

Der Auftrag umfasste alle Aufgaben von der fachlichen Konzeption, also der Zusammenarbeit mit Product Owner, Fachabteilung und Design Agentur, bis hin zur Implementierung und Produktivsetzung des Backends.

  • Design und Implementierung einer REST-Schnittstelle für eine Smartphone-App
  • Konzeption und Implementierung von Fachlogik über die Logik hinaus, die SAP IS-U über Schnittstellen zur Verfügung stellt, beispielsweise für die Ver­brauchs­prognose und die Berechnung von Nachzahlung und Erstattung
  • Anbindung unterschiedlicher Systeme:
    • SAP-Schnittstellen über REST/oData und Web­service
    • bestehendes Internet Self-Service-Portal über REST
    • Archiv-System über eine Dateisystem-Schnittstelle
    • eines Services für den Versand von Android/iOS-Push-Nachichten
  • Entwicklung eines Request-Throttle-Mechanismus als Captcha-Ersatz
  • Performance-Tuning über Caching-Mechanismen und Request-Paralleli­sierung
  • Sicherstellung der Qualität kamen Units-Tests mit Hilfe von JUnit und Mockito, sowie Systemintegrationstests in Form einer programmatischen Geschäftsprozess-Automatisierung
  • Lasttests mit JMeter über mehrere Micro-Services
  • Bereitstellung von Sanity Checks für Centreon
Java 8 Spring Boot 1.3 Cloud Foundry Plattform REST SAP IS-U oData PostgreSQL Flyway Junit Mockito AssertJ Git JIRA Bamboo IntelliJ
Energiewirtschaft
München
8 Monate
2015-11 - 2016-06

Softwareentwicklung im Backend

Java 8 REST Spring 4 ...
  • Der Auftrag bestand in der Unterstützung eines Teams bei der Weiterentwicklung eines Backends zur Bereitstellung und Abrechnung von on-demand Filminhalten im Rahmen unterschiedlicher Projekte.
  • Thematisch war ich unter anderem mit der Verschlüsselung sensitiver Kundendaten, dem Einlösen von Gutscheinkarten, dem Anbinden eines neuen Payment Providers und der Anpassung bestehender Prozesse an neue Geschäftsfelder beschäftigt.
  • Neben der Entwicklung neuer Features und dem Beheben von Bugs waren insbesondere Code-Reviews, Refactorings zur Verbes­serung der Qualität und die Automatisierung von Lasttests gefragt.
Java 8 REST Spring 4 Hibernate 5 Maven Jenkins Mockito MockMVC JMeter IntelliJ IDEA Docker GIT Jenkins Kibana
Medienbranche
1 Jahr 10 Monate
2014-01 - 2015-10

Kreditkartenverwaltung

JBF und XBF (Dienstleister-internes Java Banken Framework) RSA (Rational Software Architect) VRService ...
  • Der Kunde stellt der genossenschaftlichen Finanzgruppe ein web-basiertes Experten-System für die Verwaltung von Kreditkarten zur Verfügung, u.a. für die Anlage von Karten, Sperren, Limit-Änderungen, Wiederprägungen oder Erstellung von Ersatzkarten.
  • Meine Aufgabe bestand in der Entwicklung neuer Features, im Bugfixing und im Refactoring von Teilen der Software zur Erhöhung der Wartbarkeit. Verantwortlich war ich für die Entwicklung und Test der fachlichen Optimierung des Ersatzkarten-Handlings.
  • Ich konnte im Team test-getriebene Entwicklung als Vorgehensweise einführen, sowie ein grundlegend neues Design-Pattern zur Strukturierung von Teilen der Software. Hierbei wurde u.a. ein transparenter Cache für Methoden-Aufrufe auf Request-Ebene implementiert.
  • Zudem war ich mit dem Aufsetzen und der Konfiguration des Build-Servers (Jenkins) sowie der projekt-spezifischen Konfiguration und Installation der statischen Code-Analyse (Sonar) betraut.

Meine Aufgaben: 

  • Entwicklung neuer Features und Bugfixing, Einführung test-  getriebener Entwicklung, Einführung neuer Design-Patterns zur besseren Wartbarkeit
JBF und XBF (Dienstleister-internes Java Banken Framework) RSA (Rational Software Architect) VRService JUnit JMockit DB2 Jenkins SonarQube QF-Test Eclipse
Bankendienstleister
6 Monate
2015-01 - 2015-06

Zeiterfassungssystem (JEE+Scala+Vaadin)

JEE 7 Scala 2.11. Vaadin 7.3 ...
  • Auf einem innovativen Technologie-Stack habe ich ein Zeiterfassungssystem realisiert und als Open Source-Projekt veröffentlicht.
  • Die Kombination aus Java Enterprise, Scala und Vaadin hat sich dabei als praxis-tauglich erwiesen und ermöglicht zudem eine hohe Produktivität bei der Anwendungserstellung. 
JEE 7 Scala 2.11. Vaadin 7.3 jQuery Mobile GWT Rest (Jersey) Glassfish 4 Arquillian (Integrationstests) JUnit 4 Maven 3 GIT
1 Jahr 11 Monate
2013-02 - 2014-12

RBL

Team-Leitung und Prozessverbesseung C++
Team-Leitung und Prozessverbesseung
  • Aufgabe der rechnergestützten Betriebsleitstelle (RBL) ist die Darstellung der aktuel­len Betriebslage für den Disponenten, die Kommunikation des Disponenten mit den Fahrern, die automatische und manuelle Anschlusssicherung, die Prognose von Ankunfts- und Abfahrtszeiten sowie die Bereitstellung von Daten für die dynamische Fahrgastinformation (Anzeiger an der Haltestelle).
  • Meine Aufgabe in diesem Projekt bestand in der Führung der Entwickler sowie der Einfüh­rung eines neuen Entwicklungs-, Integrationstest- und Lieferprozesses zur Qualitäts­verbesserung der existierenden C++-basierten Software.

C++
ATRON electronic GmbH
9 Monate
2014-01 - 2014-09

Anschlussinfos auf Innenanzeigern

ASEP Plattform Java JEE ...
  • Die Aufgabe der Innenanzeiger im Bus ist die Information der Fahrgäste über mögli­che Anschlüsse die entsprechend der aktuellen Betriebslage erreichbar sind.
  • Hierzu übermittelt das Backend alle notwendigen Informationen für die Anzeige an den Fahr­zeugrechner.
  • Meine Aufgabe bestand aus dem fachlichen Gesamt-Konzept, sowie der Konzeption und Architektur einer Anwendung für die fahrplan-basierte Daten-Pflege der darzu­stellenden Anschlussinformationen. Dies beinhaltet die detaillierte fachliche Modellie­rung von Fahrplänen sowie die Konzeption von Import und Export zu den Altsyste­men. Insbesondere die Konzeption eines Fahrplan-Modells gestaltete sich hierbei als spannende Herausforderung.

Meine Aufgaben: 

  • Gesamt-Konzept, Architektur, Design, Entwicklung
ASEP Plattform Java JEE Glassfish Datenmodellierung EJB Spring JPA Hibernate JDBC
ATRON electronic GmbH
2 Jahre 3 Monate
2012-05 - 2014-07

Betriebsdaten-Exporter

Technische Projektleitung, Architektur, Design, Entwicklung ASEP Plattform Java Webservice ...
Technische Projektleitung, Architektur, Design, Entwicklung
  • Der Betriebsdaten-Exporter nimmt die von den Fahrzeugrechnern gelieferten Betriebsdaten entgegen, bereitet diese auf und übermittelt sie zuverlässig über eine Webservice-Schnittstelle an ein Data Warehouse.
  • Übermittelt werden u.a. Kilo­meter-Stände mit Bezug zu den im Fahrplan definierten Fahrtabschnitten, Pünkt­lich­keits­daten und vom Fahrer durchgeführte und dokumentierte Sicherheitschecks am Fahr­zeug.
  • Die anfallende Datenmenge wird effizient über Webservice übermittelt. Zudem steht eine Benutzer-Oberfläche für Administration und Monitoring zur Verfü­gung.
  • Der Betriebsdaten-Exporter wurde beim Kunden in der Schweiz für die gelieferte Software-Qualität gelobt, ohne verbleibende Mängel abgenommen und ist produktiv im Einsatz. Neben Architektur und Design habe ich in diesem Projekt die Implementierung in Teilen selbst über­nommen.
ASEP Plattform Java Webservice Batch-Jobs (EJB Timer) JEE Glassfish EJB Spring JPA Hibernate JMS
ATRON electronic GmbH
2 Jahre 4 Monate
2012-04 - 2014-07

Bedarfsverkehr

Grob-Konzept und Architektur ASEP Plattform Java JEE ...
Grob-Konzept und Architektur
  • Die Software Bedarfsverkehr realisiert alle Geschäftsprozesse eines Call Centers über die Annahme von Fahrtaufträgen, die Disposition von Fahrterbringern bis hin zur Abrechnung erbrachter Fahrleistungen.
  • Meine Aufgabe bestand in diesem Projekt neben der Übernahme der Verantwortung für die Implementierung in Grob-Konzeption und Architektur.
ASEP Plattform Java JEE Glassfish EJB Spring JPA Hibernate EJB Timer Swing
ATRON electronic GmbH
1 Jahr 3 Monate
2013-01 - 2014-03

ACM

Architektur, Technische Projektleitung ASEP-Plattform Java JEE ...
Architektur, Technische Projektleitung
  • Der ACM (Atron Component Management) übernimmt die Parametrierung der Endgeräte im Feld, das Monitoring der Endgeräte und die Bereitstellung der Daten für die Endgeräte (Fahrzeugrechner und Fahrscheinautomaten).
  • Das Projekt ACM war ein Migrationsprojekt auf ASEP als neue Plattform und verwendet abwärts­kompatibel die existierenden Schnittstellen zu den Endgeräten.
  • Meine Aufgabe in diesem Projekt bestand neben der Erstellung der Architektur und dem Coaching der Entwickler in Tschechien in der technischen Projektleitung.
ASEP-Plattform Java JEE Glassfish EJB Spring JPA Hibernate Maven Liquibase Swing Webservice JMS Eclipse
ATRON electronic GmbH
7 Monate
2013-07 - 2014-01

Papierverfolgung

ASEP Plattform Java Swing ...
  • Die Papierverfolgung kann Lücken in der Abrechnung von werthaltigem Ticketing-Papier aufdecken, falls die einzelnen Abschnitte einer an den Bus-Fahrer ausgegebenen Papierrolle von den Fahrzeugrechnern nicht vollständig ins Backend gemeldet werden.
  • Die Software unterstützt die Aufdeckung von Verdachtsfällen (Betrug) sowie die Verfolgung selbiger durch die übersichtliche und detaillierte Dar­stellung an der Benutzer-Oberfläche.
  • In diesem Projekt habe ich neben der technischen Projektleitung und Architektur das fachliche Produkt-Konzept für das Backend erstellt.

Meine Aufgaben:

  • Produktkonzept, Technische Projektleitung, Architektur
ASEP Plattform Java Swing JForm-Designer XML JEE Glassfish EJB Spring JPA Hibernate
ATRON electronic GmbH
3 Jahre 8 Monate
2010-06 - 2014-01

eTicketing

Architektur, Schnittstellen-Design ASEP Plattform REST JSON
Architektur, Schnittstellen-Design
  • Electronic Ticketing nach VDV-KA ermöglicht den Fahrgästen die Nutzung von Chip­karten als Fahrscheine mit dem Fokus auf Interoperabilität unterschiedlicher Dienst­leister, Kunden-Vertragspartner und Produktverantwortlicher im ÖPNV.
  • Meine Aufgabe in diesem Projekt bestand neben der Übernahme der Verantwortung für die Umsetzung in der Festlegung der Rahmen-Architektur und der Konzeption der Schnittstellen zum C++-basierten Alt-System.
ASEP Plattform REST JSON
ATRON electronic GmbH
1 Jahr
2013-01 - 2013-12

Datendrehscheibe

ASEP Plattform Java HTTP (Server und Client) ...
  • Die Datendrehscheibe realisiert den Austausch von Echtzeitdaten nach VDV 453/454.
  • Dabei werden Daten zur aktuellen Verkehrslage zwischen unterschiedlichen Betriebsleitstellen (RBL)  mit dem Ziel der dynamischen Fahrgastinformation bzw. Anschlusssicherung ausgetauscht.
  • Die Datendrehscheibe fungiert als zentraler Ver­mittler und tauscht mit den angeschlossenen Partner-Syste­men XML-Telegramme über HTTP aus.
  • Das Verhalten unter Last (bis zu 10 XML-Telegramme in der Sekunde) und die Stabi­lität der realisierten Lösung wurden vom Kunden in der Schweiz explizit gelobt.
  • Das Produkt ist seit Oktober 2013 produktiv im Einsatz.
  • Die Implementierung in Java sowie die Per­formance-Optimierung habe ich in diesem Projekt selbst übernommen.
  • Eine Herausforderung in dieser auf optimistischem Sperren basierenden JEE-Standard-Architektur bestand in der Serialisierung der HTTP Requests, da die angebundenen Partner-Systeme mehrere Requests quasi gleichzeitig senden.

Meine Aufgaben:

  • Technische Projektleitung, Architektur, Design, Entwicklung
ASEP Plattform Java HTTP (Server und Client) XML JEE Glassfish EJB Spring JPA Hibernate JMS ActiveMQ
1 Monat
2013-11 - 2013-11

AIM (Monitoring)

Shinken (vormals Nagios) Java Tomcat ...
  • Der AIM ist eine auf dem Monitoring-Framework Shinken (Nachfolger von Nagios, aufbauende Lösung, für das Monitoring von Backend-Komponenten.
  • Shinken selbst ist eine sehr mächtiges Werkzeug mit umfangreichen Monitoring-Möglichkeiten.
  • Meine Aufgabe bestand in der Implementierung einer Web-basierten Oberfläche für den Kunden, die bestimmte Monitoring-Aspekte (Verfügbarkeits-Statistiken) nicht darstellt.
  • Die Schnittstelle zum Shinken-Backend bestand hierbei etwas gewöhnungs­be­dürftig aus einer Socket-Verbindung mit einer proprietären Abfrage­sprache und Semi­kolon-­separierten Zeichenketten als Antwort.

Meine Aufgabe:   

  • Gesamt-Konzeption und Implementierung
Shinken (vormals Nagios) Java Tomcat JSP HTML CSS
ATRON electronic GmbH
2 Monate
2013-08 - 2013-09

AAM (Abfahrtsmonitor)

Java Tomcat JSF ...
  • Der AAM (Atron Abfahrts-Monitor) ist eine preiswerte Lösung für die dynamische Fahrgastinformation, also für die Anzeige von Abfahr­ten an einer Haltestelle.
  • Anstatt einer Investition in Spezial-Hardware kommt als Computer ein Raspberry PI zu Ein­satz, der zusammen mit einem Monitor über HDMI beispielsweise in einem Einkaufs­zentrum betrieben werden kann.
  • Das Backend spielt die Daten über HTTP im JSON-Format aus.
  • Daten werden dabei allein an freigeschaltete Clients geliefert.
  • Eine Monitoring-Benutzeroberfläche erlaubt die Identifizierung von anderen, nicht-autorisierten Clients.
  • In diesem Projekt habe ich die Gesamt-Konzeption, die Architektur und die Imple­men­tierung übernommen.
  • Der als „Bastel-Hardware“ verschrieene Raspberry PI funk­tio­niert hier durchaus zuverlässig.

Meine Aufgaben:

  • Gesamt-Konzeption und Implementierung
Java Tomcat JSF JSP JMX HTML CSS Ajax jQuery Linux Raspberry PI
ATRON electronic GmbH
1 Jahr 10 Monate
2010-08 - 2012-05

Software Engineering Plattform ASEP

Technische Projektleitung, Architektur, Design, Entwicklung Java JEE Glassfish ...
Technische Projektleitung, Architektur, Design, Entwicklung
  • Die Software Engineering Plattform erlaubt die effiziente und modulare Entwicklung von Java Enterprise-Anwendungen.
  • Die Aufgabe bestand hier vor allem in der Ret­tung des bereits laufenden Projektes, das heißt im pragmatischen „Nutzbar­machen“ bereits vorhan­dener (zu theo­retischer) Konzepte und Implementierungen eines exter­nen Dienstleisters.
  • Trotz der anfänglichen Herausforderungen wurde letztlich eine Entwicklungs-Plattform in einem Umfang realisiert, die nicht viele Unternehmen ihr Eigen nennen können.
  • Die umgebaute Plattform hat eine hohe Akzeptanz im gesamten Entwickler-Team.
  • Die Praktikabilität und Effizienz bei der Anwendungs­erstel­lung wurde eben­falls bereits unter Beweis gestellt, siehe weitere Projektbeschreibungen.
  • Verschiedene auf der Plattform realisierte Anwendungen sind zudem produktiv im Einsatz.
  • Die Plattform generiert auf Basis einer sehr ausdrucksstarken Domänen-Sprache Standarddialoge in Form von Tabellen und Formularen, eine Datenzugriffsschicht (CRUD) sowie ein Datenbankschema.
  • In der generierten 3-Schichten Standard­architektur kann Geschäfts­logik ausprogrammiert und die Benutzer­oberfläche weiter gestaltet werden.
  • Neben den Platt­form-Diensten für modulare Entwicklung, Mandanten­fähigkeit, Lizenz­manage­ment, Rollen- und Rechte­Verwaltung und einem einfachen Installer für den Kunden bietet die Plattform eine umfangreiche Anwendungs-Bibliothek.
Java JEE Glassfish EJB Spring JPA Hibernate Maven Liquibase Swing Webservice Spring Remoting JMS ActiveMQ Xtext DSL Eclipse
ATRON electronic GmbH
5 Monate
2010-06 - 2010-10

eTicketing

ASEP Plattform REST JSON

Electronic Ticketing nach VDV-KA ermöglicht den Fahrgästen die Nutzung von Chip­karten als Fahrscheine mit dem Fokus auf Interoperabilität unterschiedlicher Dienst­leister, Kunden-Vertragspartner und Produktverantwortlicher im ÖPNV.

Meine Aufgabe in diesem Projekt bestand neben der Übernahme der Verantwortung für die Umsetzung in der Festlegung der Rahmen-Architektur und der Konzeption der Schnittstellen zum C++-basierten Alt-System.

Meine Aufgaben:

Architektur, Schnittstellen-Design

Branche:            

ÖPNV (Verkehrswesen)

ASEP Plattform REST JSON
ATRON electronic GmbH
9 Monate
2009-09 - 2010-05

GMX: Portal-Entwicklung

Entwickler, Coremedia Coach Coremedia CAE 2008 JSP Tomcat ...
Entwickler, Coremedia Coach
  • Das Celebrity-Portal top.de umfasst typische Elemente sozialer Netzwerke wie Bewertungen, Abstimmungen und  Diskussions-Threads.
  • Das Portal wurde auf Basis des Content Management Systems Coremedia 2008 im Projekt-Team bei GMX vor Ort umgesetzt.
  • Ich war in diesem Projekt Teil des Entwickler-Teams.
Coremedia CAE 2008 JSP Tomcat SCRUM

Aus- und Weiterbildung

Aus- und Weiterbildung

Abschluss Diplom-Informatiker (TU München)

Promotion in Informatik

Zertifikate:

  • Etengo Gold Partner 2023
  • SUN Certified Enterprise Architect

Position

Position

?pragmatisch, flexibel, engagiert, teamorientiert?


Mit langjähriger Expertise im Bereich der IT ? sowohl als Leiter eines Softwareentwicklungsteams in einem renommierten mittelständischen Unternehmen als auch durch zahlreiche Beratungsprojekte ? biete ich meine umfassende Hilfe entlang des gesamten Softwareentwicklungszyklus an:

  • Software-Entwicklung im Java-Umfeld
  • Konzeption und Umsetzung von Software-Architekturen
  • Technische Projektleitung
  • Coaching von Entwicklerteams
  • Expertise in Microservices, Cloud-Technologien und DevOps

Die Vorteile für Sie sind:

  • Effiziente und zielgerichtete Softwareentwicklung im Team
  • Lösungen von herausragender Qualität und Zuverlässigkeit
  • Durchdachte und skalierbare Architektur
  • Klar strukturierte und wartbare Software

Neben meinem fundierten theoretischen Hintergrund zeichne ich mich insbesondere durch Pragmatismus aus. Meine analytischen Fähigkeiten und Kommunikationsstärke bringe ich gerne in dynamische Teams ein. Meine ideale Projektumgebung zeichnet sich durch anspruchsvolle Herausforderungen aus, die mich zu Höchstleistungen motivieren.

Kompetenzen

Kompetenzen

Top-Skills

Spring Boot Kubernetes Java JMS Kotlin Scala DevOps Cloud Apache Tomcat Scrum Angular Vue.js

Schwerpunkte

  • Software-Entwicklung/Coaching im Java/JEE-Umfeld (Backend wie Frontend)
  • Erstellung und Umsetzung von Software-Architekturen,
  • Migration in die Jahre gekommener Software,
  • Konzeption neuer Produkte,
  • Technische Projektleitung,
  • Koordination verteilter/internationaler Teams
  • Build Management / Continuous Integration

Produkte / Standards / Erfahrungen / Methoden

Amazon AWS
Angular 5
ASEP Plattform
AssertJ
Bamboo
Cloud Foundry
Cloud Foundry Plattform
Docker
Eureka
Flyway
Git
Grafana
IntelliJ
Jenkins
JIRA
JMS / ActiveMQ
Junit
Kubernetes
Mockito
oData
Redmine
REST
SAP IS-U
Spring Boot
Spring Boot 1.3
Spring Cloud Config
Swagger

Methodik

agile Methoden / SCRUM, Continuous Integration, MDA / Model driven Architecture, DSL / Domänenspezifische Sprachen, Test Driven Development (TDD), UML

Tools

IntelliJ IDEA, Eclipse IDE, JIRA, Confluence, Bitbucket, Kibana, SQLDeveloper, Enterprise Architect, 

Versionsverwaltung

  • GIT, Subversion, CVS, Clearcase

Build

Maven, ANT, Jenkins, Sonar

Testing

JUnit, EasyMock, Mockito, PowerMock, JMockit, JMeter, JProfiler, QF-Test

Monitoring

JMX, Shinken, Nagios

Frameworks

EJB 3.1, Spring 4, XText/XTend 1.0, Hibernate Validator 4.2, JasperReport 4.5, Apache Hadoop 2.2

Container

Glassfish 4, JBoss Wildfly, Apache Tomcat 8, ActiveMQ 5.2

GUI

Web

  • Servlet, JSP, JSF, Struts, GWT, Vaadin 7, HTML, CSS, Javascript, JQuery, ...

Swing, JavaFX

Betriebssysteme

Linux (CentOS, Fedora, ...)
Windows (3.11 bis 10)

Programmiersprachen

Java 8
JEE 7
JSON
Kotlin
Scala 2.11
XML
XSD
XSLT

Datenbanken

Amazon RDS
Elasticsearch
Hibernate
JDBC
JPA 2.0
MongoDB
MySQL
MySQL / MariaDB
Oracle 11
PostgreSQL
PostgreSQL
Redis
SQL

Datenkommunikation

HTTP
JMS
oAuth 2
oData
RabbitMQ
REST
Webservices

Branchen

Branchen

  • Musikrechte
  • Medien
  • Banken
  • Verkehrswesen (ÖPNV)
  • Telekommunikation

Ich bin natürlich nicht auf diese Branchen-Liste festgelegt.

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

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

Das GULP Freelancer-Portal

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