Entwicklungsleitung, Abteilungsleitung, Teamleitung, Projektmanagement, Technologie-Scouting, Strategie-Beratung, Coaching, Team-Enabling, Model Driven Software Development
Aktualisiert am 01.06.2024
Profil
Freiberufler / Selbstständiger
Verfügbar ab: 08.09.2024
Verfügbar zu: 80%
davon vor Ort: 90%
Software Engineering
Deutsch
Englisch
gute Kenntnisse
Italienisch
in Grundzügen
Spanisch
in Grundzügen

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)
nicht möglich

Projekte

Projekte

2017 (2 Monate): Entwicklung eines hybriden Systems

 

Rolle: Freiberuflich

Bereich: Beratung und Entwicklung

 

Beschreibung:

Eine bestehende C++-Code-Basis wird in Python gewrappt und um neue Merkmale erweitert. Damit wird sie leicht im umgebenden Python Ökosystem nutzbar. Umsetzung einer proprietären nativen Persistenzschicht. Integration in eine Webservices-Umgebung.

 

Aufgaben:

Beratung, Entwicklung, Schulung

 

Werkzeuge:

Python 3.6, Django + REST framework, requests, C++ 11, Cereal, PyBind11


2017 (4 Monate): Portierung einer Client-Server-Applikation

 

Rolle: Freiberuflich

Bereich: Portierung

 

Beschreibung:

Eine komplexe Client-Server-Applikation wird modernisiert. Ausreichende Testabdeckung wird sichergestellt, um die Qualität zu wahren. Teilautomatische Übersetzung der Client-Teile mit 2to3 und mit 4to5 wird angewandt. Auf der Server-Seite wird das Linux-Betriebssystem ebenso aktualisiert wie der Stack bestehend aus Apache, Python und Django.

 

Aufgaben:

Portierung

 

Werkzeuge:

Microsoft Visual Studio 2008 / 2015, C++ 99 / 14, Python 2.7/ 3.6, PySide 1 / 2


2017 (4 Monate): Objekt-Erkennung und -Verfolgung

 

Rolle: Freiberuflich

Bereich: Konzeption und Umsetzung

 

Beschreibung:

Dynamisch sich bewegende Objekte werden mittels Video-Aufzeichnung und geeigneten Bildverarbeitungs-Algorithmen erkannt und danach in ihrer Bewegung verfolgt. Die dadurch ermittelten Trajektorien werden dreidimensional dargestellt.

Single Board Computer, CPU: Broadcom BCM2835, Windows PC

 

Aufgaben:

Konzeption und Umsetzung

 

Werkzeuge:

Raspberry Pi, Kamera, OpenCV, C++, Python, OpenGL, PySide


2017 (3 Tage): Beratung im Bereich der Testautomatisierung

 

Rolle: Freiberuflich

Bereich: Technische Beratung

 

Beschreibung:

Im Bereich des end-to-end Tests für moderne Web basierte Single Page Applications sucht der Kunde nach Lösungen für das effiziente automatische Testen. Der Ist-Zustand wird im Nutzungskontext analysiert. Möglichkeiten und Grenzen der Abstraktion werden aufgezeigt. Ein einfacher Prototyp wird erstellt. Eine Vorgehensempfehlung wird ausgesprochen und mit einer Aufwandschätzung versehen.

 

Aufgaben:

Ist-Analyse, Technologie-Evaluation, Konzept-Erarbeitung, Vorgehens-Empfehlung, Aufwand-Schätzung

 

Werkzeuge:

Python, Selenium, PyTractor, Eclipse, AngularJS, GIT


2016 (8 Monate): Robotik im Sportbereich

 

Rolle: Freiberuflich

Bereich: Konzeption und Umsetzung

 

Beschreibung:

Ein Trainingsgerät für den Sportbereich wird neu konzipiert. Außerdem wird ein Prototyp desselben implementiert. Mechanik und Elektrik werden robust, langlebig und minimalistisch gehalten. Besonderes Augenmerk wird auf zeitgemäße Bedien- und Software-Schnittstellen gelegt. Als charakteristisches Merkmal ist die dynamische und flexible Konfigurierbarkeit hervorzuheben. Die Bedienung erfolgt wahlweise über Bluetooth und Android oder über eine Web-Schnittstelle. 3 BLDC-Motoren werden von einem PWM-gesteuerten Treiber versorgt. 2 Servos erhalten ebenfalls PWM-Signale und dienen der Positionierung. 1 Schrittmotor wird von einem über I2C angesteuerten Treiber versorgt und dient der Förderung.

 

Aufgaben:

Konzeption, System- und SW-Architektur, Bau eines Prototyps

 

Werkzeuge:

ARM STM32F4, ATMEGA328P, Design Spark Mechanical


2015 (1 Monat): Traceability für System- und SW-Architektur (Automotive)

 

Rolle: Freiberuflich

Bereich: Beratung, Modell Technologie

 

Beschreibung:

Im Automobilumfeld werden zur Qualitätsverbesserung in einem ASPICE-Prozess sowohl Maßnahmen als auch Werkzeuge auf den Prüfstand gestellt. Die Nachverfolgbarkeit und die Zusammenhänge der Artefakte einer exemplarischen Produktentwicklung sollen besonders herausgearbeitet werden. Dazu wird eine System Architektur in SysML entworfen und verbessert. Darauf aufsetzend wird eine SW Architektur in UML erstellt. Traceability wird jeweils hergestellt zu Requirement- und Test-Artefakten.

 

Aufgaben:

Analyse, Beratung, System- und SW-Architektur, Tooling

 

Werkzeuge:

IBM Rhapsody mit SysML und UML, PTC IMS (CM+SI) bzw. Reqtify / Doors


2014-2015 (1 Jahr): Lizenzierungs- und Administrations-Portal eines SW Herstellers

 

Rolle: Freelance

Bereich: Konzeption und Umsetzung

 

Beschreibung:

Ein Software Hersteller vertreibt seine Produkte über ein Portal. Die Abwicklung aller kundenrelevanten Aktivitäten wie Registrierung, Bestellung, Linzensierung, Software-Download und Wartung wird unterstützt. Gewählt wird eine Client-/Server-Lösung mit einem cloud-basierten Module-Store.

 

Aufgaben:

Konzeption und Umsetzung in einem agilen Entwicklungs-Team.

 

Werkzeuge:

Python, HTML, Jinja, Javascript, Django + REST, Linux


2012-2014 (2 Jahre): cosMatx(R) Modelling Environment

 

Rolle: Freelance

Bereich: Innovation, Modell Technologie

 

Beschreibung:

Konzeption und Erstellung einer Meta-Modell-Umgebung. Der Fokus wird auf Grafik, Skriptbarkeit und Erweiterbarkeit gerichtet. Es wird Modell-zu-Modell- und Modell-zu-Text-Transformation unterstützt. Modelle können direkt in der Entwicklungsumgebung ausgeführt und überwacht werden. Hauptbestandteil ist ein validierender Mehr-Phasen-Modell-Compiler. Die Kernbestandteile werden - basierend auf OMG CMOF - in C++ erstellt. Damit wird gute Performanz auch bei großen Modellen erreicht. Flexible und dynamische Handhabung wird durch den Einsatz von Skripttechnologie erreicht. Dies eröffnet auch den Zugriff auf einen riesigen Bereich an bestehenden Bibliotheken und Hilfsmodulen sowie die Adaption an verschiedenste andere Werkzeuge, beispielsweise über COM-Technologie. Bequeme Code-Erzeugung wird durch eine Template-Sprache ermöglicht. Unterstützung für Merge- und Import-Operationen führt zu umfangreichem Reuse bestehender Modelle. Feingliedrige Lizenzierung erlaubt freie Gestaltung bezüglich der Produktpalette.

 

Aufgaben:

Konzeption, Projektleitung, Entwicklungsleitung und Umsetzung in einem agil arbeitenden Team.

 

Werkzeuge:

Python, C++, Jinja, BOOST, QT + PySide, Windows, OMG CMOF


2013 (2 Monate): Backoffice-Anbindung für einen Webshop

 

Rolle: Freiberuflich

Bereich: Konzept, Entwicklung

 

Beschreibung:

Der Betreiber eines Webshops möchte die Daten des Portals mit den Werkzeugen des Backoffice automatisiert verknüpfen.

Dazu wird ein REST-Adapter für das Portal entwickelt. Dieser kommuniziert dann auf der Backoffice-Seite mittels MS COM und anderen Technologien mit den Werkzeugen.

 

Aufgaben:

Konzeption und Umsetzung

 

Werkzeuge:

Python, Django + REST framework, MS COM


2012 (2 Monate): Automatische Dokumenterzeugung

 

Rolle: Freiberuflich

Bereich: Konzept und Umsetzung

 

Beschreibung:

Ein Finanzdienstleister bietet für sein Online Geschäft die Erzeugung von Berichten an. Quelle sind dabei Transaktionsvermerke aus Datenbanken. Konfigurierbare Mustervorlagen erlauben eine flexible und maßgeschneiderte Dokumenterzeugung. Verschiedene Ausgabeformate wie PDF, HTML, CSV und XML werden unterstützt.

 

Aufgaben:

Konzept und Umsetzung

 

Werkzeuge:

Python, ReportLab, Django


2011 (1 Jahr): Technische Projektleitung für ein grosses Entwicklungsteam

 

Rolle: SWE Berater

Bereich: Technische Projektleitung

 

Beschreibung:

Für Trocknungswagen entwickelt ein weltweit tätiger Hersteller eine neue Generation der Steuerungs- und der Bedienungssoftware. Ein Entwicklungsteam mit 20 Mitgliedern stellt sich der Herausforderung, innovative Funktionalität mit modernen Entwicklungsmethoden und agilem Entwicklungsprozess umzusetzen.

 

Aufgaben:

Der Kandidat übernimmt die technische Projektleitung für das Entwicklungsteam, ermittelt und deckt den Schulungsbedarf. Das Team entwickelt Kernbestandteile des Softwaresystems, trifft Maßnahmen zur Sicherstellung der Qualität und setzt diese um. Die Zusammenarbeit im Team wird optimiert.

 

Werkzeuge:

ARM 9, IBM Rhapsody, C++, BOOST, QT, USB, SqLite.


2010 (3 Wochen): Evaluation eines Echtzeitbetriebssystems

 

Rolle: SWE Berater

Bereich: Beratung, Schulung

 

Beschreibung:

Moderne Mikropumpen bedürfen der Ansteuerung durch Software, die auf einem deterministischen Echtzeitbetriebssystem aufsetzt. Der Kunde benötigt Unterstützung zur Auswahl eines solchen Betriebssystems und eine Einführung in das Erstellen einer geeigneten Software-Architektur.

 

Aufgaben:

Ermittlung der Anforderungen. Einführung in Echtzeitbetriebssysteme und Software-Architektur. Suche nach geeigneten

Betriebssystemen und jeweilige Charakterisierung. Präsentation und Empfehlung an den Kunden.


2010 (1 Woche): Tooleinsatz im regulierten Umfeld

 

Rolle: SWE Berater

Bereich: Beratung

 

Beschreibung:

Auch für bahntechnische Anwendungen steigt die Nachfrage nach moderneren Entwicklungsmethoden und -Werkzeugen. Herausfordernd ist dabei die gleichzeitige Einhaltung branchentypischer Regulatorien.

 

Aufgaben:

Bewertung des Werkzeugeinsatzes und des Entwicklungsprozesses unter Berücksichtigung der bahntechnischen

Normen. Präsentation der Empfehlung für das weitere Vorgehen.

 

Werkzeuge:

IBM Rhapsody


2010 (3 Wochen): Beratung für Architektur-Strategie

 

Rolle: SWE Berater

Bereich: Strategie, Beratung

 

Beschreibung:

Elektrische Gleichrichter-Anlagen für Mobilfunknetze werden künftig verstärkt auch im außereuropäischen Markt eingesetzt. Entsprechend steigen die Anforderungen an die Agilität der Softwareentwicklung drastisch. Ein Workshop zusammen mit dem Kunden soll dabei helfen, das Potenzial dafür aufzudecken und zu evaluieren.

 

Aufgaben:

Analyse der Architektur. Ermittlung technischer Schwachpunkte und Potenziale. Sammlung geeigneter Technologien zur strategischen Verbesserung des Software-Systems. Durchführung und Moderation eines Evaluationsworkshops.


2010 (6 Wochen): Contextual Inquiry für Beschichtungsanlagen

 

Rolle: SWE Berater

Bereich: Usability Engineering

 

Beschreibung:

Moderne Beschichtungsanlagen für metallische Werkstücke stellen vielfältige Anforderungen an die Usability der Bedienungssoftware. Gleichzeitig steigt der Kostendruck. Es sollen daher Verbesserungs- und auch Einspar-Potentiale aufgedeckt werden.

 

Aufgaben:

Die Analyse von Handbüchern und Sichtung der Anlagen vor Ort helfen, die wichtigsten Anforderungen an entsprechende

Softwaresysteme zu ermitteln. Aus Interviews direkt am Einsatzort ergeben sich zudem benutzertypische Anforderungen. Ein Use Case Modell wird erstellt, um die funktionalen Anforderungen zu manifestieren. Mehrere Contextual Inquiries legen die spezifischen Anforderungen verschiedener Nutzer offen. [Name auf Anfrage] zeigt in einer Präsentation die Potenziale und gibt den Entscheidungsträgern eine Empfehlung.

 

Werkzeuge:

Contextual Inquiry


2010 ( 3 Wochen )

Erstellung einer Schedulability-Expertise

Für Frequenz-Umrichter wird Software benötigt, die sehr hohe Anforderungen bezüglich des zeitlichen Determinismus erfüllen muss. Der Hersteller eines solchen Systems stellt in seiner Software eine auffallend hohe Prozessor-Auslastung fest. Dies wird als potentielles Risiko angesehen.

Der Consultant analysiert daher die Softwarearchitektur und setzt ein mathematisches Modell zur Bewertung der Schedulability ein. Die Entscheidungsträger erhalten eine Bewertung des Systemzustandes und eine Empfehlung für das weitere Vorgehen.


Aufgaben: Analyse der Software-Architektur. Durchführung einer Rate Monotonic Analysis. Befähigung des Kunden, solche Analysen künftig selbst durchzuführen. Präsentation der Vorgehensempfehlung.

Werkzeuge: Rate Monotonic Analysis

2008 ( 2 Jahre )

Redesign einer Gebäude-Automations-Software

Der Consultant übernimmt einen innovativen Ansatz zur Gebäude-Automation und entwickelt diesen zu einer tragfähigen, erweiterbaren Lösung weiter. Dabei wird besonderer Wert auf eine offene
Architektur gelegt, die eine einfache und flexible Integration verschiedenster Geräte und Feldprotokolle sicherstellt.


Ergänzend zum Kernprodukt wird eine maßgeschneiderte Test- und Simulationsinfrastruktur entwickelt, mit der sich die Qualität der Software kontinuierlich sicherstellen lässt. Zudem unterstützt dies die Konfiguration und Inbetriebnahme von Produkten vor der Auslieferung an die Kunden.


Aufgaben: Analyse des bestehenden Konzeptes und der Prototypen-Implementierung. Anschliessend Definition und Umsetzung der Architektur, Aufbau und Projektleitung eines vierköpfigen
Entwicklerteams.


Werkzeuge: Embedded Linux, Eclipse, Java, JamVM, openArchitectureWare.

2007 ( 6 Monate )

Automatisches Testing für Aufzugsanlagen

Der Kunde ist ein weltweit tätiger Hersteller, der die Qualität der Software seiner Liftanlagen verbessern will. Gleichzeitig soll der Aufwand für manuelle Tests reduziert und damit die Release-Zyklen deutlich verkürzt werden. Nach einer Analyse des bisherigen Vorgehens bei Entwicklung und Test werden Vorschläge zum Testen auf Unit-, Komponenten- und Systemebene erarbeitet und diskutiert.


Das entwicklungsbegleitende Testen soll fortan im Fokus stehen. Ein erster Aufbau für den automatischen Test einer Anlagen-Komponente wird implementiert und in Betrieb genommen.


Aufgaben: Analyse des Entwicklungs- und Testvorgehens. Erarbeitung von Verbesserungsvorschlägen. Beratung der Test- und Qualitätsleitung. Implementierung eines ersten automatisierten Komponententests.


Werkzeuge: Microsoft Windows, Infragistics Komponenten, Interface-Hardware von National Instruments, CAN Interface-Hardware von Vector. Entwicklungsumge-bung: Microsoft Visual Studio.

Sprachen: C#

2006

Einführung von Modellierungstechnologie für Medizinprodukte

Der Kunde ist ein führender Hersteller von Hörgeräten, der innovatives Zubehör für seine Produkte entwickelt. Mit dem bisherigen Entwicklungsvorgehen wird die geforderte Qualität nicht erreicht. Die
Transparenz in der Software fehlt - Änderungen und Fehlerkorrekturen sind sehr aufwändig.

Schrittweise wird die bestehende Software in ein UML-Modellierungs-Werkzeug eingepflegt und aus demselben Werkzeug generiert. Design und Verhalten der Software werden so sichtbar. Das
Entwicklungsteam wird in die Lage versetzt, Änderungen schnell durchzuführen und die bestehenden Fehler rasch zu beseitigen.


Aufgaben: Einführen von Telelogic Rhapsody, Schulung in UML, Testbare Adaption der generierten Software via USB an einen C#-Client.


Werkzeuge: ARM9, Nucleus, Microsoft Windows, UML mit Rhapsody. 

Entwicklungsumgebung: Microsoft Visual Studio, Mentor Graphics Edge.

Sprachen: C, C++, C#.

2005

Architektur und Projektleitung bei einem Hörgerätehersteller

Der Kunde ist ein führender Hersteller von Hörgeräten und Zubehör. Er löst ein vorhandenes Gerät durch ein neues ab. Dies ist nur möglich mit neuen Werkzeugen und Prozessen für die Software-Entwicklung.


Zum Projekt gehören die Unterstützung der Projektleitung, die Planung der Tätigkeiten und die Entwicklungsarbeiten in enger Zusammenarbeit mit dem Kundenteam. Die umfangreiche maßgeschneiderte Test-Infrastruktur wird konzipiert, implementiert und von den Entwicklern
flexibel und erfolgreich eingesetzt. Die Spezialisten konzipieren ein Configuration Management und stellen ein automatisches Build-System bereit.


Aufgaben: Architektur, Unterstützung der Projektleitung, Testing und Configuration Management.


Werkzeuge: ARM9, Sciopta RTOS, Microsoft Windows, UML mit Rhapsody. Entwicklungsumgebung: Microsoft Visual Studio, WinIDEA.


Sprachen: C, C++, Python. Tools: CppUnit, Boost, GccXml, BuildBot, PEG.

2004

Integration in einem VoIP-Projekt

Ein namhafter Dienstanbieter im Telefonie-Umfeld erhält ein komplexes VoIP-basiertes Client-Server-System, das auf seine Wünsche zugeschnitten ist. Zusammen mit Dritt-Herstellern werden Hard- und
Soft-Phones entwickelt und mit landestypischen Anforderungen auf der Server-Seite abgestimmt. Der Soft-Client kommuniziert über SOAP mit dem Application-Server.


Das Projektteam entwickelt dafür Macromedia-Flash-Plug-Ins und testet Sie systematisch mit Unit-Tests. Die Web-Service-Komponenten werden in Python eingebunden, um flexibel und skriptgesteuert mit den Servern kommunizieren zu können. Dieses Potential ist auch für Wartungs- und Monitoring-Aufgaben unter Linux nutzbar. Die Entwicklungsumgebung für die Übersetzung und grafische Anpassung einer
Rezeptionisten-Applikation sowie eines Microsoft-Outlook-Plug-Ins wird weitgehend automatisiert.


Aufgaben: Unit-Testing, Performance-Optimierung, Automatisierung und Scripting


Werkzeuge: Microsoft Windows, Red Hat Linux.

Entwicklungsumgebung: Microsoft Visual Studio. Sprachen: C++, Python. Tools: CppUnit, Boost,
gSoap.


weitere Projekte auf Anfrage

Aus- und Weiterbildung

Aus- und Weiterbildung

4 Jahre 7 Monate
1993-03 - 1997-09

Studium zum Diplom-Ingenieur Maschinenbau & CA-Technologien

Diplom-Ingenieur, Fachhochschule Konstanz
Diplom-Ingenieur
Fachhochschule Konstanz
9 Jahre
1982-08 - 1991-07

Abitur

bestanden, Klettgau-Gymnasium in Tiengen
bestanden
Klettgau-Gymnasium in Tiengen

Kompetenzen

Kompetenzen

Top-Skills

Software Engineering

Produkte / Standards / Erfahrungen / Methoden

IBM Rapsody
iLogix
openArchitectureWare
Rational Rose
Rational Rose RealTime
Telelogic

Werdegang

 

02/2012 ? heute

Freiberuflicher Berater für Software Engineering

 

01/2012 ? 01/2012

Software Engineering Consultant, Mettler-Toledo AG, Greifensee

 

07/2001 ? 12/201

Software Engineering Consultant, Zühlke Engineering AG, Schlieren

 

10/1997 ? 06/2001

Development Engineer Control Systems, SIG / FIAT / ALSTOM, Neuhausen am Rheinfall

 

03/1993 ? 09/1997

Studium zum Diplom-Ingenieur Maschinenbau & CA-Technologien, Fachhochschule Konstanz

 

10/1991 ? 09/1992

Wehrdienst, Technische Schule des Heeres in Eschweiler

Betriebssysteme

Linux
RT-OS
verschiedenste
Unix
Windows

Programmiersprachen

C
C#
C++
Java
Python
XML
XS

Datenbanken

MySQL
PostgreSQL
SQLite

Datenkommunikation

CAN
Corba
Ethernet
Internet
LAN
REST
RS232
SOAP
USB
WebServices

Hardware

Embedded
PC
Server

Berechnung / Simulation / Versuch / Validierung

Matl
Simuli

Entwicklung eines Simulators für ein komplexes technisches System

Design / Entwicklung / Konstruktion

MD
MDA
OOA
OOD

Branchen

Branchen

Industrie

Telekommunikation

Medizin

 

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)
nicht möglich

Projekte

Projekte

2017 (2 Monate): Entwicklung eines hybriden Systems

 

Rolle: Freiberuflich

Bereich: Beratung und Entwicklung

 

Beschreibung:

Eine bestehende C++-Code-Basis wird in Python gewrappt und um neue Merkmale erweitert. Damit wird sie leicht im umgebenden Python Ökosystem nutzbar. Umsetzung einer proprietären nativen Persistenzschicht. Integration in eine Webservices-Umgebung.

 

Aufgaben:

Beratung, Entwicklung, Schulung

 

Werkzeuge:

Python 3.6, Django + REST framework, requests, C++ 11, Cereal, PyBind11


2017 (4 Monate): Portierung einer Client-Server-Applikation

 

Rolle: Freiberuflich

Bereich: Portierung

 

Beschreibung:

Eine komplexe Client-Server-Applikation wird modernisiert. Ausreichende Testabdeckung wird sichergestellt, um die Qualität zu wahren. Teilautomatische Übersetzung der Client-Teile mit 2to3 und mit 4to5 wird angewandt. Auf der Server-Seite wird das Linux-Betriebssystem ebenso aktualisiert wie der Stack bestehend aus Apache, Python und Django.

 

Aufgaben:

Portierung

 

Werkzeuge:

Microsoft Visual Studio 2008 / 2015, C++ 99 / 14, Python 2.7/ 3.6, PySide 1 / 2


2017 (4 Monate): Objekt-Erkennung und -Verfolgung

 

Rolle: Freiberuflich

Bereich: Konzeption und Umsetzung

 

Beschreibung:

Dynamisch sich bewegende Objekte werden mittels Video-Aufzeichnung und geeigneten Bildverarbeitungs-Algorithmen erkannt und danach in ihrer Bewegung verfolgt. Die dadurch ermittelten Trajektorien werden dreidimensional dargestellt.

Single Board Computer, CPU: Broadcom BCM2835, Windows PC

 

Aufgaben:

Konzeption und Umsetzung

 

Werkzeuge:

Raspberry Pi, Kamera, OpenCV, C++, Python, OpenGL, PySide


2017 (3 Tage): Beratung im Bereich der Testautomatisierung

 

Rolle: Freiberuflich

Bereich: Technische Beratung

 

Beschreibung:

Im Bereich des end-to-end Tests für moderne Web basierte Single Page Applications sucht der Kunde nach Lösungen für das effiziente automatische Testen. Der Ist-Zustand wird im Nutzungskontext analysiert. Möglichkeiten und Grenzen der Abstraktion werden aufgezeigt. Ein einfacher Prototyp wird erstellt. Eine Vorgehensempfehlung wird ausgesprochen und mit einer Aufwandschätzung versehen.

 

Aufgaben:

Ist-Analyse, Technologie-Evaluation, Konzept-Erarbeitung, Vorgehens-Empfehlung, Aufwand-Schätzung

 

Werkzeuge:

Python, Selenium, PyTractor, Eclipse, AngularJS, GIT


2016 (8 Monate): Robotik im Sportbereich

 

Rolle: Freiberuflich

Bereich: Konzeption und Umsetzung

 

Beschreibung:

Ein Trainingsgerät für den Sportbereich wird neu konzipiert. Außerdem wird ein Prototyp desselben implementiert. Mechanik und Elektrik werden robust, langlebig und minimalistisch gehalten. Besonderes Augenmerk wird auf zeitgemäße Bedien- und Software-Schnittstellen gelegt. Als charakteristisches Merkmal ist die dynamische und flexible Konfigurierbarkeit hervorzuheben. Die Bedienung erfolgt wahlweise über Bluetooth und Android oder über eine Web-Schnittstelle. 3 BLDC-Motoren werden von einem PWM-gesteuerten Treiber versorgt. 2 Servos erhalten ebenfalls PWM-Signale und dienen der Positionierung. 1 Schrittmotor wird von einem über I2C angesteuerten Treiber versorgt und dient der Förderung.

 

Aufgaben:

Konzeption, System- und SW-Architektur, Bau eines Prototyps

 

Werkzeuge:

ARM STM32F4, ATMEGA328P, Design Spark Mechanical


2015 (1 Monat): Traceability für System- und SW-Architektur (Automotive)

 

Rolle: Freiberuflich

Bereich: Beratung, Modell Technologie

 

Beschreibung:

Im Automobilumfeld werden zur Qualitätsverbesserung in einem ASPICE-Prozess sowohl Maßnahmen als auch Werkzeuge auf den Prüfstand gestellt. Die Nachverfolgbarkeit und die Zusammenhänge der Artefakte einer exemplarischen Produktentwicklung sollen besonders herausgearbeitet werden. Dazu wird eine System Architektur in SysML entworfen und verbessert. Darauf aufsetzend wird eine SW Architektur in UML erstellt. Traceability wird jeweils hergestellt zu Requirement- und Test-Artefakten.

 

Aufgaben:

Analyse, Beratung, System- und SW-Architektur, Tooling

 

Werkzeuge:

IBM Rhapsody mit SysML und UML, PTC IMS (CM+SI) bzw. Reqtify / Doors


2014-2015 (1 Jahr): Lizenzierungs- und Administrations-Portal eines SW Herstellers

 

Rolle: Freelance

Bereich: Konzeption und Umsetzung

 

Beschreibung:

Ein Software Hersteller vertreibt seine Produkte über ein Portal. Die Abwicklung aller kundenrelevanten Aktivitäten wie Registrierung, Bestellung, Linzensierung, Software-Download und Wartung wird unterstützt. Gewählt wird eine Client-/Server-Lösung mit einem cloud-basierten Module-Store.

 

Aufgaben:

Konzeption und Umsetzung in einem agilen Entwicklungs-Team.

 

Werkzeuge:

Python, HTML, Jinja, Javascript, Django + REST, Linux


2012-2014 (2 Jahre): cosMatx(R) Modelling Environment

 

Rolle: Freelance

Bereich: Innovation, Modell Technologie

 

Beschreibung:

Konzeption und Erstellung einer Meta-Modell-Umgebung. Der Fokus wird auf Grafik, Skriptbarkeit und Erweiterbarkeit gerichtet. Es wird Modell-zu-Modell- und Modell-zu-Text-Transformation unterstützt. Modelle können direkt in der Entwicklungsumgebung ausgeführt und überwacht werden. Hauptbestandteil ist ein validierender Mehr-Phasen-Modell-Compiler. Die Kernbestandteile werden - basierend auf OMG CMOF - in C++ erstellt. Damit wird gute Performanz auch bei großen Modellen erreicht. Flexible und dynamische Handhabung wird durch den Einsatz von Skripttechnologie erreicht. Dies eröffnet auch den Zugriff auf einen riesigen Bereich an bestehenden Bibliotheken und Hilfsmodulen sowie die Adaption an verschiedenste andere Werkzeuge, beispielsweise über COM-Technologie. Bequeme Code-Erzeugung wird durch eine Template-Sprache ermöglicht. Unterstützung für Merge- und Import-Operationen führt zu umfangreichem Reuse bestehender Modelle. Feingliedrige Lizenzierung erlaubt freie Gestaltung bezüglich der Produktpalette.

 

Aufgaben:

Konzeption, Projektleitung, Entwicklungsleitung und Umsetzung in einem agil arbeitenden Team.

 

Werkzeuge:

Python, C++, Jinja, BOOST, QT + PySide, Windows, OMG CMOF


2013 (2 Monate): Backoffice-Anbindung für einen Webshop

 

Rolle: Freiberuflich

Bereich: Konzept, Entwicklung

 

Beschreibung:

Der Betreiber eines Webshops möchte die Daten des Portals mit den Werkzeugen des Backoffice automatisiert verknüpfen.

Dazu wird ein REST-Adapter für das Portal entwickelt. Dieser kommuniziert dann auf der Backoffice-Seite mittels MS COM und anderen Technologien mit den Werkzeugen.

 

Aufgaben:

Konzeption und Umsetzung

 

Werkzeuge:

Python, Django + REST framework, MS COM


2012 (2 Monate): Automatische Dokumenterzeugung

 

Rolle: Freiberuflich

Bereich: Konzept und Umsetzung

 

Beschreibung:

Ein Finanzdienstleister bietet für sein Online Geschäft die Erzeugung von Berichten an. Quelle sind dabei Transaktionsvermerke aus Datenbanken. Konfigurierbare Mustervorlagen erlauben eine flexible und maßgeschneiderte Dokumenterzeugung. Verschiedene Ausgabeformate wie PDF, HTML, CSV und XML werden unterstützt.

 

Aufgaben:

Konzept und Umsetzung

 

Werkzeuge:

Python, ReportLab, Django


2011 (1 Jahr): Technische Projektleitung für ein grosses Entwicklungsteam

 

Rolle: SWE Berater

Bereich: Technische Projektleitung

 

Beschreibung:

Für Trocknungswagen entwickelt ein weltweit tätiger Hersteller eine neue Generation der Steuerungs- und der Bedienungssoftware. Ein Entwicklungsteam mit 20 Mitgliedern stellt sich der Herausforderung, innovative Funktionalität mit modernen Entwicklungsmethoden und agilem Entwicklungsprozess umzusetzen.

 

Aufgaben:

Der Kandidat übernimmt die technische Projektleitung für das Entwicklungsteam, ermittelt und deckt den Schulungsbedarf. Das Team entwickelt Kernbestandteile des Softwaresystems, trifft Maßnahmen zur Sicherstellung der Qualität und setzt diese um. Die Zusammenarbeit im Team wird optimiert.

 

Werkzeuge:

ARM 9, IBM Rhapsody, C++, BOOST, QT, USB, SqLite.


2010 (3 Wochen): Evaluation eines Echtzeitbetriebssystems

 

Rolle: SWE Berater

Bereich: Beratung, Schulung

 

Beschreibung:

Moderne Mikropumpen bedürfen der Ansteuerung durch Software, die auf einem deterministischen Echtzeitbetriebssystem aufsetzt. Der Kunde benötigt Unterstützung zur Auswahl eines solchen Betriebssystems und eine Einführung in das Erstellen einer geeigneten Software-Architektur.

 

Aufgaben:

Ermittlung der Anforderungen. Einführung in Echtzeitbetriebssysteme und Software-Architektur. Suche nach geeigneten

Betriebssystemen und jeweilige Charakterisierung. Präsentation und Empfehlung an den Kunden.


2010 (1 Woche): Tooleinsatz im regulierten Umfeld

 

Rolle: SWE Berater

Bereich: Beratung

 

Beschreibung:

Auch für bahntechnische Anwendungen steigt die Nachfrage nach moderneren Entwicklungsmethoden und -Werkzeugen. Herausfordernd ist dabei die gleichzeitige Einhaltung branchentypischer Regulatorien.

 

Aufgaben:

Bewertung des Werkzeugeinsatzes und des Entwicklungsprozesses unter Berücksichtigung der bahntechnischen

Normen. Präsentation der Empfehlung für das weitere Vorgehen.

 

Werkzeuge:

IBM Rhapsody


2010 (3 Wochen): Beratung für Architektur-Strategie

 

Rolle: SWE Berater

Bereich: Strategie, Beratung

 

Beschreibung:

Elektrische Gleichrichter-Anlagen für Mobilfunknetze werden künftig verstärkt auch im außereuropäischen Markt eingesetzt. Entsprechend steigen die Anforderungen an die Agilität der Softwareentwicklung drastisch. Ein Workshop zusammen mit dem Kunden soll dabei helfen, das Potenzial dafür aufzudecken und zu evaluieren.

 

Aufgaben:

Analyse der Architektur. Ermittlung technischer Schwachpunkte und Potenziale. Sammlung geeigneter Technologien zur strategischen Verbesserung des Software-Systems. Durchführung und Moderation eines Evaluationsworkshops.


2010 (6 Wochen): Contextual Inquiry für Beschichtungsanlagen

 

Rolle: SWE Berater

Bereich: Usability Engineering

 

Beschreibung:

Moderne Beschichtungsanlagen für metallische Werkstücke stellen vielfältige Anforderungen an die Usability der Bedienungssoftware. Gleichzeitig steigt der Kostendruck. Es sollen daher Verbesserungs- und auch Einspar-Potentiale aufgedeckt werden.

 

Aufgaben:

Die Analyse von Handbüchern und Sichtung der Anlagen vor Ort helfen, die wichtigsten Anforderungen an entsprechende

Softwaresysteme zu ermitteln. Aus Interviews direkt am Einsatzort ergeben sich zudem benutzertypische Anforderungen. Ein Use Case Modell wird erstellt, um die funktionalen Anforderungen zu manifestieren. Mehrere Contextual Inquiries legen die spezifischen Anforderungen verschiedener Nutzer offen. [Name auf Anfrage] zeigt in einer Präsentation die Potenziale und gibt den Entscheidungsträgern eine Empfehlung.

 

Werkzeuge:

Contextual Inquiry


2010 ( 3 Wochen )

Erstellung einer Schedulability-Expertise

Für Frequenz-Umrichter wird Software benötigt, die sehr hohe Anforderungen bezüglich des zeitlichen Determinismus erfüllen muss. Der Hersteller eines solchen Systems stellt in seiner Software eine auffallend hohe Prozessor-Auslastung fest. Dies wird als potentielles Risiko angesehen.

Der Consultant analysiert daher die Softwarearchitektur und setzt ein mathematisches Modell zur Bewertung der Schedulability ein. Die Entscheidungsträger erhalten eine Bewertung des Systemzustandes und eine Empfehlung für das weitere Vorgehen.


Aufgaben: Analyse der Software-Architektur. Durchführung einer Rate Monotonic Analysis. Befähigung des Kunden, solche Analysen künftig selbst durchzuführen. Präsentation der Vorgehensempfehlung.

Werkzeuge: Rate Monotonic Analysis

2008 ( 2 Jahre )

Redesign einer Gebäude-Automations-Software

Der Consultant übernimmt einen innovativen Ansatz zur Gebäude-Automation und entwickelt diesen zu einer tragfähigen, erweiterbaren Lösung weiter. Dabei wird besonderer Wert auf eine offene
Architektur gelegt, die eine einfache und flexible Integration verschiedenster Geräte und Feldprotokolle sicherstellt.


Ergänzend zum Kernprodukt wird eine maßgeschneiderte Test- und Simulationsinfrastruktur entwickelt, mit der sich die Qualität der Software kontinuierlich sicherstellen lässt. Zudem unterstützt dies die Konfiguration und Inbetriebnahme von Produkten vor der Auslieferung an die Kunden.


Aufgaben: Analyse des bestehenden Konzeptes und der Prototypen-Implementierung. Anschliessend Definition und Umsetzung der Architektur, Aufbau und Projektleitung eines vierköpfigen
Entwicklerteams.


Werkzeuge: Embedded Linux, Eclipse, Java, JamVM, openArchitectureWare.

2007 ( 6 Monate )

Automatisches Testing für Aufzugsanlagen

Der Kunde ist ein weltweit tätiger Hersteller, der die Qualität der Software seiner Liftanlagen verbessern will. Gleichzeitig soll der Aufwand für manuelle Tests reduziert und damit die Release-Zyklen deutlich verkürzt werden. Nach einer Analyse des bisherigen Vorgehens bei Entwicklung und Test werden Vorschläge zum Testen auf Unit-, Komponenten- und Systemebene erarbeitet und diskutiert.


Das entwicklungsbegleitende Testen soll fortan im Fokus stehen. Ein erster Aufbau für den automatischen Test einer Anlagen-Komponente wird implementiert und in Betrieb genommen.


Aufgaben: Analyse des Entwicklungs- und Testvorgehens. Erarbeitung von Verbesserungsvorschlägen. Beratung der Test- und Qualitätsleitung. Implementierung eines ersten automatisierten Komponententests.


Werkzeuge: Microsoft Windows, Infragistics Komponenten, Interface-Hardware von National Instruments, CAN Interface-Hardware von Vector. Entwicklungsumge-bung: Microsoft Visual Studio.

Sprachen: C#

2006

Einführung von Modellierungstechnologie für Medizinprodukte

Der Kunde ist ein führender Hersteller von Hörgeräten, der innovatives Zubehör für seine Produkte entwickelt. Mit dem bisherigen Entwicklungsvorgehen wird die geforderte Qualität nicht erreicht. Die
Transparenz in der Software fehlt - Änderungen und Fehlerkorrekturen sind sehr aufwändig.

Schrittweise wird die bestehende Software in ein UML-Modellierungs-Werkzeug eingepflegt und aus demselben Werkzeug generiert. Design und Verhalten der Software werden so sichtbar. Das
Entwicklungsteam wird in die Lage versetzt, Änderungen schnell durchzuführen und die bestehenden Fehler rasch zu beseitigen.


Aufgaben: Einführen von Telelogic Rhapsody, Schulung in UML, Testbare Adaption der generierten Software via USB an einen C#-Client.


Werkzeuge: ARM9, Nucleus, Microsoft Windows, UML mit Rhapsody. 

Entwicklungsumgebung: Microsoft Visual Studio, Mentor Graphics Edge.

Sprachen: C, C++, C#.

2005

Architektur und Projektleitung bei einem Hörgerätehersteller

Der Kunde ist ein führender Hersteller von Hörgeräten und Zubehör. Er löst ein vorhandenes Gerät durch ein neues ab. Dies ist nur möglich mit neuen Werkzeugen und Prozessen für die Software-Entwicklung.


Zum Projekt gehören die Unterstützung der Projektleitung, die Planung der Tätigkeiten und die Entwicklungsarbeiten in enger Zusammenarbeit mit dem Kundenteam. Die umfangreiche maßgeschneiderte Test-Infrastruktur wird konzipiert, implementiert und von den Entwicklern
flexibel und erfolgreich eingesetzt. Die Spezialisten konzipieren ein Configuration Management und stellen ein automatisches Build-System bereit.


Aufgaben: Architektur, Unterstützung der Projektleitung, Testing und Configuration Management.


Werkzeuge: ARM9, Sciopta RTOS, Microsoft Windows, UML mit Rhapsody. Entwicklungsumgebung: Microsoft Visual Studio, WinIDEA.


Sprachen: C, C++, Python. Tools: CppUnit, Boost, GccXml, BuildBot, PEG.

2004

Integration in einem VoIP-Projekt

Ein namhafter Dienstanbieter im Telefonie-Umfeld erhält ein komplexes VoIP-basiertes Client-Server-System, das auf seine Wünsche zugeschnitten ist. Zusammen mit Dritt-Herstellern werden Hard- und
Soft-Phones entwickelt und mit landestypischen Anforderungen auf der Server-Seite abgestimmt. Der Soft-Client kommuniziert über SOAP mit dem Application-Server.


Das Projektteam entwickelt dafür Macromedia-Flash-Plug-Ins und testet Sie systematisch mit Unit-Tests. Die Web-Service-Komponenten werden in Python eingebunden, um flexibel und skriptgesteuert mit den Servern kommunizieren zu können. Dieses Potential ist auch für Wartungs- und Monitoring-Aufgaben unter Linux nutzbar. Die Entwicklungsumgebung für die Übersetzung und grafische Anpassung einer
Rezeptionisten-Applikation sowie eines Microsoft-Outlook-Plug-Ins wird weitgehend automatisiert.


Aufgaben: Unit-Testing, Performance-Optimierung, Automatisierung und Scripting


Werkzeuge: Microsoft Windows, Red Hat Linux.

Entwicklungsumgebung: Microsoft Visual Studio. Sprachen: C++, Python. Tools: CppUnit, Boost,
gSoap.


weitere Projekte auf Anfrage

Aus- und Weiterbildung

Aus- und Weiterbildung

4 Jahre 7 Monate
1993-03 - 1997-09

Studium zum Diplom-Ingenieur Maschinenbau & CA-Technologien

Diplom-Ingenieur, Fachhochschule Konstanz
Diplom-Ingenieur
Fachhochschule Konstanz
9 Jahre
1982-08 - 1991-07

Abitur

bestanden, Klettgau-Gymnasium in Tiengen
bestanden
Klettgau-Gymnasium in Tiengen

Kompetenzen

Kompetenzen

Top-Skills

Software Engineering

Produkte / Standards / Erfahrungen / Methoden

IBM Rapsody
iLogix
openArchitectureWare
Rational Rose
Rational Rose RealTime
Telelogic

Werdegang

 

02/2012 ? heute

Freiberuflicher Berater für Software Engineering

 

01/2012 ? 01/2012

Software Engineering Consultant, Mettler-Toledo AG, Greifensee

 

07/2001 ? 12/201

Software Engineering Consultant, Zühlke Engineering AG, Schlieren

 

10/1997 ? 06/2001

Development Engineer Control Systems, SIG / FIAT / ALSTOM, Neuhausen am Rheinfall

 

03/1993 ? 09/1997

Studium zum Diplom-Ingenieur Maschinenbau & CA-Technologien, Fachhochschule Konstanz

 

10/1991 ? 09/1992

Wehrdienst, Technische Schule des Heeres in Eschweiler

Betriebssysteme

Linux
RT-OS
verschiedenste
Unix
Windows

Programmiersprachen

C
C#
C++
Java
Python
XML
XS

Datenbanken

MySQL
PostgreSQL
SQLite

Datenkommunikation

CAN
Corba
Ethernet
Internet
LAN
REST
RS232
SOAP
USB
WebServices

Hardware

Embedded
PC
Server

Berechnung / Simulation / Versuch / Validierung

Matl
Simuli

Entwicklung eines Simulators für ein komplexes technisches System

Design / Entwicklung / Konstruktion

MD
MDA
OOA
OOD

Branchen

Branchen

Industrie

Telekommunikation

Medizin

 

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

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

Das Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.