Projekte

Projekte

Im Folgenden finden Sie eine chronologische Übersicht meiner Projekte. Details erhalten Sie mit einem Klick auf das Plus-Zeichen.

Jan. 22 - heute Vitus, Verkauf von Privatkrediten (iks GmbH)
  Ein Kreditinstitut, welches sich auf die Absatz- und Einkaufsfinanzierung für den Kfz-Handel spezialisiert hat, betreibt mehrere Anwendungen, die sukzessive um Features erweitert werden. Eine dieser Anwendungen ist Vitus, für die ich in erste Linie tätig bin. Vitus besteht aus einer Vertriebsplattform für Kredite und einem Backoffice zur Verwaltung der Anträge und Verträge. Angebunden sind verschieden Systemen wie ein Kernbanksystem, Rechenkern, KontoCheck und Dienste zu Identitäts- und Bonitätsprüfung. Der Entwicklungsprozess arbeitet mit Feature-Branches, Merge-Requests (GitLab) und ausführlichen Reviews. Zudem wird durch Sonar einen Testabdeckung von 80% verlangt und arbeitet mit automatisierten Unit-, Integrations- und End-To-End-Tests, sodass sich Vitus durch eine geringe Fehlerzahl auszeichnet.
  Position Entwicklung
  Sprachen Java, TypeScript, SQL, HTML, CSS
  Datenbanken MongoDB, PostgreSQL
  Backend SpringBoot, Kafka, Docker, Kubernetes, Keycloak, Solr
  Frontend Angular
  Tools GitLab (CI/CD), Nexus, Rancher, JIRA, Confluence
Sept. 21 - Dez. 21 Projekt BaLSAM (Schmidt & Partner-GmbH)
  In Rahmen des Projekts BaLSAM werden Technologien erprobt, die in der Architekturausrichtung für neue Projekte empfohlen werden. Dazu gehört z.B. das Tool Camunda als Basis für die Prozess-Automatisierung. Für die Historisierung von Daten werden temporale Tabellen und Event-Sourcing als Persistenz-Techniken getestet; für das Event-Sourcing wiederum werden die Tools bzw. Frameworks Axon, Akka, Kafka und Event-Store miteinander verglichen. Die im DDD-Umfeld gern eingesetzte Methode Event-Storming wurde als ein Verfahren für die Anforderungsermittlung der Geschäftsprozesse erfolgreich angewendet.
  Position Architektur
  Sprachen BPMN, DMN, Java, Kotlin
  Techniken Event Sourcing
  Tools Camunda, Kafka, Akka, Axon, Event-Store, SpringBoot
  Doku Arc42 (AsciiDoc, PlantUML)
Apr. 21 - Dez. 21 Konsens-Projekt der Finanzämter (Schmidt & Partner-GmbH)
  Im Rahmen des Konsens-Projektes (steuer-it-konsens.de) ist bis 2025 geplant, die Software der Finanzämter „Container-basiert“ zu entwickeln und zu betreiben. Als Container-Plattform wurde u.a. OpenShift (das Kubernetes von Red Hat) ausgewählt. Zurzeit werden die Cluster (fast) vollautomatisiert (Infrastructure as Code) mit den Tools Ansible (Day1) und ArgoCD (Day2) installiert und konfiguriert, einschließlich der Provisionierung der Cluster-Nodes, einer Benutzer- und Rechteverwaltung (IDM), der CI/CD-Pipelines (Tekton, Argo-Workflow und -Rollouts) und automatisierter Backups. Im letzten Schritt wird die Anwendungs-Software, die bislang auf mehreren JBoss läuft, auf die neue Plattform migriert.
  Position DevOps-Entwicklung
  Sprachen Yaml, ShellScript, Java
  Infrastruktur Red-Hat-Stack: OpenShift (OCP/OKD), Cockpit, IDM, Satellite, Quay, GitLab
  Techniken REST, Domain Driven Design, GitOps
  Tools Ansible, Podman, Kubernetes, Helm, Kustomize, Argo-Tools, Tekton, Keycloak, LDAP, Maven
Jan. 16 - März 21 Portal eines Finanzdienstleister (iks GmbH)
  Ein bekannter Finanzdienstleister möchte seine Dienste zentral als Portal-Anwendung im Internet anbieten. Bislang existierten diese als separate Dienste zum Teil als Web-Applikation, zum Teil als installierte Software beim Kunden. Eine Teilaufgabe bestand in der Einführung eines Single-Sign-Ons (SSO) für alle Dienste, was mit OpenID und dem Tool Keycloak realisiert wurde.
Die weitaus größere Aufgabe besteht aber darin, den neuen Web-Teil und die Anbindung an die bisherigen Backend-Systeme fachlich zu erarbeiten und als Microservice-Lösung (unter Zuhilfenahme von Domain-Driven-Design) zu implementieren. Für diesen Kunden erstmalig werden für die Entwicklung und den späteren Betrieb Docker und Kubernetes verwendet. Der Portal-Teil wird aufgrund der größeren Kompetenz beim Web-Design von einer externen Internet-Agentur aus Berlin entwickelt und von uns reviewt, getestet und integriert.
Für das gesamte Projekt müssen vier weitere Teams gesteuert werden, sodass die Koordination im Sinne von „Scrum of Scrums“ eine Hauptaufgabe für unser „Kernteam“ darstellt.
Unterstützt werden wir durch die unternehmensweite Einführung der agilen Kollaborations-Werkzeuge JIRA und Confluence.
  Position Architektur, Entwicklung, Anforderungsmanagement, Koordination
  Sprachen Java, JavaScript, SQL, HTML, CSS
  Datenbanken Oracle, MariaDB
  Techniken Domain Driven Design, REST
  Tools Docker, Typo3, Tomcat, Jetty, Puppet, Maven, Enunciate, Jenkins, JIRA, Confluence, Git, Mercurial
Sept. 15 - Jan. 16 Faktura (iks GmbH)
 
  An das vorherige Projekt schloss sich unmittelbar ein Projekt beim gleichen Kunden an, das bereits einige Monate zuvor startete. Thematisch handelte es sich dabei um die Faktura des Kunden, die komplett neu entwickelt wurde. Die besondere Herausforderung war der sehr eng gesteckte Zeitplan. Ein gutes Anforderungsmanagement und der Einsatz von Scrum in einem optimal kooperierenden Team machte das Unmögliche möglich. Meine Aufgabe bestand zum einen in der Erstellung von noch fehlenden Funktionalitäten (z.B. Preis-Modelle & Konfiguration) angefangen vom JEE-Backend bis hin zur Spring-GUI, zum anderen in der Implementierung eines (Massen-)Exports zur Anbindung von verschiedenen externen FiBu-Systemen.
  Position Architektur, Entwicklung
  Sprachen Java, JavaScript, SQL
  Datenbanken Oracle
  Techniken JEE, Swing, Web, REST, XSLT
  Tools WebLogic, IDEA, Maven, Jenkins
Sept. 13 - Sept. 15 Auskunftei für Firmenauskünfte (iks GmbH)
  Für diesen bekannten Finanzdienstleister sind in ganz Deutschland Sachbearbeiter(innen) beschäftigt, die Firmeninformationen recherchieren. Dazu werden Mitteilungen von unterschiedlichsten Quellen zusammengetragen: Zeitungen, Internet, Telefoninterviews, etc. Die dabei anfallenden Routine-Tätigkeiten sollen nun optimiert werden, z.B. durch automatisierte Voranalysen von Internet-Quellen oder durch eine zeitgemäße effiziente Client-Technologie. Speziell die syntaktische und semantische Analyse von Internetseiten entpuppt sich als knifflige Aufgabe und machte dementsprechend Spaß. Für eine Verbesserung der Geschäftsprozesse und wurden Teile des bisherigen Swing-Clients erweitert bzw. durch eine Web-Anwendung ersetzt. Verschiedene Architekturen (JSF, Single-Page, ROCA) sind untersucht und bewertet worden – die Entscheidung fiel auf das Google-Framework angularJS. Weiter realisiert wurden eine Anbindung an beliebige Telefonanlagen und eine Software, die ein Telefoninterview maßgeblich unterstützen soll, wobei dort die Bedienbarkeit an oberster Stelle steht.
  Position Anforderungsanalyse, Architektur, Entwicklung
  Sprachen Java, JavaScript, SQL
  Datenbanken Oracle
  Techniken JEE, REST, Swing, node.js
  Frameworks angularJS, d3.js, Bootstrap
  Tools WebLogic, Jetty, Flux, Eclipse, Maven, Jenkins
Mai. 13 - Aug. 13 Inkasso-Unternehmen (iks GmbH)
  Das Projektziel bestand primär darin, eine bereits bestehende Client-Server-Applikation im Bereich Inkasso von einer JBoss-Plattform auf den TomEE (einem um JEE-Komponenten erweiterter Tomcat) zu portieren und sie in diesem Zuge auf einen zeitgemäßen Stand (Java 1.7, JEE 3.1, Maven, CI) zu bringen. Das Backend wurde einst mit J2EE-Mitteln und XDoclet erstellt, welches um ein aus Web-Services bestehendes Remoting ergänzt wurde. Das Frontend wurde mit Swing realisiert. Für die Migration wurde zunächst ein kleines Regressionstest-Tool geschrieben, das in der Lage ist, Testergebnisse des Ist-Systems aufzuzeichnen und gegen das Neu-System laufen zu lassen, um eine Äquivalenz von Alt und Neu sicherzustellen. Anschließend wurde das Remoting ersetzt durch J3EE-Sessions-Beans, die automatisch Web-Services unterstützen. Eine weitere Aufgabe war die Ablösung eines Authentifizierungssystems durch das übergreifend im Betrieb eingesetzte LDAP. In der verbleibenden Zeit wünschte sich der Kunde einige (fachliche) Änderungen im Front- und Backend.
  Position Architektur, Entwicklung, Dokumentation
  Sprachen Java, SQL
  Datenbanken MS-SQL
  Techniken JEE, Web-Services, ADS, LDAP, Swing
  Tools JBoss, TomEE, Eclipse, Ant, Maven, Jenkins
Apr. 12 - Apr. 13 Portigon, ehemals WestLB (mt ag)
 
  Zwei zentrale Java-Applikationen mussten aufgrund der Dreiteilung der (ehemaligen) WestLB in wesentlichen Punkten angepasst und erweitert werden. Eine Anwendung stammt aus dem Bereich Risk-Management, die zweite dient in erster Linie der Benutzerverwaltung und als Drehscheibe für Im- und Exporte von externen Daten-Quellen. Wegen der langen Lebensdauer sind die Anwendungen stark angewachsen und beinhalten eine bunte Vielfalt von Techniken und Frameworks (z.T. auch Eigenentwicklungen). Mit anderen Worten: Es handelt sich um ein typisches Wartungsprojekt mit all seinen Herausforderungen. Diese bestehen vor allem darin, sich schnell in fremden Code einzuarbeiten, zu erweitern, qualitätszusichern (Tests) und vor allem: auf lange Sicht verständlich, d.h. wartbar zu halten. Zu diesem Thema finden Sie auch weitere Informationen auf der Seite Clean-Code.
  Position Entwicklung, Wartung
  Sprachen Java, Javascript, Groovy, SQL
  Datenbanken Oracle
  Techniken Servlets, JSP, Ajax, ZK, jQuery, Toplink, Quartz
  Tools IBM-Websphere, Tomcat, JBoss, FireBug, Eclipse, Toad, BIRT, CVS
Sept. 11 - März 12 Masterkonsole (iks GmbH)
  Für einen Finanzdienstleister entwickelte ich eine Web-Applikation zur Überwachung von Software in Produktion. Die Software verfügt über Ansichten der Prozesse, Job-Überwachung und der Verfolgung von Datenströmen an externe Systeme. Die Anwendung besteht aus einem Web-Frontend, welches massiv von der Ajax-Technik Gebrauch macht. Sekündliche Aktualisierungen der Zustände werden ruckelfrei im Browser angezeigt, während zugleich zwischen Kompakt- und Detailansichten gewechselt werden kann. Das Backend, welches auf einem Weblogic-Server betrieben wird, stellt sowohl eine Java- als auch eine REST-Schnittstelle für die Kommunikation zur Verfügung.
  Position Entwicklung
  Sprachen Java, Javascript
  Datenbanken Oracle, HSQLDB
  Techniken JSF, JEE, PrimeFaces, Ajax
  Testing JUnit, Integrationstests, Selenium, Sonar, JMeter
  Tools Oracle-Weblogic, Tomcat, Jetty, FireBug, Eclipse, Mercurial, Maven, Jenkins, Artifactory
Jun. 11 - Sept. 11 CEG (iks GmbH)
  Für einen Finanzdienstleister, der Bonitätsauskünfte über Privatpersonen erteilt, wurde eine Erweiterung der bestehenden Software in Form einer Anbindung an einen externen Service-Anbieter realisiert. Die (externe) Schnittstelle besteht aus eine Menge von RESTful-Web-Services und einer Datei-Austausch-Schnittstelle für Bulk-Anfragen.
  Position Entwicklung, Softwaretests, Qualitätssicherung
  Sprachen Java, XML
  Datenbanken Oracle, HSQLDB
  Techniken REST, Web Services, TDD, JEE
  Testing JUnit, Integrationstests
  Tools Eclipse, Oracle-WebLogic, Oracle-SQL-Developer, CVS, Maven, TeamCity, Artifactory, Cobertura
Apr. 09 - Jun. 11 Finanzdienstleister (iks GmbH)
  Für ein namhaftes Unternehmen, das Wirtschaftsauskünfte über ausländische Firmen erteilt, wurde ein JEE-basierendes System zur Verwaltung von Auskünften, Aufträgen, Kunden, etc. komplett neu erstellt. Es löst eine Altanwendung bestehend aus unterschiedlichsten Arten von Teilkomponenten (AS400 und periphere Komponenten) ab, um eine einheitliche zukunftsorientierte Plattform zu erschaffen. Das Backend wird auf einer Oracle-WebLogic-Plattform betrieben. Für die Client-Seite fiel die Entscheidung auf Eclipse-RCP. Zu Beginn wurde die komplette Infrastruktur (s.u. „Tools“) für die Entwicklung von mir installiert. Dazu zählen: Versionsverwaltung, Build- System, das Dokumentations-, Anforderungs- und Fehler-Management. Im Laufe der Entwicklung der Software stellte sich heraus, dass sich viele Teilkomponenten sehr ähneln, sodass in der zweiten Projekthälfte beschlossen wurde, einen generativen Ansatz (MDSD) zu versuchen, was zu erheblichen Einsparungen und zu einer höheren Qualität führte. Im letzten Projektdrittel bestand einer der Aufgaben in der Anbindung der peripheren Systeme. Dazu wurde eine eigene Komponente, das sog. OMS (Output-Management-System) entwickelt, das mittels Messaging die Anbindung der externen Systeme (Topcall, IBM-WebSphere-Message- Broker, SAP-System, Topcall) realisiert.
  Position Software-Architektur und -Design, Testplanung, Qualitätssicherung, Entwicklung des Generators, Implementierung von Front- und Backend im Team
  Sprachen Java, XML, SQL
  Datenbanken Oracle
  Techniken MDSD (Model-Driven-Software-Development), TDD (Test-Driven-Design), JEE, Eclipse-RCP
  Testing JUnit (Backend), SWTBot (Frontend), Integrationstests
  Tools Eclipse, Oracle-WebLogic, Oracle-SQL-Developer, Subversion, Maven, TeamCity, Artifactory, Confluence, Jira
2003 - 2010 KDZ Siegen (quadlogic GmbH)
  Modernisierung einer Altanwendung (Textbildschirm, Eingabe ohne Maus) durch ein webbasiertes Frontend. Das Programm dient zur Abfrage und strukturierten Anzeige von Kataster-Daten. Es sind eine Fülle von Suchmasken und Detail-Ansichten implementiert worden. Ein für Web-Browser besonderes (vom Kunden gefordertes) Feature: die Anwendung ist komplett über die Tastatur bedienbar. Später hinzugekommen ist eine separate Benutzerverwaltung, die einen Web-Service als Schnittstelle anbietet und die darüber mit der Gebrauchsauskunft kommuniziert (Authentifizierung und Verwaltung von Benutzerprofilen). Die Plattform- und Sprachunabhängigkeit des Web-Service erlaubt es beliebigen Anwendungen, diesen Dienst zu nutzen. Weiter wurde die Anwendung in Grappa-Online, einem Tool zur Visualisierung von Kartenmaterial, integriert. 2007 wurde die Generierung von amtlichen Ausdrucken (PDF) implementiert. 2010 arbeiteten wir an einer Reporting-Komponente und einer Kooperation mit dem System ALKIS, einem bundesweiten Standard der Vermessungsverwaltung.
  Position Architektur, Entwicklung, Projektleitung, Support, Administrieren der Infrastruktur
  Sprachen Java, HTML, CSS, JavaScript, XML, SQL
  Datenbanken DB2, PostgreSQL
  Techniken Spring, Struts2, Ajax, Portlets, WebServices, Verteilte Transaktionen, SSL, SSO, PDF
  Tools Eclipse, Apache, Tomcat, Jetty, SVN, iText, Tortoise, Maven, Continuum, Jira
Okt. 07 - Juli 08 Versicherung (iks GmbH)
  Eine bekannte Versicherungsgruppe konzipierte und erstellt u.a. Verkaufsanwendungen für die Post- und die Citybank. Diese Applikationen werden z.B. in den Filialen der Postbanken betrieben, um den Kunden Versicherungen anzubieten bzw. Verträge gleich vor Ort abzuschließen. Durch den Zukauf eines weiteren Unternehmens musste die IT beider Partner vereinigt werden. Dazu wurden beispielsweise die bisherigen (Struts-)Anwendungen zum Jahreswechsel abgelöst durch eine auf Spring- MVC und Webflow basierende Java-Anwendung. Neben den Web-spezifischen Aufgaben mussten zudem die Anbindung an einen neuen Rechenkern (mittels Web-Service) und die Erstellung von dynamischen Antrags- und Vertragsformularen als PDF-Dokumente realisiert werden.
  Position Konzeption, Entwicklung, Softwaretests
  Sprachen Java, XML
  Datenbanken Oracle
  Techniken J2EE, Spring, Spring-MVC, WebFlow, Tiles, Struts, Web-Services, Ajax, jQuery, PDF
  Tools Eclipse, BEA-WebLogic, Tomcat, Toad, Maven, Apache-Continuum, TeamCity, Selenium, FitNesse
Apr. 06 - Sept. 07 Finanzdienstleister (iks GmbH)
  Ein namhafter Finanzdienstleister, der Wirtschaftsauskünfte über Privatpersonen erteilt, stellt ein in England auf einer AS/400 befindliches Altsystem auf ein J2EE-basierendes System um, welches auf einer BEAWebLogic- Plattform betrieben werden wird. Dazu mussten zahlreiche konzeptionelle Vorarbeiten durchgeführt werden: Datenmigration, die unscharfe (sog. Fuzzy-) Suche, Adress-Validation, Telefonauskunft, Scoring, etc. Die Tätigkeiten waren dabei zum größten Teil recht anspruchsvoll; einige Techniken aus dem Bereich der KI finden u.a. hier Anwendung. Gegen Ende des Projekts stand das Testen der Software im Vordergrund. In diesem Zusammenhang wurden automatisierte Tests mit JUnit, HttpUnit, Selenium (für die Web-Anwendung) und mit Jemmy (für die Swing- Applikation) entwickelt.
  Position Anforderungsanalyse, Softwaredesign, Konzeption von Schnittstellen & komplexen Algorithmen, Qualitätssicherung
  Sprachen Java, XML
  Datenbanken Oracle
  Techniken UML, KI, Mathematik, J2EE
  Tools Eclipse, MS-Visio, Borland CaliberRM, XML-Spy, Jude, BEA-WebLogic, Selenium, Maven, Jemmy
Okt. 03 - April 06 O2-Deutschland (Materna GmbH)
  Diese Web- und die dazugehörige WAP-Applikation wurde von mir und zwei weiteren Kollegen konzipiert und komplett implementiert. Sie war eine Verkaufsanwendung von Klingeltönen und Handy-Logos für den Mobilfunkanbieter O2 und gewann in der Zeitschrift Connect 9/04/S.129 den zweiten Platz.
  Position Konzeption & Entwicklung, (Kunden-)Support
  Sprachen Java, HTML, CSS, JavaScript, XML, SQL
  Datenbanken Oracle
  Techniken UML, J2EE: Servlets, JSP, JCLib
  Tools Eclipse, Ant, Tomcat, iPlanet, ClearCase
Aug. 04 - Jan. 06 Vodafone-Deutschland (Materna GmbH)
  Diese Anwendung ist funktionell zum größten Teil eine „Kopie“ der O2- Applikation (s.o.) und wurde optisch an das Layout von Vodafone angepasst. Sie gewann in der Zeitschrift Connect 9/04 den ersten Preis.
  Position Konzeption & Entwicklung, (Kunden-)Support
  Sprachen Java, HTML, CSS, JavaScript, XML, SQL
  Datenbanken Oracle
  Techniken UML, J2EE: Servlets, JSP, JCLib
  Tools Eclipse, Ant, Tomcat, iPlanet, ClearCase
Jan.-Jun. 2005 Siemens-Casper (Materna GmbH)
  Siemens-Avatar

Implementierung einer WAP-ähnlichen Handy-Anwendung, speziell für Siemens-Handys. Die Seiten waren nicht statisch, sondern durch lustige Figuren animiert. Für die Steuerung gab es ein eigens von Siemens dafür entwickelte DSL (Domain specific Language). Leider hatte Siemens nicht sehr viel später den gesamten Handy-Bereich aufgegeben, sodass dieses User-Interface nicht mehr bekannt wurde.

  Position Entwicklung
  Sprachen Java, XML, Casper-DSL
  Datenbanken Oracle
  Techniken J2EE, Servlets, JSP, TagLibs
  Tools JBoss, Eclipse, Ant, Tomcat
Jan.-Jul. 2004 telegate AG (11880)
 

Für die bekannte Telefonauskunft („hier werden Sie geholfen“) implementierte ich das Web-Frontend und die Datenbankschicht für die SMS-Auskunft. Die Anfragen, die per SMS vom Handy-Benutzer gesendet werden, landen in einem Applet bei den sog. Operatoren von Telegate und können mit Hilfe der angebundenen Nummernsuche schnell beantwortet werden. Die Antworten werden sodann dem Handy-Benutzer über ein SMS-Gateway zurückgesendet.

  Position Konzeption, Entwicklung, Support
  Sprachen Java, JavaSript, SQL
  Datenbanken Oracle
  Techniken Applets, Servlets, JSP, JCLib, SSL, DBAF
  Tools Eclipse, Ant, Tomcat, iPlanet

Eine PDF- oder Word-Version meines Profils finden Sie in den Downloads.