Realtime- und Embedded-Systeme, SmartCard und JavaCard, Compilerbau (CLANG,LLVM,ANTLR)
Aktualisiert am 01.06.2022
Profil
Referenzen (1)
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.10.2022
Verfügbar zu: 80%
davon vor Ort: 100%
Compiler Construction
Safety-Critical Embedded Programming
C Development
JavaCard
Benchmarking
Test-Development
C Developer
ANTLR
PEARL
Deutsch
Muttersprache
Englisch
verhandlungssicher in Wort und Schrift; mehrere Jahre USA

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)

Deutschland:

möglich

Projekte

Projekte

1 Jahr 8 Monate
2018-05 - 2019-12

Infrastrukturprojekt im Bereich "Autonomes Fahren"

Senior Software Developer C/C++ Linux Scrum
Senior Software Developer

Im Rahmen des o.g. Forschungsprojektes habe ich folgende Tätigkeitien hauptverantwortlich erfolgreich durchgeführt:

  • Analyse und Implementation einer Monitoring-Lösung auf Basis von InfluxDB und Telegraf
  • Analyse, Konzeption und prototypische Implementierung einer Edge-Cloud auf Basis von StarlingX/Kubernetes
  • Forschung im Bereich der Erkennung von Sensoranomalien
  • Unterstützung bei der Umsetzung eines in MATLAB entwickelten Algorithmus nach C++
StarlingX Kubernetes Docker MATLAB InfluxDB Telegraf Artesyn MAXCORE
C/C++ Linux Scrum
Intel Labs
München
8 Monate
2017-05 - 2017-12

Entwicklung

Senior Software Engineer
Senior Software Engineer
  • Entwicklung eines Demonstrator-Plugins für den ARM Compiler 6.x zur Datenflußüberwachung.
Linux MS Visual Studio C/C++ Keil UV5 armclang CLANG LLVM Jenkins Perl Python make cmake bash
Mixed Mode , Gräfelfing
2 Jahre
2015-04 - 2017-03

Entwicklung

Senior Software Engineer
Senior Software Engineer
  • Entwicklung einer Benchmarksuite für den ARM Compiler 6.x. Vergleich der Code Density der ARM Compiler 5.9x und 6.x. Mitarbeit an der Definition des ISS und DSS Plugins (LLVM/CLANG basiert) für den ARM Compiler 6.x. Entwicklung eines Demonstrators des DSS Plugins.
Linux MS Visual Studio C/C++ Keil UV5 armclang CLANG LLVM Jenkins Perl Python make cmake bash
Mixed Mode , Gräfelfing
2 Jahre 5 Monate
2012-11 - 2015-03

Implementation, Test und Fehlerbehebung

Senior Software Engineer
Senior Software Engineer
  • Implementation, Test und Fehlerbehebung eines DSL Compilers für ein Fehlerinjektionswerkzeug. Test und Fehlerbehebung eines Mikroprozessor-Simulators (SLE9x). Der gesamte Entwicklungsprozess wurde Scrum-basiert durchgeführt. Miterfinder einer Methode zur Absicherung des Codeablaufes in einer Java Virtuellen Maschine (Javacard).
MS Visual Studio C/C++ Scrum Keil UV ANTLR Jenkins Perl Python make cmake bash guile SLE7x
Mixed Mode , Gräfelfing
1 Jahr 7 Monate
2011-04 - 2012-10

Implementation, Test und Fehlerbehebung

Senior Software Engineer
Senior Software Engineer
  • Implementation, Test und Fehlerbehebung eines Mikroprozessor-Simulators. Weitergin wurden verschiedene Peripheriemodule wie z.B. I2C und Crypto entwickelt. Zusätzlich wurde Continous Integration mit eingeführt und verschiedene Testjobs entwickelt. Der gesamte Entwicklungsprozess wurde Scrum-basiert durchgeführt
MS Visual Studio C/C++ Scrum Keil UV4 Jenkins Perl Python make cmake bash guile SLE7x
Infineon AG, München
9 Monate
2010-04 - 2010-12

Geheimhaltungsgründen

Senior Software Engineer
Senior Software Engineer
  • Auf Kundenwunsch und aus Geheimhaltungsgründen ist hier keine Projektbeschreibungverfügbar.
MS Visual Studio QT C/C++ Clearcase Enterprise Architect (UML) Oracle 8.x
Rohde & Schwarz, München
5 Monate
2009-06 - 2009-10

Architekturstudie eines Sensornetzwerkes

  • Architekturstudie eines Sensornetzwerkes auf Basis des Atmel Mikroprozessors ATmega32L. Unterschiedliche Sensoren wurden mittels eines 866MHz Funknetzes angekoppelt. Hierzu wurde ein properitäres, bidirektionales Protokoll definiert und implementiert. Die einzelnen Sensordaten werden auf einem linuxbasierten Rechner gespeichert, ausgewertet und graphisch mittels RRDtool dargestellt.
C avr-gcc avr-gdb make Atmel ATmega32L C++ SubVersion RRDtool Linux
In-House, München
6 Monate
2009-01 - 2009-06

Design und Implementierung

Lead Software Engineer
Lead Software Engineer
  • Design und Implementierung eines Online Auftragsverwaltungsund Auftragsverfolgungssystemes auf Basis von PHP/MySQL. Dabei durchlaufen die einzelnen Aufträge von der Erfassung bis zur Rechnungserstellung ein wohldefinertes Regelwerk. Weiterhin werden die für die Qualitätssicherung der Produktionskette notwendigen Dokumente entprechend den Kundenanforderungen verwaltet und bei Überschreiten vorgebener Zeitvorgaben Warnhinweise generiert. Hierzu kommen Bash- und Perlskripte zum Einsatz, welche per Cronjob angestartet werden. Die Auftragsdaten werden mittels einer MySQL Datenbank gespeichert.
MySQL 5.0.x MAMP PHP 5.2.x PHP Framework Prado 3.1.x Eclipse (Europa) mit PHP Plugin Mercurial
Fa. Petex, Schweiz/Indien
4 Monate
2008-09 - 2008-12

Realtime-Betriebssystemes

Senior Software Engineer
Senior Software Engineer
  • Portierung des Realtime-Betriebssystemes „uCos“ auf den Infineon Chip SLE88. Design und Erstellung von Low-Level Benchmarks für die aktuelle Chip-Architektur SLE90/Fortress. Insbesondere wurde der Schwerpunkt auf die Performance der Memory Management Unit (MMU) und die Multitaskingfähigkeiten wie z.B. die Latency bei Taskwechsel gelegt.
MS Windows C/C++ Clearcase Tasking EDE Keil UV Crossview Debugger PSL
Infineon AG, Augsburg und München
1 Jahr 4 Monate
2007-03 - 2008-06

Analyse, Design und Entwicklung

Senior Software Engineer
Senior Software Engineer
  • Analyse, Design und Entwicklung der Steuersoftware für eine Power Management Unit (PMU). Die PMU steuert dynamisch mehrere kW-Sendeanlagen. Die Steuerung musste systembedingt hochgradig multithreaded ausgelegt werden und in die bestehende, sehr umfangreiche Software Architektur integriert werden.
MS Windows C/C++ Clearcase Rational Rose (UML) Lauterbach Debugger MPC CNR OSE VxWorks 5.x Cygwin make
Rohde & Schwarz, München
1 Jahr 5 Monate
2005-10 - 2007-02

Etablisierung von ?Upgrade ?und ?Split-Mode-Upgrade (SMU)?

Senior Software Engineer
Senior Software Engineer
  • Verantwortlich im NGTA/Nexta Projekt (Telco) für die Stablisierung von „Upgrade “und „Split-Mode-Upgrade (SMU)“. Dabei wurden insbesondere komplexe Fehleranalysen mittels GDB und Tracing in einer hochgradig verteilten Umgebung (TSP Middleware und multithreaded Prozessen) durchgeführt. Dies wurde teilweise bis auf Kernelebene mittels dem Linux Trace Toolkit (LTT) und Stackdumps realisiert. Weiterhin wurden Werkzeuge zur automatisierten Analyse von Blades entwickelt. Zusätzlich wurden die Nightly-Builds innerhalb der Clearcase- Umgebung aufgesetzt und administrativ mitbetreut
Linux Montavista Linux RTP/TSP CM-API C/C++ XML Rhapsody (UML) Clearcase GDB Perl Python bash make
Siemens AG, München
9 Monate
2005-01 - 2005-09

?SLE88 JavaCard Demonstrator?

Senior Software Engineer
Senior Software Engineer
  • Die Architekturstudie „SLE88 JavaCard Demonstrator“ (nähere Informationen siehe unten) wurde um die Anbindung der Crypto- API von Sun erweitert. Hierbei wurde sowohl eine reine Softwarelösung wie auch die Ausnutzung der SLE88 Crypto-Engine (ACE) implementiert. Neben der Entwicklung einer Benchmark-Test-Suite in Java wurden zusätzlich verschiedene Möglichkeiten zur Verbesserung der NVM-Schreibzugrifflatenz (NVM-Caching) untersucht
Crypto (AES DES etc) Java JCK 2.2.x C C++ STL EDE/Tasking CrossView Hitex Emulator ClearCase JDB Perl Linux Sun Solaris Sockets ApduTool T=0 TLP-224 CAP Fileloader SLE88 (DS5) PSL make
Infineon AG, München
3 Monate
2004-10 - 2004-12

?SLE88 JavaCard Demonstrator?

Senior Software Engineer
Senior Software Engineer
  • Portierung der Architekturstudie „SLE88 JavaCard Demonstrator“ (nähere Informationen siehe unten) auf einen neuen, noch im Designprozess befindlichen Chip. Dieser Chip ist ein Derivat des bekannten INTEL 80251. Hierbei wurde insbesondere die Interpreterschleife aus Performancegründen in Assembler implementiert
Java JCK C C++ STL Keil uVision 2 ClearCase Perl Windows 2000 Sockets ApduTool T=0 TLP-224 CAPFileloader INTEL 80251 make
Infineon AG, München
1 Jahr 10 Monate
2002-12 - 2004-09

Referenzimplementierung

Senior Software Engineer
Senior Software Engineer
  • Für den SmartCard Chip SLE88 von Infineon wurde eine Architekturstudie einer JavaCard Umgebung auf Basis der Referenzimplementierung (JCK 2.2 bzw. teilweise 2.2.1) von Sun Microsystems erarbeitet. Der Fokus wurde hierbei auf die effiziente Ausnutzung Chipspezifischer Eigenschaften wie z.B. VM-Acceleration gelegt. Zusätzlich wurde eine regressionsfähige Test-Umgebung sowohl für den SLE88-Simulator (JSIM) als auch für den den  Emulator (Hitex) entwickelt. Zu Testzwecken wurde ausserdem das „Java VM Debug Interface“ (JVMDI) der „Java Platform Debugger Architecture“ (JPDA) implementiert. Der Demonstrator wurde unter Linux mit den Crosstools von Tasking entwickelt. Weiterhin wurde eine umfangreiche Application Note erstellt, welche heute ausgewählten Kunden von Infineon zur Verfügung steht.
Java JCK 2.2 bzw. 2.2.1 C C++ STL Keil uVision 2 EDE/Tasking CrossView HiTex-Emulator JDB ClearCase Perl Windows 2000 Sockets ApduTool T=0 TLP-224 CAPFileloader make
Infineon AG, München
11 Monate
2001-12 - 2002-10

Memory-Management-Unit (MMU)

Senior Software Engineer
Senior Software Engineer
  • Portierung Java Virtual Machine Planung der Portierung einer Java Virtual Machine (VM) auf den SmartCard Chip SLE88 von Infineon. Hierbei waren unter anderem die spezifischen Eigenschaften der Ziel- Hardware wie z.B. die Memory-Management-Unit (MMU) mit ihrem virtuellen Adressraum zu berücksichtigen. Die VM wurde in ANSI-C mit einem kleineren Anteil SLE88 spezifischen Assembler-Codes implementiert
  • XML Modultest-Framework Design und Implementierung eines regressionsfähigen Modultest-Frameworks in Java mit Swing. Die Modultests werden mittels eines spezialisierten XML-Editors erstellt und dann in das Zielformat des Test-Simulators transformiert. Dabei werden die Test-Skripte im XMLFormat gespeichert. Ziel dieses Projektes war zum einen die Vereinfachung der Testerstellung und zum anderen deren automatische Konsistenzprüfung.

C EDE/Tasking CrossView MKS Infineon SLE88 mit PSL JDK 1.3.1 JDK 1.4 JBuilder XML-Spy 3.5
Giesecke&Devrient GmbH, München
2 Monate
2001-10 - 2001-11

Design und Entwicklung

  • Design und Entwicklung einer Handelsplattform für End-Of-Day Tradingsysteme. Dabei werden automatisiert Gruppen von Wertpapieren nach vorgegebenen Ereignismustern (Quotes und News) durchsucht und bei positiver Bewertung eine Kauf- oder Verkaufsempfehlung erteilt. Hierzu kommt ein eigens für diesen Zweck entwickeltes Marktmodell zum Einsatz. Zusätzlich wird ein Trading-Plan mit Stopp-Loss Empfehlung und Checkpoints generiert. Hierbei kommen technische Indikatoren wie z.B. „Price Distribution Function“ und heuristische Algorithmen für die Kategorisierung von Nachrichten zum Einsatz. Diese Plattform wird seit 1/2002 erfolgreich eingesetzt.
Perl JDK 1.3 NetBeans 3.x J2EE Tomcat 4.x Tuxedo 7.x Oracle 8.1 make
In-House, München

Aus- und Weiterbildung

Aus- und Weiterbildung

7 Jahre 8 Monate
1984-10 - 1992-05

Informatik- und Elektrotechnikstudium

Diplom (Univ.) Informatiker, TU München
Diplom (Univ.) Informatiker
TU München

Position

Position

Meine Schwerpunkte liegen in der Analyse, Design und
Implementierung von komplexen, auch verteilten, Software-Architekturen.
Dabei kann ich meine langjährigen Erfahrungen sowohl aus den
Bereichen SmartCard/JavaCard, Datenbank, Client/Server mit einbringen.
Falls gewünscht übernehme ich gerne auch die technische
Projektleitung bzw. die Rolle als System Architekt.

Auch nach Abschluß von Projekten stehe ich gerne für Fragen und
On-Site Support zur Verfügung.

Weitere Referenzen teile ich auf Anfrage gerne mit.

Kompetenzen

Kompetenzen

Top-Skills

Compiler Construction Safety-Critical Embedded Programming C Development JavaCard Benchmarking Test-Development C Developer ANTLR PEARL

Produkte / Standards / Erfahrungen / Methoden

Clearcase
Docker
GDB
Kubernetes
Rhapsody (UML)
Scrum
StarlingX
Telegraf
XML

Schwerpunkte

Eingebettete, insbesondere echtzeitfähige Systeme, Übersetzerbau und komplexe verteilte Softwarearchitekturen

 

Organisationen

Aktives Mitglied des DIN-Normungsausschusses ?Programmiersprachen?

Mitglied der Gesellschaft für Informatik (GI)

Aktives Mitglied der GI Fachgruppe Echtzeitsysteme und

PEARL und des Arbeitskreises Embedded Systems, RTOSUH/PEARL

Leiter des GI-Arbeitskreises ?OpenPEARL Compiler?

seit 2016 Lehrbeauftragter der Fakultät Mathematik und Informatik der FernUniversität Hagen

seit 2014 GNU Maintainer für GNU perf

 

Zusammenfassung

Meine fachlichen Schwerpunkte liegen in der Analyse, Design und Implementierung

von eingebetteten Systemen und im Übersetzerbau. Auf Wunsch übernehme

ich die technische Projektleitung oder die Rolle als System Architekt. Auch nach

Abschluß von Projekten stehe ich natürlich für Fragen und On-Site Support zur Verfügung

 

Spezial-Kenntnisse

  • Eingebettete Systeme
  • Echtzeitbetriebsysteme wie z.B. VxWorks, ?uCos? und eCos
  • SmartCard/JavaCard 2.x (bis auf Source Code Ebene) inklusive ISO / IEC 7816
  • Infineon SLE70,SLE88 und SLE90 (Fortress) mit PSL API und Hitex Emulator
  • Konstruktion von Compilern und Interpretern; Code-Optimierung
  • LLVM/CLANG, ANTLR

Betriebssysteme

CP/M
Debian
Echtzeitbetriebssysteme
RTOS, RT-Linux
HPUX
9.x-10.2x
IRIX
6.x
Linux
Linux seit Kernel 0.8
Montavista Linux
MS-DOS
RTOS (Real Time OS)
SUN OS, Solaris
2.5
Suse ab 4.2
Unix
SUN OS, HP UNIX, LINUX, IRIX
VMS
VxWorks
6.7
Windows

Programmiersprachen

Assembler
80x86 (Projekterfahrung)
bash
C
Projekterfahrung
C++
Projekterfahrung
C/C++
Chill
Projekterfahrung
Emacs
Projekterfahrung
ESQL/C
Projekterfahrung
Imake, GNU-Make, Make-Maker etc...
Projekterfahrung
Java
Projekterfahrung
JavaScript
Projekterfahrung
make
MATLAB
OBJECT-CHILL
Projekterfahrung
Objective C
Pascal
Projekterfahrung
Perl
Projekterfahrung
PHP
Projekterfahrung
PL/SQL
Projekterfahrung
Python
Projekterfahrung
Qt
Projekterfahrung
Ruby
Shell
Projekterfahrung
Tcl/Tk
TeX, LaTeX
Projekterfahrung
yacc/lex
Projekterfahrung

Datenbanken

B-Tree
Illustra
Projekterfahrung
InfluxDB
Informix
ONLINE DSA 7.x - IDS 9.x (Projekterfahrung)
JDBC
MySQL
Projekterfahrung
ODBC
Projekterfahrung
Oracle
Version 7.x-10.x, PL/SQL/Pro*C/C++ (Projekterfahrung)
Postgres
5.x-8.x (Projekterfahrung)
RDB
Projekterfahrung
RTP/TSP
Solid DB
Projekterfahrung
SQL
Projekterfahrung
Sqlite
Projekterfahrung

Datenkommunikation

APDU
CM-API
Ethernet
Internet, Intranet
Projekterfahrung
Message Queuing
Tuxedo (Projekterfahrung)
Middleware
RS232
Projekterfahrung
TCP/IP
Projekterfahrung
TLP/T=0
Tuxedo
Weblogic Enterprise Server
Weblogic Server
Windows Netzwerk

Hardware

Artesyn MAXCORE
Ascii/X - Terminals
ATMEL ATMEGA128
ATTiny
Blade Architectur
Kennicott bzw. Wainwright
Digital
Echtzeitsysteme
RTOS
embedded Systeme
V25, SLE88
Emulatoren
HITEX, Infineon ET88
HP
HP-UX 9.x - 10.20
Infineon C7/80251
Infineon Smartcard
JavaCard Chip SLE88
Mikrocontroller
V25
MSP430
NEC
V25
PC
Silicon-Graphics
IRIX 6.x
SUN
SUN OS 2.6 und neuer

Berechnung / Simulation / Versuch / Validierung

CPPUnitTest

Design / Entwicklung / Konstruktion

Enterprise Architect

Branchen

Branchen

  • Telekommunikation
  • Datenbankhersteller
  • Toolhersteller
  • SmartCard
  • Finanzdienstleister
  • Banken
  • Versicherungen
  • Medizintechnik
  • Software
  • Industrie

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)

Deutschland:

möglich

Projekte

Projekte

1 Jahr 8 Monate
2018-05 - 2019-12

Infrastrukturprojekt im Bereich "Autonomes Fahren"

Senior Software Developer C/C++ Linux Scrum
Senior Software Developer

Im Rahmen des o.g. Forschungsprojektes habe ich folgende Tätigkeitien hauptverantwortlich erfolgreich durchgeführt:

  • Analyse und Implementation einer Monitoring-Lösung auf Basis von InfluxDB und Telegraf
  • Analyse, Konzeption und prototypische Implementierung einer Edge-Cloud auf Basis von StarlingX/Kubernetes
  • Forschung im Bereich der Erkennung von Sensoranomalien
  • Unterstützung bei der Umsetzung eines in MATLAB entwickelten Algorithmus nach C++
StarlingX Kubernetes Docker MATLAB InfluxDB Telegraf Artesyn MAXCORE
C/C++ Linux Scrum
Intel Labs
München
8 Monate
2017-05 - 2017-12

Entwicklung

Senior Software Engineer
Senior Software Engineer
  • Entwicklung eines Demonstrator-Plugins für den ARM Compiler 6.x zur Datenflußüberwachung.
Linux MS Visual Studio C/C++ Keil UV5 armclang CLANG LLVM Jenkins Perl Python make cmake bash
Mixed Mode , Gräfelfing
2 Jahre
2015-04 - 2017-03

Entwicklung

Senior Software Engineer
Senior Software Engineer
  • Entwicklung einer Benchmarksuite für den ARM Compiler 6.x. Vergleich der Code Density der ARM Compiler 5.9x und 6.x. Mitarbeit an der Definition des ISS und DSS Plugins (LLVM/CLANG basiert) für den ARM Compiler 6.x. Entwicklung eines Demonstrators des DSS Plugins.
Linux MS Visual Studio C/C++ Keil UV5 armclang CLANG LLVM Jenkins Perl Python make cmake bash
Mixed Mode , Gräfelfing
2 Jahre 5 Monate
2012-11 - 2015-03

Implementation, Test und Fehlerbehebung

Senior Software Engineer
Senior Software Engineer
  • Implementation, Test und Fehlerbehebung eines DSL Compilers für ein Fehlerinjektionswerkzeug. Test und Fehlerbehebung eines Mikroprozessor-Simulators (SLE9x). Der gesamte Entwicklungsprozess wurde Scrum-basiert durchgeführt. Miterfinder einer Methode zur Absicherung des Codeablaufes in einer Java Virtuellen Maschine (Javacard).
MS Visual Studio C/C++ Scrum Keil UV ANTLR Jenkins Perl Python make cmake bash guile SLE7x
Mixed Mode , Gräfelfing
1 Jahr 7 Monate
2011-04 - 2012-10

Implementation, Test und Fehlerbehebung

Senior Software Engineer
Senior Software Engineer
  • Implementation, Test und Fehlerbehebung eines Mikroprozessor-Simulators. Weitergin wurden verschiedene Peripheriemodule wie z.B. I2C und Crypto entwickelt. Zusätzlich wurde Continous Integration mit eingeführt und verschiedene Testjobs entwickelt. Der gesamte Entwicklungsprozess wurde Scrum-basiert durchgeführt
MS Visual Studio C/C++ Scrum Keil UV4 Jenkins Perl Python make cmake bash guile SLE7x
Infineon AG, München
9 Monate
2010-04 - 2010-12

Geheimhaltungsgründen

Senior Software Engineer
Senior Software Engineer
  • Auf Kundenwunsch und aus Geheimhaltungsgründen ist hier keine Projektbeschreibungverfügbar.
MS Visual Studio QT C/C++ Clearcase Enterprise Architect (UML) Oracle 8.x
Rohde & Schwarz, München
5 Monate
2009-06 - 2009-10

Architekturstudie eines Sensornetzwerkes

  • Architekturstudie eines Sensornetzwerkes auf Basis des Atmel Mikroprozessors ATmega32L. Unterschiedliche Sensoren wurden mittels eines 866MHz Funknetzes angekoppelt. Hierzu wurde ein properitäres, bidirektionales Protokoll definiert und implementiert. Die einzelnen Sensordaten werden auf einem linuxbasierten Rechner gespeichert, ausgewertet und graphisch mittels RRDtool dargestellt.
C avr-gcc avr-gdb make Atmel ATmega32L C++ SubVersion RRDtool Linux
In-House, München
6 Monate
2009-01 - 2009-06

Design und Implementierung

Lead Software Engineer
Lead Software Engineer
  • Design und Implementierung eines Online Auftragsverwaltungsund Auftragsverfolgungssystemes auf Basis von PHP/MySQL. Dabei durchlaufen die einzelnen Aufträge von der Erfassung bis zur Rechnungserstellung ein wohldefinertes Regelwerk. Weiterhin werden die für die Qualitätssicherung der Produktionskette notwendigen Dokumente entprechend den Kundenanforderungen verwaltet und bei Überschreiten vorgebener Zeitvorgaben Warnhinweise generiert. Hierzu kommen Bash- und Perlskripte zum Einsatz, welche per Cronjob angestartet werden. Die Auftragsdaten werden mittels einer MySQL Datenbank gespeichert.
MySQL 5.0.x MAMP PHP 5.2.x PHP Framework Prado 3.1.x Eclipse (Europa) mit PHP Plugin Mercurial
Fa. Petex, Schweiz/Indien
4 Monate
2008-09 - 2008-12

Realtime-Betriebssystemes

Senior Software Engineer
Senior Software Engineer
  • Portierung des Realtime-Betriebssystemes „uCos“ auf den Infineon Chip SLE88. Design und Erstellung von Low-Level Benchmarks für die aktuelle Chip-Architektur SLE90/Fortress. Insbesondere wurde der Schwerpunkt auf die Performance der Memory Management Unit (MMU) und die Multitaskingfähigkeiten wie z.B. die Latency bei Taskwechsel gelegt.
MS Windows C/C++ Clearcase Tasking EDE Keil UV Crossview Debugger PSL
Infineon AG, Augsburg und München
1 Jahr 4 Monate
2007-03 - 2008-06

Analyse, Design und Entwicklung

Senior Software Engineer
Senior Software Engineer
  • Analyse, Design und Entwicklung der Steuersoftware für eine Power Management Unit (PMU). Die PMU steuert dynamisch mehrere kW-Sendeanlagen. Die Steuerung musste systembedingt hochgradig multithreaded ausgelegt werden und in die bestehende, sehr umfangreiche Software Architektur integriert werden.
MS Windows C/C++ Clearcase Rational Rose (UML) Lauterbach Debugger MPC CNR OSE VxWorks 5.x Cygwin make
Rohde & Schwarz, München
1 Jahr 5 Monate
2005-10 - 2007-02

Etablisierung von ?Upgrade ?und ?Split-Mode-Upgrade (SMU)?

Senior Software Engineer
Senior Software Engineer
  • Verantwortlich im NGTA/Nexta Projekt (Telco) für die Stablisierung von „Upgrade “und „Split-Mode-Upgrade (SMU)“. Dabei wurden insbesondere komplexe Fehleranalysen mittels GDB und Tracing in einer hochgradig verteilten Umgebung (TSP Middleware und multithreaded Prozessen) durchgeführt. Dies wurde teilweise bis auf Kernelebene mittels dem Linux Trace Toolkit (LTT) und Stackdumps realisiert. Weiterhin wurden Werkzeuge zur automatisierten Analyse von Blades entwickelt. Zusätzlich wurden die Nightly-Builds innerhalb der Clearcase- Umgebung aufgesetzt und administrativ mitbetreut
Linux Montavista Linux RTP/TSP CM-API C/C++ XML Rhapsody (UML) Clearcase GDB Perl Python bash make
Siemens AG, München
9 Monate
2005-01 - 2005-09

?SLE88 JavaCard Demonstrator?

Senior Software Engineer
Senior Software Engineer
  • Die Architekturstudie „SLE88 JavaCard Demonstrator“ (nähere Informationen siehe unten) wurde um die Anbindung der Crypto- API von Sun erweitert. Hierbei wurde sowohl eine reine Softwarelösung wie auch die Ausnutzung der SLE88 Crypto-Engine (ACE) implementiert. Neben der Entwicklung einer Benchmark-Test-Suite in Java wurden zusätzlich verschiedene Möglichkeiten zur Verbesserung der NVM-Schreibzugrifflatenz (NVM-Caching) untersucht
Crypto (AES DES etc) Java JCK 2.2.x C C++ STL EDE/Tasking CrossView Hitex Emulator ClearCase JDB Perl Linux Sun Solaris Sockets ApduTool T=0 TLP-224 CAP Fileloader SLE88 (DS5) PSL make
Infineon AG, München
3 Monate
2004-10 - 2004-12

?SLE88 JavaCard Demonstrator?

Senior Software Engineer
Senior Software Engineer
  • Portierung der Architekturstudie „SLE88 JavaCard Demonstrator“ (nähere Informationen siehe unten) auf einen neuen, noch im Designprozess befindlichen Chip. Dieser Chip ist ein Derivat des bekannten INTEL 80251. Hierbei wurde insbesondere die Interpreterschleife aus Performancegründen in Assembler implementiert
Java JCK C C++ STL Keil uVision 2 ClearCase Perl Windows 2000 Sockets ApduTool T=0 TLP-224 CAPFileloader INTEL 80251 make
Infineon AG, München
1 Jahr 10 Monate
2002-12 - 2004-09

Referenzimplementierung

Senior Software Engineer
Senior Software Engineer
  • Für den SmartCard Chip SLE88 von Infineon wurde eine Architekturstudie einer JavaCard Umgebung auf Basis der Referenzimplementierung (JCK 2.2 bzw. teilweise 2.2.1) von Sun Microsystems erarbeitet. Der Fokus wurde hierbei auf die effiziente Ausnutzung Chipspezifischer Eigenschaften wie z.B. VM-Acceleration gelegt. Zusätzlich wurde eine regressionsfähige Test-Umgebung sowohl für den SLE88-Simulator (JSIM) als auch für den den  Emulator (Hitex) entwickelt. Zu Testzwecken wurde ausserdem das „Java VM Debug Interface“ (JVMDI) der „Java Platform Debugger Architecture“ (JPDA) implementiert. Der Demonstrator wurde unter Linux mit den Crosstools von Tasking entwickelt. Weiterhin wurde eine umfangreiche Application Note erstellt, welche heute ausgewählten Kunden von Infineon zur Verfügung steht.
Java JCK 2.2 bzw. 2.2.1 C C++ STL Keil uVision 2 EDE/Tasking CrossView HiTex-Emulator JDB ClearCase Perl Windows 2000 Sockets ApduTool T=0 TLP-224 CAPFileloader make
Infineon AG, München
11 Monate
2001-12 - 2002-10

Memory-Management-Unit (MMU)

Senior Software Engineer
Senior Software Engineer
  • Portierung Java Virtual Machine Planung der Portierung einer Java Virtual Machine (VM) auf den SmartCard Chip SLE88 von Infineon. Hierbei waren unter anderem die spezifischen Eigenschaften der Ziel- Hardware wie z.B. die Memory-Management-Unit (MMU) mit ihrem virtuellen Adressraum zu berücksichtigen. Die VM wurde in ANSI-C mit einem kleineren Anteil SLE88 spezifischen Assembler-Codes implementiert
  • XML Modultest-Framework Design und Implementierung eines regressionsfähigen Modultest-Frameworks in Java mit Swing. Die Modultests werden mittels eines spezialisierten XML-Editors erstellt und dann in das Zielformat des Test-Simulators transformiert. Dabei werden die Test-Skripte im XMLFormat gespeichert. Ziel dieses Projektes war zum einen die Vereinfachung der Testerstellung und zum anderen deren automatische Konsistenzprüfung.

C EDE/Tasking CrossView MKS Infineon SLE88 mit PSL JDK 1.3.1 JDK 1.4 JBuilder XML-Spy 3.5
Giesecke&Devrient GmbH, München
2 Monate
2001-10 - 2001-11

Design und Entwicklung

  • Design und Entwicklung einer Handelsplattform für End-Of-Day Tradingsysteme. Dabei werden automatisiert Gruppen von Wertpapieren nach vorgegebenen Ereignismustern (Quotes und News) durchsucht und bei positiver Bewertung eine Kauf- oder Verkaufsempfehlung erteilt. Hierzu kommt ein eigens für diesen Zweck entwickeltes Marktmodell zum Einsatz. Zusätzlich wird ein Trading-Plan mit Stopp-Loss Empfehlung und Checkpoints generiert. Hierbei kommen technische Indikatoren wie z.B. „Price Distribution Function“ und heuristische Algorithmen für die Kategorisierung von Nachrichten zum Einsatz. Diese Plattform wird seit 1/2002 erfolgreich eingesetzt.
Perl JDK 1.3 NetBeans 3.x J2EE Tomcat 4.x Tuxedo 7.x Oracle 8.1 make
In-House, München

Aus- und Weiterbildung

Aus- und Weiterbildung

7 Jahre 8 Monate
1984-10 - 1992-05

Informatik- und Elektrotechnikstudium

Diplom (Univ.) Informatiker, TU München
Diplom (Univ.) Informatiker
TU München

Position

Position

Meine Schwerpunkte liegen in der Analyse, Design und
Implementierung von komplexen, auch verteilten, Software-Architekturen.
Dabei kann ich meine langjährigen Erfahrungen sowohl aus den
Bereichen SmartCard/JavaCard, Datenbank, Client/Server mit einbringen.
Falls gewünscht übernehme ich gerne auch die technische
Projektleitung bzw. die Rolle als System Architekt.

Auch nach Abschluß von Projekten stehe ich gerne für Fragen und
On-Site Support zur Verfügung.

Weitere Referenzen teile ich auf Anfrage gerne mit.

Kompetenzen

Kompetenzen

Top-Skills

Compiler Construction Safety-Critical Embedded Programming C Development JavaCard Benchmarking Test-Development C Developer ANTLR PEARL

Produkte / Standards / Erfahrungen / Methoden

Clearcase
Docker
GDB
Kubernetes
Rhapsody (UML)
Scrum
StarlingX
Telegraf
XML

Schwerpunkte

Eingebettete, insbesondere echtzeitfähige Systeme, Übersetzerbau und komplexe verteilte Softwarearchitekturen

 

Organisationen

Aktives Mitglied des DIN-Normungsausschusses ?Programmiersprachen?

Mitglied der Gesellschaft für Informatik (GI)

Aktives Mitglied der GI Fachgruppe Echtzeitsysteme und

PEARL und des Arbeitskreises Embedded Systems, RTOSUH/PEARL

Leiter des GI-Arbeitskreises ?OpenPEARL Compiler?

seit 2016 Lehrbeauftragter der Fakultät Mathematik und Informatik der FernUniversität Hagen

seit 2014 GNU Maintainer für GNU perf

 

Zusammenfassung

Meine fachlichen Schwerpunkte liegen in der Analyse, Design und Implementierung

von eingebetteten Systemen und im Übersetzerbau. Auf Wunsch übernehme

ich die technische Projektleitung oder die Rolle als System Architekt. Auch nach

Abschluß von Projekten stehe ich natürlich für Fragen und On-Site Support zur Verfügung

 

Spezial-Kenntnisse

  • Eingebettete Systeme
  • Echtzeitbetriebsysteme wie z.B. VxWorks, ?uCos? und eCos
  • SmartCard/JavaCard 2.x (bis auf Source Code Ebene) inklusive ISO / IEC 7816
  • Infineon SLE70,SLE88 und SLE90 (Fortress) mit PSL API und Hitex Emulator
  • Konstruktion von Compilern und Interpretern; Code-Optimierung
  • LLVM/CLANG, ANTLR

Betriebssysteme

CP/M
Debian
Echtzeitbetriebssysteme
RTOS, RT-Linux
HPUX
9.x-10.2x
IRIX
6.x
Linux
Linux seit Kernel 0.8
Montavista Linux
MS-DOS
RTOS (Real Time OS)
SUN OS, Solaris
2.5
Suse ab 4.2
Unix
SUN OS, HP UNIX, LINUX, IRIX
VMS
VxWorks
6.7
Windows

Programmiersprachen

Assembler
80x86 (Projekterfahrung)
bash
C
Projekterfahrung
C++
Projekterfahrung
C/C++
Chill
Projekterfahrung
Emacs
Projekterfahrung
ESQL/C
Projekterfahrung
Imake, GNU-Make, Make-Maker etc...
Projekterfahrung
Java
Projekterfahrung
JavaScript
Projekterfahrung
make
MATLAB
OBJECT-CHILL
Projekterfahrung
Objective C
Pascal
Projekterfahrung
Perl
Projekterfahrung
PHP
Projekterfahrung
PL/SQL
Projekterfahrung
Python
Projekterfahrung
Qt
Projekterfahrung
Ruby
Shell
Projekterfahrung
Tcl/Tk
TeX, LaTeX
Projekterfahrung
yacc/lex
Projekterfahrung

Datenbanken

B-Tree
Illustra
Projekterfahrung
InfluxDB
Informix
ONLINE DSA 7.x - IDS 9.x (Projekterfahrung)
JDBC
MySQL
Projekterfahrung
ODBC
Projekterfahrung
Oracle
Version 7.x-10.x, PL/SQL/Pro*C/C++ (Projekterfahrung)
Postgres
5.x-8.x (Projekterfahrung)
RDB
Projekterfahrung
RTP/TSP
Solid DB
Projekterfahrung
SQL
Projekterfahrung
Sqlite
Projekterfahrung

Datenkommunikation

APDU
CM-API
Ethernet
Internet, Intranet
Projekterfahrung
Message Queuing
Tuxedo (Projekterfahrung)
Middleware
RS232
Projekterfahrung
TCP/IP
Projekterfahrung
TLP/T=0
Tuxedo
Weblogic Enterprise Server
Weblogic Server
Windows Netzwerk

Hardware

Artesyn MAXCORE
Ascii/X - Terminals
ATMEL ATMEGA128
ATTiny
Blade Architectur
Kennicott bzw. Wainwright
Digital
Echtzeitsysteme
RTOS
embedded Systeme
V25, SLE88
Emulatoren
HITEX, Infineon ET88
HP
HP-UX 9.x - 10.20
Infineon C7/80251
Infineon Smartcard
JavaCard Chip SLE88
Mikrocontroller
V25
MSP430
NEC
V25
PC
Silicon-Graphics
IRIX 6.x
SUN
SUN OS 2.6 und neuer

Berechnung / Simulation / Versuch / Validierung

CPPUnitTest

Design / Entwicklung / Konstruktion

Enterprise Architect

Branchen

Branchen

  • Telekommunikation
  • Datenbankhersteller
  • Toolhersteller
  • SmartCard
  • Finanzdienstleister
  • Banken
  • Versicherungen
  • Medizintechnik
  • Software
  • Industrie

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

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

Das GULP Freelancer-Portal

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