Backend für Marketingkampagnenverwaltung von Brandshops

Datum 08/2015 – 09/2016
Projekt Internetanwendung zur Verwaltung für Marketingkampagnen
Branche Werbung
Tätigkeit Architektur, Implementierung
Beschreibung Architektur und Implementierung einer neuen Anwendung von Grund auf. Umsetzung als Microservice-Architektur auf Basis Spring Boot in einem Docker Container im AWS-Umfeld.
Anbindung von Google Double Click und Metrigo für „onsite“ Werbung und „sponsored products“.
Scheduling-Aufgaben wurden mittels Quartz gesteuert. Für die Übermittlung von Nachrichten wurde Amazons SQS benutzt.
Ausführung PC / Windows / Linux
Java 8, Spring Boot
REST, Jackson
Hibernate 4, JPA, PostgreSQL, H2
Quartz
Amazon AWS, SQS, EC2
Docker
Mockito
REST-Assured
Swagger
JUnit, Hamcrest
Grafana2
IDE: IntelliJ 2016
Vorgehensmodell: Kanban
Tools: JIRA, Jenkins, Confluence, Trello, Maven, STUPS
VCS: git
Referenz Referenz vom 31.10.2016

Stammdatenverwaltung für Abrechnungssystem

Datum 05/2015 – 08/2015
Projekt Stammdatenverwaltung für Abrechnungssystem
Branche Energiedienstleistung
Tätigkeit Analyse, Design, Implementierung
Beschreibung Implementierung zentraler Dienste der Stammdatenverwaltung. Hierzu gehören Liegenschaften, Gebäude, Messstellen, Messinstrumente usw.
Ausführung PC / Windows
Java 7, JEE 6
REST, Soap
JMS
Hibernate 4, mySQL
Orika
Querydsl
IntelliJ 14
AngularJS
Wildfly 8

Vorgehensmodell: Scrum
Tools: JIRA, Jenkins, Confluence

Nachrichtenservice rubbergram

Datum 10/2014 – 12/2014
Projekt Web-Applikation zum Versand von Einwegnachrichten
rubbergram.com
Branche Social Web
Tätigkeit Idee, Design, Implementierung
Beschreibung Einfache Möglichkeit zum Versand von Einwegnachrichten, die beim Lesen automatisch gelöscht werden. Möglichkeit für Attachment als Bild.
Ausführung PC / Windows
Ubuntu Linux
JavaScript, HTML
Eclipse 4.3
Java 7, JEE 6, Servlet, JSF 2, Wildfly 8.1
Hibernate 4
MySQL
Scrum

Vertragsverwaltung/Kundenbetreuung

Datum 08/2008 – 03/2015
Projekt Interne Applikation zur Vertragsverwaltung und Kundenbetreuung
Branche Versicherung
Tätigkeit Analyse, Design, Implementierung
Beschreibung Implementierung administrativer Funktionen in ein bestehendes webbasierendes Vertragsverwaltungssystem.
Entwurf und Realisierung Angebotsmodul.
Ausführung PC / Windows
UNIX / AIX
JavaScript, HTML
Eclipse 3.7, 4.4
Java 6, 7, 8, JEE 6, Servlet, JBoss 6, Wildfly 8
Struts, JSP, JSF, RESTEasy
MQ, Hibernate 4
IBM DB2 9
extreme Programming, Scrum
Projektverwaltung mittels JIRA
Modul Migration
Zur Übernahme von Vertragsbeständen aus einer fremden Bestandsverwaltung musste ein Konzept zur Migration dieser Datenstrukturen in das bestehende Bestandsverwaltungssystem erstellt werden. Dabei soll eine BPM-Engine als Rahmen dienen. Bei der Erstellung der Infrastruktur wurde hier auf RESTful Services mittels RESTEasy gesetzt. Das Modul gliedert sich in zwei Teile, wobei eines für die Transformation der Datenstrukturen in die Zielstrukturen zuständig ist und das andere die Zusteuerung ins bestehende System übernimmt.
Modul Angebotserstellung
Ziel war eine möglichst eigenständige Komponente zur Erstellung von Änderungsangeboten an bestehenden Verträgen zu realisieren. Auch sollte die Option einer neuen GUI-Technologie nicht verschlossen werden. Hierfür wurde die Geschäftslogik mittels EJB 3 umgesetzt. Für die Verbindung der Vertragskomponente (EJB 2) zur Angebotskomponente (EJB 3) wurde eine Prozessschicht in EJB 3 gewählt. Diese sorgt transaktionsgesteuert für Konsistenz in beiden Komponenten.
Modul JSF-Prototyp
Zur Abschätzung des Migratiosnaufwandes von Struts zu JSF musste ein Prototyp gebaut werden. Dieser benutzte weitestgehend die vorhandenen Beans.
Modul C/S-Trennung
Die ursprüngliche Anwendung hatte keine Client/Server-Trennung, wodurch eine gute Transaktionsbehandlung kaum möglich war. Da die GUI-Komponente jedoch direkt auf die Entitäten der Persistenzschicht aufbaute, wurde eine Transformation in ein DTO-Objekt zur Übergabe an die Beans gewählt. Serverseitig wurden diese wieder zurück in die Entitäten transformiert, womit die C/S-Trennung für eine sinnvolle Transaktionsbehandlung ermöglicht wurde.
Modul Verbesserungen beim Exception-Handling
Die Umstellung auf EJB3 eröffnete neue Möglichkeiten beim Exception-Handling. Zentrale Beans werfen nun mittels @ApplicationException annotierte Exceptions, die auch eine Wurzel-Klasse mit dem Attribut rollback=true haben. Somit ist die Transaktionsbehandlung besser möglich.
Modul Verbesserungen an der Persistenzschicht
Einheiten behafteter Größen – Geldbeträge sind in der Persistenzschicht einheitlich in Euro zu speichern, wenngleich der Zugriff auf die Klassen auch Centbeträge erlauben muss. Hierfür galt es einen flexiblen embeddable type für Hibernate umzusetzen.
Modul Komponente zur fachlichen Prüfung von Daten
Contextsensitive Daten sind sowohl am Frontend, als auch am Backend auf dieselbe Weise zu prüfen. Hierfür wurde eine Komponente geschaffen, die sich einfach sowohl als JSTL als auch in der zentralen Validierung des Systems benutzen lässt.

Machbarkeitsstudie – Community/Marketplace

Datum 08/2008 – 10/2008
Projekt Community/Marketplace
Branche Social Community/Marketplace
Tätigkeit Projektleitung, Architektur, Implementierung
Beschreibung Machbarkeitsstudie für Social Community/Marketplace Plattform auf Basis von JBoss Seam.
Ausführung PC / Windows, Linux
JavaScript, HTML
Eclipse 3.4
JBoss Seam 2.1.1
JBoss 5.0.1
Java 6, JEE 5, Servlet, JSF
EJB 3
Hibernate 3.3
Richfaces 3.3
mySQL 5.1
Ant 1.7
extreme Programming

Belegwesen

Datum 01/2008 – 07/2008
Projekt Belegwesen
Branche Steuerberatung
Tätigkeit Analyse, Design, Implementierung
Beschreibung Implementierung administrativer Funktionen in ein bestehendes webbasierendes Belegverwaltungssystem.
Ausführung PC / Windows
UNIX / Sun Solaris
JavaScript, HTML
RAD 6
Java 1.4, J2EE 1.3, Servlet, JSP, Taglib
MQ
IBM DB2

Bestell- und Informationssystem

Datum   07/2007 – 12/2007
Projekt   Bestell- und Informationssystem
Branche   Handel
Tätigkeit   Analyse, Implementierung
Beschreibung   Implementierung der Funktion Bankeinzug in ein bestehendes webbasierendes Bestell- und Informationssystem, welches in den Warenhäusern eingesetzt wird. Anbindung diverser Backendsysteme zur Speicherung der Bank- und Personendaten.
Ausführung   PC / Windows
JavaScript, HTML
RAD 6
Java 1.4, J2EE 1.3, Servlet, JSP
MQ
Webservice
Oracle RDBMS

Auswertungen für Mandanten

Datum 04/2007 – 06/2007
Projekt Auswertungen für Mandanten
Branche Steuerberatung
Tätigkeit Analyse, Design, Refactoring, Implementierung
Beschreibung Komplettes Refactoring einer Legacy-Applikation. Das Projekt ist über Jahre hinweg gewachsen. Es wurde auch einem unsanften Wechsel der Programmiersprache unterzogen und von der Architektur mehrfach umgestellt. Die Spuren dieser Umstellungen und daraus resultierende Architekturvielfalt wurde bereinigt und auf eine komplett neue, verschlankte, leistungsfähige Architektur gestellt.
Ausführung PC / Windows
UNIX / Sun Solaris
JavaScript, HTML
MS-Word
RAD 6
Java 1.4, J2EE 1.3, Servlet, JSP

Web-Portal

Datum 01/2006 – 03/2007
Projekt Web-Portal
Branche Steuerberatung
Tätigkeit Architektur, Analyse, Design, Implementierung
Beschreibung Erweiterungen am Formularhandling, der Suche und des Mitglieder-Suchservices
Ausführung PC / Windows
UNIX / Sun Solaris
Oracle RDBMS 9i
PL/SQL
JavaScript, HTML, XML
MS-Access, MS-Word
IBM WAS 5, IBM WSAD 5.1, RAD 6
Java 2, J2EE 1.3, Servlet, JSP, Struts
DAO, RDO
Kundenzitat   Referenz vom 06.06.2008

Mitgliedersuchservice

Datum   01/2005 – 12/2005
Projekt   Suchservice für Mitglieder einer Genossenschaft im Web-Portal
Branche   Steuerberatung
Tätigkeit   Architektur, Analyse, Design, Implementierung
Beschreibung   Dienst zur Suche eines Unternehmensmitglieds anhand unterschiedlicher Auswahlkriterien.
Ausführung   PC / Windows (2000/XP)
UNIX / Sun Solaris
Oracle RDBMS 9i
IBM DB/2
PL/SQL
JavaScript, HTML
IBM WAS 4
IBM WSAD 5.1
Java 2, J2EE 1.3
Servlet, JSP, etc.
Kundenzitat   Referenz vom 06.06.2008