Zurück zur Startseite

Referenzen

Projektreferenzen

Ausgewählte Projekte zu Java, Kotlin, Legacy-Modernisierung, Full-Stack-Entwicklung, Testautomatisierung, Architekturberatung und Coaching — chronologisch sortiert, das jüngste zuerst.

Alle Referenzen 17 Projekte

Entwickler 05/2023 – heute

Web-Apps zur Praxisverwaltung für Heilpraktiker

Die mit Java und GWT erstellte Hauptanwendung, eine Praxisverwaltung für Heilpraktiker, soll um zwei separate mobilfähige Web-Anwendungen ergänzt werden. Die eine Web App dient als mobile Ergänzung der Hauptanwendung für Praxisinhaber. Die zweite Web App ist ein Self-Service Portal für Patienten. Die Web-Anwendungen werden serverund client-seitig mit Kotlin implementiert. Die client-seitige Implementierung basiert auf Kotlin JS und wird mit dem KVision-Framework realisiert. Ein starker Fokus liegt auch auf der barrierefreien Umsetzung nach dem Barrierefreiheitsstärkungsgesetz (BFSG).

Technologien und Methoden: Kotlin JS, Java 25, GWT, KVision, Spring Boot, Accessibility, BFSG, Full-Stack-Entwicklung

Kotlin JSJava 25GWTKVision
Projekt ansehen
Projektleiter, Lead Developer, Berater, Coach 05/2020 – heute

Modernisierung einer Legacy-Anwendung für den Spielbetrieb einer Sport-Liga

Das zentrale Produkt des Kunden, eine Webanwendung zur Verwaltung einer Sportliga und von Sportturnieren, hatte über viele Jahre einen für den Kunden unüberwindbaren Berg an technischen Schulden angehäuft. So wurde die Migration weg von dem nicht mehr weiter gepflegten Framework JBoss Seam hin zu Jakarta EE dem Team des Kunden aus eigener Anstrengung nicht mehr möglich. Gleichzeitig hat die Verwendung von Seam eine Aktualisierung der verwendeten Technologien (z.B. Hibernate, Wildfly AS, JSF, etc.) blockiert. Es kam zum Rückstau bei der weiteren Feature-Entwicklung. Es wurde daher ein umfassendes Refactoring der Anwendung durchgeführt und dabei JBoss Seam vollständig entfernt. Anschließend konnte Jakarta EE 10 verwendet und die eingesetzten Frameworks (z.B. Hibernate) aktualisiert werden. Zusätzlich wurde die PDF-Generierung auf Apache FOP umgestellt und diese damit flexibler gestaltet. Der ursprünglich sehr auf manuelle Schritte aufbauende Build-Prozess wurde durch einen automatischen Maven-Build ersetzt. Nach der Modernisierung der verwendeten Technologien wurde das Projekt weiter bei den Themen Refactoring, Performance Optimierung, Abbau von technischen Schulden, Umsetzung einer robusten Software-Architektur und Testabdeckung begleitet. Für die Testabdeckung wurden automatisierte Selenium-Oberflächentests eingeführt. Dazu wurde eine DSL (Domain-specific language) mit Hilfe von Kotlin implementiert, die es unter Verwendung des Page Object Patterns ermöglicht, neue Tests sehr schnell zu implementieren. Durch diesen Ansatz sind die Tests sehr leicht wartbar und stabil in der Ausführung. Die Durchführung der Tests findet in einer Bitbucket CI-Pipeline statt und werden dort innerhalb von Docker-Containern gestartet. Dadurch ist auch die containerisierte lokale Ausführung in einem einheitlichen Setup möglich.

Technologien und Methoden: Java 21, Wildfly AS, Java EE, Jakarta EE, Maven, Legacy-Modernisierung, Refactoring, Performance-Optimierung

Java 21Wildfly ASJava EEJakarta EE
Projekt ansehen
Architekt, Entwickler 08/2015 – 03/2022

B2B-Webshop mit Integration in ein SAP ERP-System

Um das eigene stagnierende Online-Geschäft zu beleben und den über den E-Commerce generierten Umsatz zu steigern, möchte der Kunde eine B2B-Webshop-Lösung als Individualentwicklung umgesetzt haben. Ziel ist die Entwicklung einer responsiven Single-Page-Application auf Basis des Google Web Toolkits, die in ein bestehendes Web-CMS eingebettet werden soll. Die Anbindung an das eigene SAP ERP-System geschieht über das OData Protokoll mit Apache Olingo. Technische Herausforderungen sind u.a. die zusätzliche nahtlose Integration weiterer intern entwickelten Webanwendungen (z.B. Produktkonfigurator, Ersatzteilverwaltung, etc.). Es wurde in diesem Projekt eine den Kundenwünschen entsprechende Implementierung erstellt, die erfolgreich weltweit ausgerollt werden konnte. Über die folgenden Jahre konnten weitere Anforderungen des Kunden an den Webshop, ermöglicht durch eine saubere Architektur, zügig implementiert werden, so z.B. die Anbindung von Kreditkarten-Providern, spezielle Anpassungen für den chinesischen Markt, Monitoring, und weitere fachliche Erweiterungen. Der Kunde konnte damit sein Ziel, den eigenen über den Webshop generierten Umsatz signifikant zu steigern, erreichen.

Technologien und Methoden: Java, JavaScript, GWT, HTML, CSS3, TDD, Scrum, E-Commerce-Integration

JavaJavaScriptGWTHTML
Projekt ansehen
Architekt, Entwickler 08/2021 – 03/2022

Firmware für Tanksensorik im IoT-Umfeld

Eine vom Kunden begonnene und zeitlich in Verzug geratene Implementierung einer Firmware für Tanksensoren wurde evaluiert und weiterentwickelt. Die Lösung basiert auf Java und Spring Boot, wodurch es auf der schwachen Hardware der betroffenen IoT-Geräte zu Performance-Engpässen kommt. Implementierungsalternativen wurden ermittelt und durch Performance-Tests geprüft. Das Modularisierungskonzept wurde evaluiert und durch Reduktion von Komplexität verbessert. Das Team des Kunden wurde zu verschiedenen technischen Fragestellungen beraten und gecoacht (so z.B. Git Workflows, Modularisierung, Cloud Szenarien, Testen, Selenium Tests).

Technologien und Methoden: Java, Spring Boot, Spring Cloud, Keycloak, PostgreSQL, Architekturberatung, Performance-Tests, Coaching

JavaSpring BootSpring CloudKeycloak
Projekt ansehen
Projektleiter, Entwickler 05/2018 – 06/2019

Modernisierung eines Informationscockpits für Studierende

Eine an der Universität eigenentwickelte Lösung zur Verwaltung von Studierendendaten hatte mit weitreichenden technischen Problemen durch mangelhafte Code-Qualität zu kämpfen. So mussten bestimmte, sich regelmäßig ändernde Semesterdaten für jedes neue Semester direkt im Source Code angepasst werden, da diese nicht als Stammdaten in eine Datenbank ausgelagert waren. Zudem gab es keinen automatisierten, sondern nur auf der IDE basierenden Build-Prozess. Daneben war die Anwendung von verschiedenen Sicherheitslücken betroffen (SQL Injection, Möglichkeit zu Enumeration Attacks, etc.). Die Anwendung wurde soweit es der Budgetrahmen zugelassen hat umgestellt, sodass die gravierendsten Probleme behoben wurden. Es wurde ein automatisierbarer Build-Prozess auf Basis von Maven eingeführt.

Technologien und Methoden: Java, Maven, Spring MVC, Hibernate, MySQL, Legacy-Modernisierung, Security-Audit, Refactoring

JavaMavenSpring MVCHibernate
Projekt ansehen
Berater, Entwickler 01/2015 – 12/2015

Refactoring einer Legacy-Anwendung zur Verwaltung von Unternehmensdaten

Der Kunde setzt ein selbstentwickeltes Werkzeug zur Abfrage und Verwaltung von Produktdaten ein, bei dem sich in der Vergangenheit einige technische Schulden angesammelt hatten. So litt das Projekt stark an dem Not-invented-here-Syndrom, wodurch viele Funktionalitäten unnötigerweise selbstentwickelt waren, die man üblicherweise als Bibliothek einbindet (z.B. Datenbank Connection Pool, Collection Framework, etc.). Für die Anwendung wurde daher ein umfassendes Refactoring durchgeführt, bei dem selbstentwickelte Standardfunktionalitäten durch Bibliothekscode ersetzt wurde, um die Wartbarkeit damit zu erhöhen. Zudem wurde die Anwendung auf Basis von Spring Boot umgestellt, wodurch bestimmte Funktionalitäten, wie die Anbindung an einen LDAP-Server, mit Spring umgesetzt werden konnte.

Technologien und Methoden: Java, Spring Boot, Spring Security, Spring MVC, Thymeleaf, Refactoring, Technologieberatung, Datenbankentwurf

JavaSpring BootSpring SecuritySpring MVC
Projekt ansehen
Lead Developer 08/2014 – 03/2022

Confluence-Plugin zur Beschränkung von Datei-Uploads

Es wurde ein Plugin für Atlassian Confluence entwickelt und gewartet, das es erlaubt, den Upload bestimmter Dateitypen für Benutzer, Gruppen und Confluence-Bereiche einzuschränken. Das Plugin wurde anschließend auf dem Atlassian Marketplace vertrieben.

Technologien und Methoden: Java, JavaScript, Atlassian Confluence, Atlassian SDK, Backbone.js, Plugin-Entwicklung, Wartung, Marketplace-Produkt

JavaJavaScriptAtlassian ConfluenceAtlassian SDK
Projekt ansehen
Berater, Entwickler 04/2014 – 12/2020

Beratung beim Einsatz von Atlassian Jira und Confluence

Der Kunde bildet intern seine Prozesse mit den Werkzeugen von Atlassian ab. Hierbei wurde er beratend unterstützt. Bestimmte kundenspezifische Anforderungen an die Atlassian Werkzeuge (z.B. Anpassung der automatisch versendeten Emails, Darstellung der Benutzernamen, Validierung von Eingaben in Jira Issues, etc.) wurden durch Entwicklung eigener Atlassian Plugins umgesetzt.

Technologien und Methoden: Atlassian SDK, Atlassian Jira, Atlassian Confluence, Atlassian FishEye, Atlassian Bitbucket, Consulting, Plugin-Entwicklung, Betriebsunterstützung

Atlassian SDKAtlassian JiraAtlassian ConfluenceAtlassian FishEye
Projekt ansehen
Entwickler 03/2014 – 08/2015

Jira-Plugin zur Anonymisierung von Arbeitszeitbuchungen

Der Kunde hatte die Anforderung, aufgrund von Datenschutzbestimmungen die Arbeitszeitbuchungen, welche innerhalb von Jira angelegt worden sind, nach einer bestimmten Frist zu anonymisieren. Hierfür wurde mit dem Atlassian SDK ein Plugin für Jira entwickelt, das diese Aufgabe übernimmt.

Technologien und Methoden: Atlassian Jira, Atlassian SDK, Maven, Subversion, REST, Plugin-Entwicklung, Datenschutz, REST

Atlassian JiraAtlassian SDKMavenSubversion
Projekt ansehen
Entwickler 08/2013 – 12/2013

Neuentwicklung eines PHP-basierten Online-Shops für Luxusartikel

Ein E-Commerce Startup Unternehmen möchte eine schlecht wartbare, auf PHP basierende Web Shop-Lösung auf ein Java EE/JSF Backend migrieren. Die Neuimplementierung wurde entsprechend durchgeführt und in der AWS Cloud in Betrieb genommen. Eine der nichtfunktionale Anforderungen dabei, die für das Projekt gewährleistet werden musste, war es, die Anwendung stabil zu halten, während zur Primetime im Privatfernsehen für das Produkt ein Werbespot geschaltet wurde. Die fertige Implementierung wurde anschließend für ein weiteres Shop-Portal für Tiernahrung und Haustierbedarf angepasst und in Betrieb genommen.

Technologien und Methoden: Java, JavaScript, Java EE, JPA, EJB, Migration, E-Commerce, Cloud-Rollout

JavaJavaScriptJava EEJPA
Projekt ansehen
Projektleiter, Architekt, Entwickler 05/2012 – 02/2020

Webservice für Informationen zu agrochemischen Produkten

Implementierung eines Webservices für die Abfrage von Informationen zu agrochemischen Produkten. Der zu realisierende Service wurde im Rahmen der existierenden IT-Infrastruktur innerhalb einer Serviceorientierten Architektur (SOA) mit den vorhandenen Webservices integriert. Die Produktdaten werden aus einem eigenen Datenbankschema geliefert, das über einen Datenbank-Prozess regelmäßig mit den Stammdaten aus mehreren Quellen synchronisiert wird. Der Synchronisierungsprozess ist mit Hilfe von PL/SQL Prozeduren realisiert. Eine auf Microsoft Silverlight basierende Webanwendung ergänzt den Webservice mit einer Benutzeroberfläche.

Technologien und Methoden: Java, C#, Oracle DB, Oracle SOA Suite, SOAP Webservices, SOA, Datenintegration, Projektleitung

JavaC#Oracle DBOracle SOA Suite
Projekt ansehen
Entwickler 01/2012 – 08/2015

Neuentwicklung eines Arbeitsvermittlungs- und Recruiting-Portals

Ein bestehendes, auf PHP basierendes Arbeitsvermittlungs- und Recruiting-Portal soll auf die JVM-Plattform migriert werden. Die Altimplementierung krankt an schlechter Wartbarkeit und kann nur sehr schwer mit neuen Features erweitert werden. Es wird eine komplette Neukonzipierung des Portals und eine Neuentwicklung mit Groovy und Grails durchgeführt.

Technologien und Methoden: Groovy, Grails, Spring, Hibernate, SVN, Migration, Neukonzeption, Web-Entwicklung

GroovyGrailsSpringHibernate
Projekt ansehen
Entwickler 10/2011 – 12/2011

Einführung eines GWT-Anwendungsrahmenwerks in eine Legacy-Anwendung

Der Kunde betreibt eine eigenentwickelte GWT-Anwendung für die interne Stammdatenverwaltung. Dabei hat die Anwendung mit einigen architekturellen Schwächen und Designfehlern zu kämpfen. Es wurde dafür ein Anwendungsrahmen auf Basis von GWT eingeführt, mit dem die Probleme zum größten Teil behoben werden konnten. Weiter wurde ein entsprechendes Refactoring durchgeführt und ein stabiler Build-Prozess auf Basis von Maven etabliert.

Technologien und Methoden: Java, Spring Framework, Spring Security, Google Web Toolkit, JUnit, Code Review, Architekturberatung, Refactoring

JavaSpring FrameworkSpring SecurityGoogle Web Toolkit
Projekt ansehen
Lead Developer 03/2007 – 09/2011

Regelbasiertes Mapping-Tool für Produktklassifizierung

Konzeption und Implementierung eines regelbasierten Mappingtools zur automatisierten Klassifizierung von Produkten in verschiedene Klassifizierungssysteme (eCl@ss, ETIM, UNSPSC, NE 100 PROLIST) und für das Mapping von Produktmerkmalsdaten. Regelwerke können in Form von XML-Dateien erstellt werden. Dadurch wird es möglich, anhand von Produktattributen, Produkte bestimmten Produktklassen eines Klassifizierungssystems zuzuordnen. Die Produktattribute selbst können mithilfe der Regelwerke auf bestimmte Wertebereiche oder vereinheitlichte Attributwerte normalisiert werden.

Technologien und Methoden: Java, XML, XSLT, StAX, Swing, Produktdatenmanagement, Regelwerke, Architektur

JavaXMLXSLTStAX
Projekt ansehen
Lead Architect, Lead Developer 01/2010 – 10/2010

Implementierung einer Social Community

Ziel des Projekts war die Konzipierung und Entwicklung der Hauptanwendung eines Internet Startups. Das Produkt wurde entwickelt und zur Marktreife gebracht.

Technologien und Methoden: Java, Vaadin, Hibernate, Hibernate Search, MySQL, Architektur, Full-Text Search, Startup-Entwicklung

JavaVaadinHibernateHibernate Search
Projekt ansehen
Architekt, Lead Developer 07/2008 – 10/2008

Webanwendung für generische Datenbankabfragen

Implementierung einer generischen Reporting-Webanwendung zur Ausführung von vorgegebenen Datenbankabfragen und -prozeduren. Die Ergebnisse der Abfragen können spaltenweise durchsucht, gefiltert und sortiert werden. Gefilterte und sortierte Abfrageergebnisse können als CSV-Datei heruntergeladen werden. Das Hinzufügen neuer Abfragen geschieht generisch über die Datenbank, ohne dass die Konfiguration oder der Code der Applikation angepasst werden muss. Die Eingabemasken für die Parameter der Datenbankabfragen werden automatisch anhand den Parameterbeschreibungen aus der Datenbank gerendert.

Technologien und Methoden: Java, JBoss Seam, JSF, ICEfaces, Oracle, Reporting, Generische UI, Datenbankintegration

JavaJBoss SeamJSFICEfaces
Projekt ansehen
Trainer 11/2011 – 03/2022

Trainer und Coach für Java-Technologien

Trainer und Coach für zahlreiche Seminare im Inhouse Trainingscenter und vor Ort bei Kunden. Seminare und Coachings zu den Themen Git, Clean Code und Software Craftsmanship, Spring Boot, Kotlin, Effective Java, Refactoring, Design Patterns mit Java, Atlassian Bitbucket, Google Web Toolkit (GWT), Vaadin, Apache Tomcat, Apache Maven, Apache Subversion und Test-Driven Development.

Technologien und Methoden: Java, Kotlin, Spring Boot, Vaadin, GWT, Training, Coaching, Clean Code

JavaKotlinSpring BootVaadin
Projekt ansehen