a Randstad company

Erfahrener Softwareentwickler (Schwerpunkt C++ und Python), Objektorientiertes Design, Softwarearchitektur, Anwendungsentwicklung, Systemprogrammierung (Unix, Windows, Embedded), Datenbankmodellierung

Profil
Referenzen (1)

"Der Consultant ist ein sehr erfahrener und absolut selbstständig arbeitender Softwareentwickler mit umfassenden technologischen Kenntnissen. Er identifizierte sich stets in vorbildlicher Weise mit seiner Tätigkeit und realisierte sehr beharrlich seine technologisch anspruchsvollen und komplexen Aufgaben. Sein sicherer Blick für das Wichtige und Wesentliche und die stets planvolle, methodische und gründliche Arbeitsweise führten auch unter hohem Termindruck immer zu einer überzeugenden Ergebnisqualität. Jederzeit war der IT-Spezialist bereit für die Erreichung der Projektziele persönliche Belange zurückzustellen. Besonders hervorzuheben ist seine im höchsten Maße bemerkenswerte Auffassungsgabe und analytische Fähigkeit. Der Consultant hat seine Aufgaben stets zu unserer vollsten Zufriedenheit erfüllt. Durch sein aktives und kooperatives Wesen war der Consultant bei Vorgesetzten und Kollegen gleichermaßen anerkannt und beliebt. Er trug in hohem Maße zu einem effizienten und harmonischen Betriebsklima bei. Wir danken dem IT-Spezialist für seine herausragenden Leistungen [...]. Für seinen weiteren privaten und beruflichen Werdegang wünschen wir dem Consultant weiterhin alles Gute und viel Erfolg."

— Projekt Entwickler, Architekt im Bereich Basissoftware, 03/02 - 04/07
Referenz durch Abteilungsleiter, internationaler Konzern (8.000 MA), vom 30.04.07
Projekt im Rahmen einer Festanstellung durchgeführt
Top-Skills
C++ Python SQL Java XSLT XML HTML Javascript Shell
Verfügbar ab
09.01.2023
Aktuell verfügbar - Der Experte steht für neue Projektangebote zur Verfügung.
Verfügbar zu
100%
davon vor Ort
20%
Einsatzorte

PLZ-Gebiete
Länder
Ganz Deutschland, Österreich, Schweiz

Deutschland: bevorzugt Süddeutschland, auch Ausland

Weitere Länder: im Prinzip alle englischsprechenden Länder

Remote-Arbeit
möglich
Art des Profiles
Freiberufler / Selbstständiger
Der Experte ist als Einzelperson freiberuflich oder selbstständig tätig.

3 Monate

2022-10

2022-12

Überarbeitung von XSLT Stylesheets eines CAD/CAM Systems

Software-Entwickler XML XSLT
Rolle
Software-Entwickler
Projektinhalte

Überarbeitung von XSLT Stylesheets für die Generierung von Reports eines CAD/CAM Systems (Tebis).

Produkte
XML XSLT FOP Tebis 4.0
Kenntnisse
XML XSLT
Kunde
VCC Production
3 Jahre 6 Monate

2019-01

2022-06

Entwicklung einer Modellvariante eines Dialysegeräts für den US-amerikanischen Markt

Software-Entwickler C Python
Rolle
Software-Entwickler
Projektinhalte

Entwicklung einer Modellvariante eines Dialysegeräts für den US-amerikanischen Markt

  • Implementierung von neuen Features auf Mikrocontroller-Ebene.
  • Interrupt-Programmierung zur Überwachung und Auswertung von Gerätesensoren. 
  • Erweiterung des proprietären Betriebssystems des Geräts. 
  • Implementierung einer Bibliothek für State-Machines für die C Programmiersprache. 
  • Codeanalyse-Werkzeug zur Generierung von Zustandsdiagrammen. 
  • Auswertung von Messwerten mit Python-Skripten. 
  • Erstellung, Durchführung und Dokumentierung von Systemtests. 
  • Refactoring und Unit Testing von Legacy Code.

Produkte
Visual Studio Infineon C167 Mikrocontroller CMake Tessy Subversion Doxygen Plantuml Polarion Jenkins Windchill
Kenntnisse
C Python
Kunde
Fresenius
Einsatzort
Schweinfurt
9 Monate

2018-01

2018-09

Erweiterung und Pflege einer Web-Applikation zur Steuerung von Baustellensignalträgern

Software-Entwickler Python XML HTML ...
Rolle
Software-Entwickler
Projektinhalte

Erweiterung und Pflege einer Web-Applikation zur Steuerung von Baustellensignalträgern

  • Erweiterung der Anwendungs-API (REST).
  • Konzeption und Implementierung von Datenbankmigrationen. 
  • Implementierung einer Schnittstelle zu Kundensystemen zur Übermittlung von Statusänderungen der Baustellensignalisierung auf XML Basis (Datex II). 
  • Implementierung einer automatischen Schemavalidierung von JSON Nachrichten des MQTT Bus. 
  • Implementierung einer MQTT Simulation für eine Testumgebung. 
  • Überarbeitung des Benutzerberechtigungssystems. 
  • Erstellung von Benutzerschnittstellen. 
  • Refactoring, Unit Testing, Dokumentation.

Produkte
Flask SQLAlchemy PostgreSQL MQTT Git Linux (Ubuntu) jQuery
Kenntnisse
Python XML HTML Javascript REST JSON
Kunde
AIT Austrian Institute of Technology GmbH
Einsatzort
Wien
5 Jahre 1 Monat

2012-10

2017-10

Produktverifikation einer Insulinpumpe zur Diabetes-Therapie

Software-Entwickler Java Python C# ...
Rolle
Software-Entwickler
Projektinhalte

Produktverifikation einer Insulinpumpe zur Diabetes-Therapie:

  • Anpassung von Spezifikation und Implementierung der Systemtests an neue Pumpen-Features.
  • Wartung, Anpassung und Erweiterung der Testsysteme und Werkzeugumgebung an neue Versionen der Pumpensoftware und -hardware. 
  • Durchführung und Überwachung einer Vielzahl von Verifizierungen neuer Versionen der Pumpensoftware.
  • Auswertung, Erfassung und Bearbeitung nachgewiesener Diskrepanzen zur Produktspezifikation auf Simulator- oder Produktseite.
  • Erstellung von Testprotokollen gemäß den Dokumentationsanforderungen für internationale medizinische Produkte.

Migration der Testskriptumgebung auf eine neue Qualitätsmanagementsoftware:
  • Entwicklung von Software für die automatisierte Migration.
  • Durchführung und Verifikation.

Migration der Quellcodeumgebung auf eine neue Versionsverwaltungssoftware:

  • Konzeption und Erstellung von Build-Skripten.
  • CruiseControl-Konfigurationen.

Weiterentwicklung der Systemtestumgebung für eine neue Generation von Insulinpumpen:
  • Überarbeitung des Testkonzepts anhand von Lessons Learned.
  • Umfassendes Redesign und Refactoring des Testframeworks. 
  • Entwicklung eines Code Generators in Python zur automatisierten Erzeugung der Schnittstelle zu Systemtestklassen anhand von Spezifikationen in XML. 
  • Portierung des Frameworks auf eine neue Hardware- und Software-Umgebung.
  • Konzeption und Implementierung einer Job-Queue in Python zur Verteilung von Tests auf einen Pool von Testmaschinen.
  • Training und Coaching von Entwicklern für die neue Framework-Generation.
  • Implementierung und Pflege von Systemtests.

Produkte
Ant CruiseControl Subversion Perforce HP Quality Center TestTrack Rational RequisitePro Eclipse Windows SPS Bus
Kenntnisse
Java Python C# C
Kunde
Roche Diabetes Care AG
Einsatzort
Mannheim
3 Jahre

2009-10

2012-09

Produktverifikation einer Insulinpumpe zur Diabetes-Therapie (Schweiz)

Software-Entwickler Java C# Python ...
Rolle
Software-Entwickler
Projektinhalte

Produktverifikation einer Insulinpumpe zur Diabetes-Therapie:

  • Implementierung eines Simulators der graphischen Benutzeroberfläche des neuen Produkts. 
  • Erweiterung des Simulator-Frameworks und der Testumgebung um neue Funktionalität. 
  • Implementierung verschiedener Code Generatoren in Python für die Auswertung XML spezifizierter Schnittstellen und Benutzeroberflächen. 
  • Erweiterung des Ant Build-Prozesses mit Javascipt und JSON Konfigurationsdateien zur Integration der Code Generierungsphase. 
  • Entwicklung einer Vielzahl von automatisierten Systemtests nach Testfallspezifikation. 
  • Durchführung und Überwachung der Testläufe. 
  • Erfassung, Auswertung und Bearbeitung nachgewiesener Diskrepanzen zur Produktspezifikation auf Simulator- oder Produktseite. 
  • Erstellung von Testprotokollen gemäß den Dokumentationsanforderungen für internationale medizinische Produkte.

Produkte
Ant Eclipse CruiseControl HP Quality Center Rational RequisitePro Windows
Kenntnisse
Java C# Python Javascript XML XSLT
Kunde
Roche Diabetes Care AG
Einsatzort
Burgdorf (Schweiz)
1 Jahr 7 Monate

2007-10

2009-04

Portierung, Migration, Redesign und Erweiterung einer heterogenen Software-Umgebung

Software-Entwickler, Trainer, Coach Python TCL Perl ...
Rolle
Software-Entwickler, Trainer, Coach
Projektinhalte

Migration, Redesign und Erweiterung einer historisch gewachsenen Werkzeugsammlung für die Auswertung statistischer Simulationen von optischen Systemen in einem Rechencluster (LSF):

  • Portierung von TCL nach Python. 
  • Modularisierung durch Refactoring und Redesign zu Bibliotheken für verbesserte Erweiterbarkeit und Wiederverwendbarkeit.
  • Einführung qualitätssichernder Maßnahmen durch automatisierte Modultests und umfassende Dokumentation. 

Einführung neuer Konzepte zur Flexibilisierung der Architektur: 
  • Datenhaltung in relationalen Datenbanken. 
  • Entwicklung von Domain Specific Languages zu Konfigurationszwecken. 
  • Erweiterung um neue Funktionalitäten.

Betreuung einer Einführung der Programmiersprache Python als abteilungsweite Standardsprache:
  • Konzeption und Durchführung der Schulung von Mitarbeitern. 
  • Begleitendes Coaching während der Umstellung. 
  • Beratung bezüglich Vorgehensweisen und Werkzeugauswahl. 
  • Konzeption und Umsetzung eines Bugtracking-Systems.

Entwicklung eines Werkzeugs für die automatisierte Erzeugung von Reports aus Simulationsergebnissen in Form von PDF-Dateien:
  • Integration in bestehende Prozesse.

Produkte
TeX PDF Gnuplot SQLAlchemy SQLite Trac LSF Cluster Linux (Suse) numpy
Kenntnisse
Python TCL Perl SQL XML
Kunde
Carl Zeiss SMT AG
Einsatzort
Oberkochen
5 Jahre 1 Monat

2002-07

2007-07

Framework-Entwicklung für Fahrzeuginformationssysteme

Software-Entwickler, Architekt, Trainer (Anstellung) C++ Java Python ...
Rolle
Software-Entwickler, Architekt, Trainer (Anstellung)
Projektinhalte

Erweiterung einer bestehenden Framework-Umgebung:

  • Portierung (Windows CE nach QNX), Fehlerberichtigung und Optimierung einer Bibliothek für Interprozesskommunikation.
  • Implementierung einer Abstraktionsschicht für betriebssystemspezifische Dienste als Grundlage einer Simulations- und Testumgebung für die Produkte des Unternehmens.
  • Implementierung eines Code Generators in Python nach C++ für eine Beschreibungssprache für Modulschnittstellen.
  • Implementierung eines konfigurierbaren Zustandsautomaten für die Koordination eines Sprachdialogsystems und verschiedener Benutzereingabegeräte.

Entwicklung einer neuen Generation eines Frameworks für graphische Benutzeroberflächen:

  • Mitarbeit am Architekturkonzept. 
  • Konzeption einer deklarativen Beschreibungssprache für Benutzeroberflächen. 
  • Implementierung eines Code Generators für die Beschreibungssprache. 
  • Konzeption und Implementierung einer Komponentenarchitektur für Anwendungslogik. 
  • Implementierung von Prototypen. 
  • Erstellung von umfangreicher Dokumentation. 
  • Unit Testing.
  • Konzeption und Implementierung einer Bibliothek für einfache und effiziente Kommunikation und Ereignisübermittlung zwischen Anwendungskomponenten (vergleichbar QT Signals/Slots).
  • Konzeption und Implementierung eines konfigurierbaren und flexibel einsetzbaren Toolkits von Oberflächenelementen für das neue Framework.
  • Konzeption und Leitung von Schulungen für die neue Framework-Generation (auch international).
  • Coaching von Projektentwicklern in der Verwendung des neuen Frameworks.

Produkte
QNX Windows CE Win32 API pthreads CAN Bus Eclipse DocBook
Kenntnisse
C++ Java Python XML DTD XML Schema
Kunde
Harman Becker
Einsatzort
Karlsbad
3 Jahre 1 Monat

1999-03

2002-03

Anwendungsentwicklung für Auftragssoftware

Software-Entwickler (Anstellung) Visual Basic SQL C ...
Rolle
Software-Entwickler (Anstellung)
Projektinhalte

Implementierung einer Anwendung für die Verwaltung von Zugriffsrechten auf die Kundenstammdatenbank der T-Online.


Verschiedene Anwendungen zur automatisierten Synchronisation von Datenbanken der T-Online: Netzwerkprogrammierung im firmeninternen Netzwerk für verteilte Anwendungen.

Schnittstellensoftware in Python für die Kommunikation mit Partnerunternehmen für eine große medizinische Spenderdatenbank (DKMS):

  • Konzeption und Implementierung. 
  • Automatisierte Auswertung von Anfragen der Partner. 
  • Automatisierte Erzeugung und verschlüsselte Übermittlung von Nachrichten an die Partnerunternehmen. 
  • Integration des Systems in die bestehenden Prozesse. 
  • Unterstützung verschiedener Datenformate und Übertragungsarten der beteiligten Unternehmen. 
  • Konzeption einer Beschreibungssprache für Datenformate zur erleichterten Anpassung des Systems an neue Anforderungen.

Entwicklung von Software zur Auswertung von großen Datenmengen von CD für eine medizinische Datenbank.


Projekt für mobile Datenerfassung für eine Abteilung der Universitätsklinik Dresden:

  • Mitarbeit am Architekturkonzept. 
  • Konzeption und Implementierung der Benutzeroberfläche zur Dateneingabe auf Basis von Windows CE Handhelds. 
  • Implementierung der Software zur Synchronisation von zentraler Datenbank und mobilen Datenbanken. 
  • Erstellung des relationalen Datenmodells.

Entwicklung eines Informationssystems zur Verwaltung von Patientendaten für die Universitätsklinik Dresden:
  • Mitarbeit am Architekturkonzept.
  • Konzeption und Implementierung von Benutzeroberflächen. 
  • Erstellung von relationalen Datenmodellen.

Entwicklung von Software zur Abfrage und Auswertung von Daten eines medizinischen Analysegeräts.

Produkte
Oracle 9i RS232 MFC Windows CE Linux (Suse) DCE RPC Solaris
Kenntnisse
Visual Basic SQL C C++ XML XPath PL/SQL HTML Perl
Kunde
Molpe GmbH
Einsatzort
Tübingen
7 Monate

1998-06

1998-12

Diplomarbeit "Hierarchischer Z-Buffer"

Diplomand C++
Rolle
Diplomand
Projektinhalte

Implementierung und Evaluierung eines neuen Verfahrens für die schnelle Visualisierung von großen 3D-Modellen durch verbesserte Verdeckungsberechnung.

Produkte
IRIX OpenGL Linux
Kenntnisse
C++
Kunde
Universität Tübingen
Einsatzort
Tübingen

5 Jahre 6 Monate

1993-07

1998-12

Informatik

Diplom-Informatiker (Uni), Universität Tübingen
Abschluss
Diplom-Informatiker (Uni)
Institution, Ort
Universität Tübingen
Schwerpunkt

  • Programmiersprachen
  • Graphische Datenverarbeitung

Weiterbildung:

  • 07/2003 Schulung "Developing with QNX" (QNX Certified Training)
  • 05/2005 Lehrgang "Moderation von Code Inspections"
  • 03/2006 MOST Schulung


  • Entwickler
  • Architekt
  • Reviewer
  • Trainer
  • Coach

Deutsch Muttersprache
Englisch Verhandlungssicher
Serbokroatisch Grundlagen

Top Skills
C++ Python SQL Java XSLT XML HTML Javascript Shell
Produkte / Standards / Erfahrungen / Methoden
Fachliche Schwerpunkte:

  • Objektorientierte Programmierung
  • Softwarearchitektur: Konzeption und Implementierung von Bibliotheken und Frameworks
  • Werkzeugentwicklung: Parser, Interpreter, Compiler, Programmgeneratoren
  • Thread- und Systemprogrammierung
  • Web-, Anwendungs- und Datenbankentwicklung
  • Komplexe Algorithmen und Datenstrukturen
  • Migration / Portierung / Integration / Test
  • Technische Dokumentation, Coaching, Training


Methoden:

  • Objektorientiertes Design, UML, Entwurfsmuster
  • Softwaretechnik: Refactoring, Unit Testing
  • Generative Softwareentwicklung (Templates)
  • Sprachdesign: Domain Specific Languages, Model Driven Architecture
  • Funktionale (seiteneffektfreie) Programmierung
  • Relationale Datenmodellierung, ORM, Normalisierung

Betriebssysteme
Unix
Experte
Windows
Experte
QNX
Fortgeschritten
Android
Basics

Programmiersprachen
Python
Experte
C++
Experte
C
Experte
XML, XSLT, DTD, XML Schema
Experte
Java
Fortgeschritten
C#
Basics
JavaScript
Fortgeschritten
Perl
Fortgeschritten
PL/SQL
Fortgeschritten
Ruby
Fortgeschritten
Shell
Fortgeschritten
Tcl/Tk
Basics
TeX, LaTeX
Basics
Assembler
Z80, M68000
Datenbanken
Postgres
Basics
Oracle
8i/9i, auch PL/SQL
MS SQL Server
Basics
SQLite
Fortgeschritten
Access

Datenkommunikation
MOST
Fortgeschritten
CAN
Fortgeschritten
HTTP, CGI, POP3, SMTP
Fortgeschritten
OSF/DCE RPC
Fortgeschritten
RS232
Fortgeschritten
TCP/IP
Fortgeschritten
Windows Netzwerk
Einrichtung, Administration
SPS
Fortgeschritten

Hardware
embedded Systeme
PDAs, Handhelds, SH4/StrongARM basierte Systeme
PC Mikrocontroller C167 Mikrocontroller Z80 Mikrocontroller M68000
Publikationen:

2001: Desktop Utility "KatMouse" für Windows

2002: Artikel "Delegating Messages to Multiple Objects" Python Cookbook, 1. Auflage, O'Reilly

2005: Open-Source Bibliothek "C++ Machine Objects": Statechart Programmierung in C++ (Einsatz in mehreren Unternehmen und Organisationen)

Automotive
Medizintechnik
Telekommunikation
Optische Industrie
Ihr Kontakt zu Gulp

Fragen? Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Jetzt bei GULP Direkt registrieren und Freelancer kontaktieren