plog

Meine Projekte

Seit 6.2018

Honeywell Building Solutions, Hamburg

Erneuerung der Befeuerungssteuerung für den Flughafen Zürich

Implementierung von HMI-Prototypen für die Lotsen- und Wartenarbeitsplätze (Wartung) mit Qt und OSF/Motif in RHEL 7.

Kundenspezifische Anpassungen des Tower-HMI (Lotsenarbeitsplätze) in C++ mit dem Qt Framework. Implementierung Kundenspezifischer Bedienelemente mit Qt und CSS.

Kundenspezifische Anpassungen des Warten-HMI (Wartung) in C++ mit dem Qt Framework. Implementierung Kundenspezifischer Bedienelemente mit Qt und CSS. Anpassung von Legacy-Tools in C++ mit OSF/Motif GUI.

Generierung der Datenstrukturen zur Flugfeld-Grafiken und technischer „Blockschaltbilder“ in OpenGL mit Perl, XML.

Umfangreiche Anpassungen der Backend-Anbindung mit C++, CORBA, Socket-Kommunikation in XML mit Nutzung der Qt Bibliotheken.

Umfangreiche Anpassungen und Neuimplementierungen von Deployment- und Automatisierungsskripten mit Bash, Awk und Perl.

Behebung von Fehlern, Definition und Planung von QA-Maßnahmen.

Durchführung der QA-Maßnahmen, Code-Review, Auffinden kritischer Patterns, statische Codeanalyse, Behebung kritischer Probleme.

Einrichtung von virtuellen Maschinen zur Softwareentwicklung mit Centos Linux, Einrichtung eines Build-Hosts zur Softwareentwicklung mit Centos7.

Zum Einsatz kamen GCC8, Qt 5, MS Visual Studio Code, MS WSL in Windows 10 und 11 mit Centos, Qt-Creator, Perl, GDB, GNU-Make, RPM, Git, Jira, VirtualBox, CentOS 7+8, RHEL 7+8, Splint und Cppcheck.

Agiler Softwareentwicklungsprozess.

03.2017 – 8.2021

Kühne & Nagel, Hamburg

Software-Qualitätssicherung einer proprietären B2B Lösung aus den 1990er und 2000er Jahren in C und C++.
Evaluierung der Wartbarkeit des Legacy-Codes, Portierung nach GCC 4.8 unter AIX7 mit Behebung von Fehlern, Definition und Planung von QA-Maßnahmen zur Vorbereitung eines internen Release im August 2017.
Durchführung der QA-Maßnahmen, Code-Review, Auffinden kritischer Patterns, statische Codeanalyse, Behebung kritischer Probleme.
Anpassungen und Erweiterungen des Legacy-Buildsystems für das Deployment mit Ansible, Erstellung von RPM-Installationspaketen für die Plattformen AIX7 und Linux.
Einrichtung einer virtuellen Machine zur Softwareentwicklung mit Linux, Einrichtung eines Buildhosts zur Softwareentwicklung mit AIX7.
Verbesserung der Stabilität und der Zuverlässigkeit des Legacy-Codes. Implementierung Kundenspezifischer Änderungen und Erweiterungen.
Zum Einsatz kamen GCC, GDB, Eclipse CDT, GNU-Autotools, GNU-Make, RPM, Git, Bitbucket, Jira, VirtualBox, CentOS 7, Splint und Cppcheck.
Agiler Softwareentwicklungsprozess.

01.2016 – 03.2017

DRÄGER SAFETY, LÜBECK

Applikations- und Systementwicklung für ein Embedded-Linux System. Das Produkt ist eine Test- und Justierstation für Tragbare digitale Gasmessgeräte. Es handelt sich um ein modulares System, das aus bis zu elf vernetzten Embedded-Linux Systemen besteht.
Umfangreiches Refactoring und Redesign zur Vorbereitung der Erweiterung der Firmware.
Unterstützung für mobile Gasmessgeräte der neuen Generation.
Portierung von Openembedded nach Yocto.
Verbesserung der Stabilität und der Zuverlässigkeit der Anlage.
Zum Einsatz kamen Yocto, Eclipse, GCC for ARM Cross-Compiler, CMake, Git, Bitbucket, Jira, Enterprise Architect und DOORS.
Agiler Softwareentwicklungsprozess.

03.2014 – 12.2015

DRÄGER SAFETY, LÜBECK

Embedded Software Design und Implementierung für ein mobiles Gasmessgerät, insbesondere OOD und C++ Implementierung, Infrastruktur und Entwicklungsumbebung. Zum Einsatz kommen uC/OS, C++, Eclipse, IAR EWARM, Gnu Make, Jenkins.

03.2012 – 03.2014

Dräger safety, Lübeck

Embedded Software Design und Implementierung für ein System zur Prüfung und Justierung mobile Gasmessgeräte, insbesondere Ablaufsteuerung der Test- und Justierungsfunktionen. Zum Einsatz kommen embedded Linux, C++, STL, Qt, Eclipse, Jenkins.

10.2011 – 03.2012

Philips Medical Systems, Hamburg

Configuration Manager im Bereich GTC (Generators, Tubes and Components) bei der Philips Medical Systems DMC GmbH. Eingesetzt wurden vor allem Rational Tools, wie ClearCase, ClearQuest, Requisite Pro, Rose Realtime und verschiedene Embedded Software Entwicklungstools.

08.2007 – 09.2011

Dräger Medical, Lübeck

Graphical User Interface Design und Implementierung für die Bedieneinheit intensivmedizinischer Beatmungsgeräte. Entwicklung von Softwarekomponenten zur graphischen Darstellung physiologischer Parameter in der Intensivmedizin.

Pflege und Erweiterung eines Frameworks für die Implementierung von Bedienkonsolen für Beatmungsgeräte und medizinische Monitore in der Intensivmedizin. Diese User Interfaces basieren auf Active X Softwarekomponenten unter Microsoft Windows XP Embedded.

In dem Projekt kommen Microsoft Visual Studio und Visual C++ zur Entwicklung der Software zum Einsatz. Für die Konfiguration der Komponenten wurde ein eigenes Datenmodell mit XML realisiert.

Ein Teil der Tätigkeit bestand in Windows System- und Treiberprogrammierung.

Zum Requirements Management kam Telelogic Doors zum Einsatz. Zum Change Management Clearquest und zum Configuration Management Clearcase im UCM Prozess. Außerdem Rational Rose Cpp sowie Rhapsody zum Design und der Dokumentation in UML. Die Kodierung erfolgte in C++ und XML.

Neue Features wurden in agilem Prozess mit Scrum realisiert.

Die Arbeit am GUI- und Infrastrukturframework für die intensivmedizinischen Geräte fand in einem internationalen Team (50% Lübeck, 50% USA) statt.

08.2006 – 7.2007

NXP, Hamburg

Firmwareentwicklung für digitale TV-Karten und USB Adapter für die digitale ISDB TV Norm (Japan/Brasilien).

Pilotprojekt MDD/E mit Telelogic Rhapsody/C++ – Design/Entwicklung von Softwarekomponenten in der Firmwareentwicklung.

Erstellung einer Firmwarekomponente zur Dekodierung von Video Transport Streams der ISDB-T Norm. C/C++ mit Greenhills Integrity und Greenhills Multi/Mips Entwicklungsumgebung.

Erstellung einer Firmwarekomponente zur Kommunikation mit Smart Cards nach ISO 7816. C/C++ mit Greenhills Integrity und Greenhills Multi/Mips Entwicklungsumgebung.

Dokumentation der Firmware-Architektur und Entwicklungsumgebung.

Anforderungs- und Configuration-Management mit Telelogic Doors Telelogic Change und Telelogic Synergy.

07.2005 – 7.2006

Philips Medical Systems, Hamburg

Erweiterung und Redesign der grafischen Benutzerschnittstelle eines digitalen Radiografiearbeitsplatzes.

Planung und Implementierung erweiterter, halbautomatisch unterstützter Aufnahmetechniken für Röntgenuntersuchungen mit mehreren Einzelbildern.

Planung und Implementation eines Sicherheitskonzepts um die Patientendaten und das System vor unbefugtem Zugriff zu schützen.
Erfüllung erhöhter Sicherheitsanforderungen durch den Einsatz von Personen- und Systemauthentifizierung, Anwendung digitaler
Zertifikate, Verschlüsselung, TLS und Implementation eines Audit-Trail Logging. Planung und Analyse der Anforderungen. Koordination der Entwickler.

Optimierung des digitalen Workflow durch die Verbindung verschiedener Tools und Prozesse in der Gesamtapplikation.
Entwurf der Daten- und Signalflüsse.

Implementation der Erweiterungen der Benutzerschnittstelle im Bereich Patientenverwaltung und Untersuchungssteuerung mit C++/Qt, OSF Motif, TCL/TK.

Zum Einsatz kommen C++/Qt, OSF Motif und ToolTalk unter SUN Solaris 8 und 10. Außerdem wird Ingres II als lokale SQL Datenbank angebunden.

Dokumentation und Entwurf mit Rational Rose und UML. Configuration Management mit Rational ClearCase und CVS.

01.2005 – 06.2005

Philips Medical Systems, Hamburg

Anforderungsanalyse, Dokumentation und Anforderungsmanagement für eine Plattform- und Systemübergreifend einzusetzende Softwarekomponente zur Erstellung und Belichtung diagnostischer Röntgenfilme aus digitalen Daten.

Anforderungsanalyse und Design der grafischen Benutzerschnittstelle.

Analyse und Design der Schnittstellen zu anderen Komponenten.

Dokumentation: UML und MS Office, Rational CASE-Tools.

07.2004 – 12.2004

Philips Medical Systems, Hamburg

Leitung der Systemverifikation für ein digitales Röntgensystem.

Planung und Durchführung der Tests.

Organisation der Testsysteme, Räume und Testmannschaft.

Aufbau und Wartung der Testdatenbank, Organisation und Berichterstattung.

MS Office und Access, Rational ClearQuest.

01.2004 – 06.2004

Philips Medical Systems, Hamburg

Entwurf und Spezifikation einer XML basierten Lösung zur Internationalisierung eines heterogenen Softwaresystems.

Dies umfasste die Sammlung zu übersetzender Texte, deren Übersetzung und die Verteilung auf die verschiedenen Zielformate wie X11/Motif, Qt, TCL/TK, Java.

Die Anforderung war es, alle zu übersetzenden Texte zusammenzuführen und zur Bearbeitung professioneller Übersetzer aufzubereiten. Dazu wurde eine eigene Übersetzungslösung entworfen und Implementiert. Dieses Anwendungsprogramm musste für „Nicht-Entwickler“ leicht erlernbar und benutzbar sein und unter anderem die Kontrolle der Vollständigkeit der Übersetzung liefern und sicherstellen, dass die Texte in jeder Sprache in die entspechenden GUI-Elemente passen.

Design der Benutzeroberfläche des Übersetzungsools.

Analyse des Softwarebuild-Prozesses und Entwurf geeigneter Schritte zur vollautomatischen Erzeugung spezifischer Datensätze für die verschiedenen eingesetzten GUI-Technologien: Qt, Motif, TCL/TK, Swing.

Entwurf und Implementation der Datentransformationen der Texte aus den zentralen XML Dateien in die Zielformate mit XSLT. Entwurf und Implementation der Integration in den Software-Buildprozess mit Skriptsprachen.

Solaris, X11, Motif, Qt, Swing, TCL/TK, XML, XSLT, Shell, AWK, Perl.

11.2002 – 12.2003

Philips Medical Systems, Hamburg

Entwurf einer Softwarekomponente zur Erzeugung medizinischer radiologischer Filme („Röntgenfilme“) aus digitalen Bilddaten.

Teilprojektleitung bei der Implementation mit 4 Entwicklern.

Implementation in Java/Swing, grafisches Layout und Komposition, Beschriftung und grafische Annotation.

Interaktives Gestalten des Filminhalts mit der Maus.

Integration einer Fremdkomponente zur Ansteuerung der Laserbelichter, Datenkonversion in XML mit XSLT-Transformationen. Konversion und Aufbereitung der Bilddaten.Workflow-Integration, Anbindung über IPC unter Solaris, Datenbankanbindung mit JDBC.

Solaris, X11, Java/Swing, XML, XSLT, Eclipse, ANT, Ingres, SQL, JDBC, C++.

06.2002 – 07.2006

Philips Medical Systems, Hamburg

Software Architekt für ein Produkt der med. Radiographie.

Ausarbeitung des Designs neuer Komponenten und Anleitung der Entwickler. Review der Detailed Designs der Entwickler.

Dokumentation: Rational Rose, UML.

Eingesetzte Technologien: C/C++, QT, Java/Swing, XML, XSLT, relationale Datenbank.

01.2002 – 10.2002

Philips Medical Systems, Hamburg

Entwicklung und Implementation einer grafischen Benutzerschnittstelle zur Bildverwaltung und Bildanalyse digitaler Röntgenbilder.

Es sollte ein kompletter Neuentwurf und die Neuimplementierung eines Browsers und Betrachters für digitale Röntgenbilder in C++ und Qt durchgeführt werden.

Entwurf- und Implementation von Klassenbibliotheken zur Modellierung der Patienten- und Bilddaten.

Design und Implementation einer grafischen Benutzerschnittstelle zur Verwaltung der Aufnahmen.C++/Qt, SQL, Ingres, ESQLC, Solaris, Sniff++, SUN Workshop, GCC, ToolTalk, ClearCase, DDTS, Rational Rose.

02.2001 – 12.2001

Philips Medical Systems, Hamburg

Mitarbeit in Konzeption, Entwicklung und Implementation einer Softwareinfrastruktur für komponentenorientierte Softwareentwicklung.

Konzeption und Entwurf eines generischen Komponentenmodells. Definition und Implementation von Infrastrukturpaketen für Komponenten wie Event-Distribution, Startup/Shutdown, Konfiguration, Logging, Kommunikation, Access Right, User Roles, etc.

Modellierung mit Rose und UML. Anwendung der Design Patterns nach Gamma, Helm, Johnson, Vlissides.

Dokumentation.Java, Jini, RMI, XML, Jbuilder, Eclipse, Rose, UML, Sniff++, Rational ClearCase, MS Office.

03.2000 – 01.2001

Philips Medical Systems, Hamburg

Entwicklung und Implementation einer grafischen Benutzerschnittstelle zur Patientenverwaltung, Untersuchungskontrolle und Aufnahmeverifikation für ein digitales Röntgensystem.Implementation der Patientenverwaltung mit Anbindung an eine Ingres SQL Datenbank.Entwurf- und Implementation des Unteruchungssteuerung mit umfangreicher Interprozesskommunikation zur Verbindung mit dem bildgebenden System.

Design und Implementation einer grafischen Benutzerschnittstelle zur Verifikation der Aufnahmen.

C/Motif, TCL/TK, SQL, Ingres, ESQLC, Solaris, SUN Workshop, GCC, ToolTalk, CAN, ClearCase.

04.1999 – 02.2000

Philips Medical Systems, Hamburg

Entwicklung und Implementation einer automatischen Filmlayout-Auswahl für ein digitales Radiografiesystem unter Solaris in TCL/TK.

Es waren Algorithmen zu entwickeln zur vollautomatischen Layout und Formatauswahl basierend auf Zahl, Größe und Anordnung der Röntgenbilder.

Design und Implementation einer grafischen Benutzerschnittstelle zur Kontrolle und Steuerung der automatischen Entscheidungen. Systemanbindung mittels IPC, Datenanbindung an SQL-Datenbank mit TCL/TK Erweiterungen.

TCL/TK, C, SQL, Solaris, SUN Workshop, GCC, ToolTalk.

01.1999 – 04.1999

NCSE/ EDV Consulting, Bremen

Altdatenmigration von IBM/DB2 (MVS) nach Solaris/Oracle 7.3.

Programmierung in C, UNIX Shell. EBCDIC nach ASCII Konvertierung.

Programmierung und Einsatz des SQL*Loaders.

02.1999

NCSE/ EDV Consulting, Bremen

Durchführung einer ORACLE PL/SQL Schulung (Wochenendseminar) für Entwickler in Bremen.

08.1998 – 01.1999

Neumann Consulting und Software GmbH für Bremer Lagerhausgesellschaft, Bremen

Serverseitige Programmierung einer Datenbankanwendung zur Transportlogistik in PL/SQL unter ORACLE.

Erstellung von Stored Procedures in PL/SQL und Datenbank-Implementierung in SQL.

Implementation von Packages zur Kommunikation mit angeschlossenen Logistiksystemene (Containerbestand am Terminal) unter Benutzung erweiterter Oracle PL/SQL Packages.

Implementation einer Schnittstelle zu SAP mit PL/SQL.

Oracle 7.3 und 8, PL/SQL, C, Shellskript, Solaris, Windows, Visual Source Safe, SQL*Loader, SQL+, Crystal Reports.

02.1998 – 08.1998

E.Dok GbR, Bremen

Entwurf unf Implementation einer Anwendung zur Migration von Datenbanken des CAE-Systems RUPLAN von HP-UX nach MS Windows und zurück. GUI Design und Implementierung in C++/MFC.

Datenbankanalyse, Implementation geeigneter Konversionsalgorithmen. Verifikation, Sicherstellung der Datenintegrität.

C++, MFC, HP-UX, Windows NT, RUPLAN.

06.1997 – 08.1997

Universität Bremen

Programm mit grafischer Benutzerschnittstelle und Online Datenvisualisierung zur Erfassung geophysikalischer Messungen an Sedimentbohrkernen.

Realisiert in MS Visual Basic 5 unter Windows NT 4.0.

06.1996 – 05.1997

Universität Bremen

Programmsystem zur Visualisierung und Interpretation digitaler Echolotdaten.

Realisiert in C und C++ unter HPUX (HP 9000) und Solaris 2.5 (Sun UltraSPARC) mit X11 und OSF Motif.