Projekte und Schulungen

Eine Auswahl der bisher von mir durchgeführten Projekte und Schulungen.

Implementierung einer Registration Authority (RA)

Projekt

Aufgaben:

  • Konzeption und Realisierung einer RA

  • Anbindung an CA mittels CMP Protokoll

  • Schnittstelle zu den Clients mittels ACME

  • Verifizierung einer Anfrage mit Abfrage von Dritt-Systemen mittels REST

Technologien:

  • Sprachen: Java

  • Framework für Microservices: Quarkus

  • Werkzeuge: Eclipse, Visual Studio Code

  • Laufzeitumgebung: Kubernetes / OpenShift

  • Entwicklungsinfrastruktur: Azure DevOps

Funktion:

  • Consultant

  • Software-Entwickler

  • DevOp

Zeitraum:

07/2020 -

Modernisierung einer Deployment-Automatisierung

Projekt

Aufgaben:

  • Migration auf Jenkins 2 mit Pipeline-Jobs

  • Erstellung einer Shared-Lib mit Deployment Build-Steps

Technologien:

  • Sprachen: Ruby, Puppet, Python, Groovy

  • Werkzeuge: Vim, Visual Studio Code

  • Betriebssysteme: RedHat Enterprise Server, CentOS

  • VCS: Git (Bitbucket)

Funktion:

  • Consultant

  • Software-Entwickler

  • Administrator

Zeitraum:

07/2018 - 09/2020

Realisierung eines Systems zur automatischen Ausgabe von Zertifikaten

Projekt

Aufgaben:

  • Konzeption und Realisierung eines Certificate Proxies

  • Anbindung einer CA mittels CMP

  • Verifizierung einer Anfrage mit Abfrage einer CMDB über REST Schnittstellen

Technologien:

  • Sprachen: Java, JavaEE 7

  • Werkzeuge: Eclipse, Jenkins, BlackDuck

  • Application-Server: RedHat EAP 6 / 7

  • Betriebsystem: RedHat Enterprise Linux

  • VCS: Git (Bitbucket)

Funktion:

  • Consultant

  • Software-Entwickler

  • Administrator

Zeitraum:

07/2017 - 06/2020

Build-Umgebung für RPM-Module

Projekt

Aufgaben:

  • Modernisierung der Build-Umgebung für RPM-Module

  • Umstieg auf Jenkins 2 mit Pipeline-Jobs

  • Schaffung einer Shared-Library mit RPM Build-Steps

  • Migration der vorhandenen Jobs

Technologien:

  • Build-System: Jenkins 2

  • Sprachen: Groovy, Python

  • Werkzeuge: Vim

  • Betriebssysteme: RedHat Enterprise Server, CentOS

  • VCS: Git (Bitbucket)

Funktion:

  • Consultant

  • Software-Entwickler

  • Administrator

Zeitraum:

01/2017 - 05/2018

Konfiguration von Application-Servern mit Puppet

Projekt

Aufgaben:

  • Konfiguration von Application-Servern (Wildfly, Tomcat, Open Liberty) mit Puppet

  • Weiterentwicklung von Puppet Modulen

Technologien:

Funktion:

  • Consultant

  • Software-Entwickler

  • Administrator

Zeitraum:

01/2017 - 05/2018

Beratung und Unterstützung im Bereich Industrie 4.0 / BigData

Projekt

Aufgaben:

  • Beratung bei der Auswahl von Technologien

  • Unterstützung beim Aufbau der (System-)Architektur und des Designs

  • Aufbau von Prototypen

Technologien:

  • Sprachen: Java 8, JavaEE 7, Vert-X

  • Application Server: Wildfly 10, Wildfly Swarm

  • BigData: Kafka, Spark, Cassandra

  • Iot: MQTT, OPC UA

  • Architektur: Microservices mit DC/OS und Docker

  • Werkzeuge: eclipse Neon, Maven 3, Redmine, Jenkins

  • VCS: git mit Gerrit

Funktion:

  • Consultant

  • Architekt

  • Software-Entwickler

Zeitraum:

01/2016 - 03/2017

Einführung in Maven und Jenkins

Schulung

Aufgaben:

  • Einführung in den Bau von Java Software mit Maven 3

  • Nutzung von Jenkins zur Automatisierung und zum Aufbau einer Continuous Integration Pipeline

Technologien:

  • Sprachen: Java 7, JavaEE 7

  • Application Server: WildFly

  • Werkzeuge: eclipse Mars, Maven 3, Jenkins

  • VCS: git

Funktion:

  • Dozent

Zeitraum:

02/2016 - 02/2016

Beratung und Unterstützung beim Aufbau eines Teams zur Entwicklung von Java (EE) Anwendungen

Projekt

Aufgaben:

  • Schulung und Coaching von Entwicklern

  • Unterstützung beim Aufbau der (System-)Architektur und des Designs

  • Aufbau von Prototypen

  • Aufbau einer Entwicklungsumgebung

Technologien:

  • Sprachen: Java 7, JavaEE 7

  • Entwicklungsumgebung: eclipse Luna

  • Betriebssysteme: Windows 7, CentOS 6

  • Application Server: WildFly 8.x

  • VCS: Git

  • Projektmanagement: Redmine

  • CI: Jenkins, Gerrit und Sonar Qube

Funktion:

  • Consultant

  • Architekt

  • Software-Entwickler

Zeitraum:

04/2014 - 12/2015

Konfiguration von Applicaton Servern

Projekt

Aufgaben:

  • Deployment von Java von Serversystmen

  • Paketierung von WildFly 8.x und JBoss EAP 6 als RPM Pakete

  • Konfiguration und Management von WildFly 8 und JBoss EAP 6 mittels Puppet

Technologien:

  • Sprachen: Ruby, Puppet

  • Entwicklungsumgebung: Geppetto

  • Betriebssysteme: RedHat Enterprise Server, CentOS

  • Application Server: WildFly 8, JBoss EAP 6

  • VCS: subversion

Funktion:

  • Consultant

  • Software-Entwickler

  • Administrator

Zeitraum:

01/2015 - 09/2015

Puppet - Konfigurationsmanagement von A-Z

Schulung

Aufgaben:

  • Konzeption und Erstellung der Schulungsunterlagen für ein 5-tätiges Seminar

  • Durchführung der Schulungen in den Räumen der Kunden

  • Anpassung der Schulung an individuelle Anforderungen

Technologien:

  • Puppet 3.x OpenSource

  • Werkzeuge: vim, Geppetto, git

  • VCS: git

  • Dokumentation: AsciiDoctor

Funktion:

  • Dozent

Zeitraum:

07/2014 - 03/2016

Projekt FALKE

Projekt

Aufgaben:

  • Aufbau und Betreuung des Build-Systems und der Build-Infrastruktur

  • Anbindung von WebServices über den ESB

  • Implementierung des Backends

  • Migration von Daten aus den abzulösenden Systemen

Technologien:

  • JavaEE 6 Application Server mit Fat-Clients

  • Bibliotheken: JPA, JUnit, DBUnit

  • Werkzeuge: eclipse 3.6, cvs, Hudson / Jenkins, WebLogic 11g, Ant

  • Techniken: TDD, Continuous Integration

Funktion:

  • Senior Software-Entwickler

  • Build Manager

Zeitraum:

02/2011 - 11/2013

Durchführung von Seminaren zum Thema Java und OOP

Schulung

Aufgaben:

  • Durchführung von Seminaren in den Räumen des Kunden

  • Ausarbeitung der Schulungsinhalte nach Vorgaben

Technologien:

  • vermittelte Themen: OOA, OOD und OOP, Java (SE)

  • Techniken: Java 6, UML, Swing, Java API

  • Werkzeuge: eclipse 3.6

Funktion:

  • Dozent

Zeitraum:

10/2010 - 05/2011

Evaluierung und Implementierung eines Konfigurationsmanagement Systems für die Wartung von Linux-Servern

Projekt

Aufgaben:

  • Evaluierung der Konfigurationsmanagement-Software Puppet

  • Aufsetzen einer Pilot Umgebung und Implementierung typischer Konfigurationsszenarien

  • Inbetriebnahme der produktiven Umgebung und Beratung / Schulung der Administratoren

  • Programmierung von kleineren, kundenspezifischen Erweiterungen (Facts)

Technologien:

  • Sprachen: Ruby, Puppet 0.2.5

  • Betriebssysteme: RedHat Enterprise Server, CentOS

  • Web-Server: Apache 2.2 inkl. Passenger Modul (mod_ruby)

Funktion:

  • Consultant

  • Software-Entwickler

  • Administrator

Zeitraum:

09/2010 - 01/2011

Visualisierung von Energieverbäuchen

Projekt

Aufgaben:

  • Ermittlung der Daten aus einer Access Datenbank (JDBC-ODBC Bridge)

  • Berechnung Aufbereitung von Leistungs- und Verbrauskurven

  • Erstellung von Diagrammen mittels jFreeChart

  • Export in PDF- oder Excel-Dateien

  • Erstellung einer Web-Oberfläche zur Bedieunung über Touch-Screen

Technologien:

  • Java Web-Anwendung mit JSF (Tomcat)

  • Framework: Spring 2.5

  • Bibliotheken: iText, jFreeChart, Apache POI, jQuery

  • Werkzeuge: eclipse 3.6 (WTP, Mylyn), subversion, Redmine, Maven, Hudson

  • Technologien: TDD

Funktion:

  • Architekt

  • Software-Entwickler

Zeitraum:

08/2010 - 09/2010

Ergänzung einer PDF-Datei um Informationen aus einer Datenbank

Projekt

Aufgaben:

  • Ermittlung eines Verfahrens um eine bestehende PDF-Datei mit weiteren Informationen zu ergänzen.

  • Implementierung der Routinen mittels Test-Driven Development (TDD)

  • Konzeption der Schnittstelle zur Einbettung des Moduls in die Systeme des Kunden

Technologien:

  • J2EE Web-Anwendung (JBoss, Informix)

  • Bibliotheken: iText

  • Werkzeuge: eclipse 3.4 (WTP, JBoss Tools), cvs

  • Technologien: TDD

Funktion:

  • Software-Entwickler

Zeitraum:

06/2010 - 06/2010

Evaluation von Certification Authority Software

Projekt

Aufgaben:

  • Erstellung einer Liste von Anforderungen an eine Certification Authority Software

  • Beurteilung von Systemen anhand der aufgestellten Anforderungen

  • Dokumentation der Evaluierung und Aussprechen einer Empfehlung

Technologien:

  • Linux System unter CentOS 4.2

  • Red Hat Certificate Server, OpenCA, JBoss

  • Werkzeuge: vi(m), bash, PuTTY

Funktion:

  • Consultant

  • Administrator

Zeitraum:

10/2007 - 11/2007

Entwicklung einer CRM Lösung für die Zeitarbeitsbranche

Projekt

Aufgaben:

  • Ermittlung der Anforderungen und Erstellung eines Lastenheftes

  • Design der Software auf Grundlage der Anforderungen

  • Support beim Betrieb des Prototypen und des Piloten

  • Administration der Infrastruktur für die Entwicklung den Betrieb des Prototypen

Technologien:

  • J2EE Web-Anwendung: Apache Tomcat 4.0, MySQL 4.0

  • Bibliotheken: Hibernate, Apache Struts, Log4J, JavaMail, iText, jFreeChart, quartz

  • Werkzeuge: eclipse 2.5 und 3.0, cvs / subversion

Funktion:

  • Architekt

  • Software-Entwickler

Zeitraum:

03/2004 - 12/2005