Softwareentwickler für Embedded Systems, Firmware, Driver, Bootcode, C/C++, Assembler, Matlab, VHDL
Aktualisiert am 01.11.2021
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.11.2021
Verfügbar zu: 50%
davon vor Ort: 50%
Deutsch
Muttersprache
Englisch
Verhandlungssicher
Französisch
Grundkenntnisse

Einsatzorte

Einsatzorte

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

Projekte

Projekte

2015 - heute OSRAM GmbH / Firmware Entwicklung OTi DALI 35/60/90 GenII

Implementierung, Dokumentation und Beratung Embedded Software für EVG

  • Analyse existierender Firmware
  • Implementierung einzelner Module in C
  • Optimierung der existierenden Firmware hinsichtlich Wiederverwendbarkeit und Testbarkeit
  • Anwendung von Test Driven Development (TDD)
  • Generierung eines Build Systems (GNU Makefile)
  • Subversion Versionskontrolle 

 

2014 - 2015 ZODIAC CABIN CONTROLS GMBH - Aircraft Systems

Software Entwicklung Central Cabin-Controller für ein Luftfahrtprojekt DAL C/D

Implementierung Embedded Software und Dokumentation,

DO-178B Zertifizierung nach DAL C/ DAL D

  • Freescale i.MX6 Dual Core / ARM Cortex A9
  • IAR ? Embedded Workbench for ARM
  • Micrium ? MicroC/OS-II Realtime Operating System
  • Bare-Bone Boot Code Entwicklung in C
  • SD Card Treiber Entwicklung in C
  • eMMC Treiber Entwicklung in C
  • SDMA Treiber Entwicklung in C
  • UART Treiber Entwicklung in C mit SDMA Unterstützung
  • Ethernet / PHY Treiber Entwicklung in C
  • IPv4 / UDP Stack Entwicklung in C
  • Subversion Versionskontrolle

2010 - 2014 Infineon Wireless / Intel - Software Defined FM Radio ASIP DSP

Firmware Implementierung (DSP-Assembler), Firmware Verifikation und Hardware Verifikation (VHDL/Modelsim), Simulation und Support für Firmware und Hardware Konzepte

  • Analyse existierender signalverarbeitender Algorithmen Modelle (Synopsys Coware / Matlab)
  • Implementierung von Firmware Modulen in DSP RISC Prozessor Assembler (Bit True - Signalverarbeitung, Kontrollverarbeitung, Produktionstests)
  • Fehlersuche der implementierten Firmware Module in der Simulation (LISA Simulation, RTL Simulation / Modelsim)
  • Regression Tests Generierung auf Modulebene (unit test library)
  • Firmware bring-up Support
  • On-Chip Fehlersuche und Test (Lauterbach)
  • Dokumentation
  • Pflege und Weiterentwicklung eigener Entwicklungsumgebung (UNIX/Linux, perl, gnu C Präprozessor, Lisa Assembler Makros, gnu make, Eclipse)
  • Versionskontrolle IBM/Rational Clearcase

 

2009 - 2010 Revue Thommen / Maintenance Software für Air Data Computer und Altimeter

Implementierung Configuration und Maintenance Tools für Embedded Systems im Luftfahrtbereich

  • ARINC 429, VS C++, RS232 dummy Peripherals (VS C# Dot-Net), Spline- Interpolation

 

2008 - 2009 Comtronic GmbH / Frequenzanzeige für Radio Communication System über ARINC 429

Implementierung Embedded Software und Dokumentation,

DO-178B Zertifizierung nach DAL C

  • Infineon C164 (16-Bit Microcontroller), ARINC 429, I2C, RS232
  • RTW Standards (Requirement, Code and Design Standards)
  • SW Implementierung in ANSI-C nach RTCA DO-178B, Boot code, Power up Built-In Test (PBIT), Continuous Built-In Test (CBIT), Applikation zur Anzeige von ARINC Messages auf einem 9 Digit LED Display
  • Die Embedded Software steuert über Port-Pins kaskadierte Schieberegister einer 9 stelligen LED Anzeige, PWM Peripheral zum dimmen mithilfe von programmierten Dimm-Tabellen und ein ADC Peripheral für analoge Bedien- Elemente
  • Für die Entwicklung und zum Testen wurde eine C++ Applikation programmiert um einen ARINC429 Seriellen Port Adapter anzusteuern.
  • Die Applikation Software wurde mit dem KEIL µVision3 Simulator / Debugger und simulierten Peripherals entwickelt und getestet (Advanced Generic Simulator Interface (AGSI), Visual Studio C++ DLL, EEPROM Modell mit I2C bit-level Schnittstelle, ARINC 429 Modell mit Port-Pin bit-level Schnittstelle, LED Anzeige mit Port-Pin bit-level Schnittstelle
  • Simulator mit allen Bedien- und Anzeige Elementen in VS C++ erstellt für die Präsentation
  • Zeichen Pixel Editor in VS C++ implementiert
  • Dokumentation nach DO-178B (SW Requirement Document, SW Design Description, SW Verification Cases and Procedures, Verification Description)

 

2006-2007 Elternzeit

 

2004 - 2005 Infineon Technologies AG, München / Bereich: "MC Program Management Team" (50%)

Junior Program Manager für die Entwicklung einer Automotive Microcontroller Programmfamilie

32-Bit Microcontroller (TriCore) basierte ASICs für Sicherheitsapplikationen (ABS, ESP, TCS)

 

2003 - 2004 Infineon Technologies AG, München

Bereich:  "Automotive Microcontroller System and Concept Engineering "

Staff Engineer Digital Design

Entwicklung Embedded Software eines universellen Mess- und Applikationsprotokolls der Automobilindustrie (ASAM / XCP on USB)

Requirement Engineering, Implementierung (Assembler, C++), Verifikation, Dokumentation und Support 

 

Boot Software für 32-Bit Microcontroller Emulation Device

Requirement Engineering, Implementierung (Assembler), Verifikation, Dokumentation und Support

1999 - 2003 Siemens Halbleiter (Infineon Technologies AG), München

Bereich:  "Microcontroller Design" / Senior Engineer Digital Design

 

Projektleitung MCDS (Multicore Debug Solution) Entwicklung

32-Bit SoC (System-on-Chip) Echtzeit-Debug System

Projektumfang: 10 Ingenieure / 90 MM, Konstruktionsleitung, Requirement Engineering, Implementierung (Senior Designer, VHDL, Synopsys, Modelsim, Perl), Hardware-Analyse, Dokumentation und Support

 

Projektleitung USB Peripheral Entwicklung

Projektumfang: 2 Ingenieure / 24 MM, Requirement Engineering, Implementierung (VHDL, Synopsys, Modelsim, Verifikation, Hardware-Analyse, Dokumentation und Support

 

USB SoftwareTreiber Entwicklung für Embedded Linux und Windows

Requirement Engineering, Implementierung (C++), Dokumentation und Support

 

Entwicklung 16-Bit Microcontroller SoC Bus Systeme

Requirement Engineering, Implementierung (VHDL, Synopsys Modelsim), Verifikation, Dokumentation und Support

 

16-Bit Microcontroller Timer

Migration, Verifikation und Support

1998 - 1999 Wissenschaftlicher Mitarbeiter

Fraunhofer Institut für Mikroelektronische Schaltungen und Systeme (FhG - IMS; Duisburg)

Wissenschaftlicher Mitarbeiter im Bereich ASIC Design

Consultant bei Siemens-Halbleiter München

Technologietransfer eines Microcontroller Cores, Schwerpunkt Bussysteme und Peripherieankopplung (Schematic Entry, VHDL, Verilog)

 

1997 - 1998 Freiberuflicher Programmierer

Entwicklung einer Client / Server (SQL) Anwendung zur Messdatenerfassung und Analyse, Erzhafen Rotterdam / Holland Konzeption, Implementierung (Pascal), Dokumentation und Inbetriebnahme

Aus- und Weiterbildung

Aus- und Weiterbildung

1990-1997 Studium der Elektrotechnik (TU), Abschluss: Diplom Ingenieur

Technische Universität Dortmund, Schwerpunkt: Nachrichtentechnik Gesamtnote: gut Wahlpraktika: SPS-Programmierung, VHDL ­ Design

Studienarbeit: Implementierung zweier neuronaler Netze (PNN, RBF) zur Klassifizierung in C++

Diplomarbeit: Siemens AG, München, Note: sehr gut
Zentralabteilung Forschung und Entwicklung "Topologiestrukturen zur Transformation von
Fuzzy-Systemkomponenten in neuronale Netze"

Studienbegleitende Tätigkeit:
Wissenschaftlicher Mitarbeiter von Prof. Dr. M. el Baradie, Fuzzy-Logic und
Softwareentwicklung

 

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Agile Software Development, SCRUM
ARM Cortex A9 / ARM Cortex M
ASAM-Norm
ASAM/XCP
Git
Keil Tools
Lauterbach
MCDS
Infineon Multicore Debug Solution
Mentor Modelsim
PLS
Rational ClearCase
Subversion
Synopsys
System Studio
TDD (Test-Driven Development)
V-Modell
DO-178B
J1939
UDS

Betriebssysteme

Echtzeitbetriebssysteme
Micrium MicroC/OS
SUN OS, Solaris
Unix
Windows

Programmiersprachen

.NET Framework
Assembler
tiefgehende Kentnisse (Tricore/PCP, Synopsys DSP)
C
tiefgehende Kentnisse (Embedded Systems)
C#
tiefgehende Kentnisse
C++
tiefgehende Kentnisse
Emacs
tiefgehende Kentnisse (Lisp)
Imake, GNU-Make, Make-Maker etc...
grundlegende Kentnisse
Maschinensprachen
spezielle RISC Prozessoren (ASIP)
MATLAB / Simulink
tiefgehende Kentnisse (bitgenaue Modelle)
Perl
tiefgehende Kentnisse (UNIX Skripte, Yapp Parser)
Shell
tiefgehende Kentnisse
Tcl/Tk
tiefgehende Kentnisse (Modelsim Skripte und Modelle)
Visual C++
Python

Datenbanken

SQL
grundlegende Kentnisse (NHibernate)

Datenkommunikation

Bus
tiefgehende Kentnisse (Tricore FPI/PCP, ARINC 429, I2C, USB)
Ethernet
tiefgehende Kenntnisse
Internet, Intranet
grundlegende Kentnisse
ISO/OSI
tiefgehende Kentnisse
RS232
tiefgehende Kentnisse
SD Card
tiefgehende Kenntnisse
TCP/IP
tiefgehende Kentnisse

Hardware

Digital
Digital Busses
Digitale Signalprozessoren
Echtzeitsysteme
embedded Systeme
Emulatoren
Fuzzy Controller
Messgeräte
Mikrocontroller
PC
Proprietäre HW

Berechnung / Simulation / Versuch / Validierung

Algorithmus
Synopsys System Studio, Matlab
Embedded
Lauterbach, Keil, PLS
Software
TDD, NUnit
VHDL Simualtion
Mentor Graphics Modelsim, Cadence Specman

Design / Entwicklung / Konstruktion

ASIC Entwicklung
tiefgehende Kentnisse
Bitgenaue Modelle (bit-true)
Software Entwicklung
System Level Modelle
Virtual Prototyping
tiefgehende Kentnisse
HAL

Branchen

Branchen

  • Luft- und Raumfahrt
  • Telekommunikation / Mobiltelefonie
  • Automotive
  • EDA

Einsatzorte

Einsatzorte

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

Projekte

Projekte

2015 - heute OSRAM GmbH / Firmware Entwicklung OTi DALI 35/60/90 GenII

Implementierung, Dokumentation und Beratung Embedded Software für EVG

  • Analyse existierender Firmware
  • Implementierung einzelner Module in C
  • Optimierung der existierenden Firmware hinsichtlich Wiederverwendbarkeit und Testbarkeit
  • Anwendung von Test Driven Development (TDD)
  • Generierung eines Build Systems (GNU Makefile)
  • Subversion Versionskontrolle 

 

2014 - 2015 ZODIAC CABIN CONTROLS GMBH - Aircraft Systems

Software Entwicklung Central Cabin-Controller für ein Luftfahrtprojekt DAL C/D

Implementierung Embedded Software und Dokumentation,

DO-178B Zertifizierung nach DAL C/ DAL D

  • Freescale i.MX6 Dual Core / ARM Cortex A9
  • IAR ? Embedded Workbench for ARM
  • Micrium ? MicroC/OS-II Realtime Operating System
  • Bare-Bone Boot Code Entwicklung in C
  • SD Card Treiber Entwicklung in C
  • eMMC Treiber Entwicklung in C
  • SDMA Treiber Entwicklung in C
  • UART Treiber Entwicklung in C mit SDMA Unterstützung
  • Ethernet / PHY Treiber Entwicklung in C
  • IPv4 / UDP Stack Entwicklung in C
  • Subversion Versionskontrolle

2010 - 2014 Infineon Wireless / Intel - Software Defined FM Radio ASIP DSP

Firmware Implementierung (DSP-Assembler), Firmware Verifikation und Hardware Verifikation (VHDL/Modelsim), Simulation und Support für Firmware und Hardware Konzepte

  • Analyse existierender signalverarbeitender Algorithmen Modelle (Synopsys Coware / Matlab)
  • Implementierung von Firmware Modulen in DSP RISC Prozessor Assembler (Bit True - Signalverarbeitung, Kontrollverarbeitung, Produktionstests)
  • Fehlersuche der implementierten Firmware Module in der Simulation (LISA Simulation, RTL Simulation / Modelsim)
  • Regression Tests Generierung auf Modulebene (unit test library)
  • Firmware bring-up Support
  • On-Chip Fehlersuche und Test (Lauterbach)
  • Dokumentation
  • Pflege und Weiterentwicklung eigener Entwicklungsumgebung (UNIX/Linux, perl, gnu C Präprozessor, Lisa Assembler Makros, gnu make, Eclipse)
  • Versionskontrolle IBM/Rational Clearcase

 

2009 - 2010 Revue Thommen / Maintenance Software für Air Data Computer und Altimeter

Implementierung Configuration und Maintenance Tools für Embedded Systems im Luftfahrtbereich

  • ARINC 429, VS C++, RS232 dummy Peripherals (VS C# Dot-Net), Spline- Interpolation

 

2008 - 2009 Comtronic GmbH / Frequenzanzeige für Radio Communication System über ARINC 429

Implementierung Embedded Software und Dokumentation,

DO-178B Zertifizierung nach DAL C

  • Infineon C164 (16-Bit Microcontroller), ARINC 429, I2C, RS232
  • RTW Standards (Requirement, Code and Design Standards)
  • SW Implementierung in ANSI-C nach RTCA DO-178B, Boot code, Power up Built-In Test (PBIT), Continuous Built-In Test (CBIT), Applikation zur Anzeige von ARINC Messages auf einem 9 Digit LED Display
  • Die Embedded Software steuert über Port-Pins kaskadierte Schieberegister einer 9 stelligen LED Anzeige, PWM Peripheral zum dimmen mithilfe von programmierten Dimm-Tabellen und ein ADC Peripheral für analoge Bedien- Elemente
  • Für die Entwicklung und zum Testen wurde eine C++ Applikation programmiert um einen ARINC429 Seriellen Port Adapter anzusteuern.
  • Die Applikation Software wurde mit dem KEIL µVision3 Simulator / Debugger und simulierten Peripherals entwickelt und getestet (Advanced Generic Simulator Interface (AGSI), Visual Studio C++ DLL, EEPROM Modell mit I2C bit-level Schnittstelle, ARINC 429 Modell mit Port-Pin bit-level Schnittstelle, LED Anzeige mit Port-Pin bit-level Schnittstelle
  • Simulator mit allen Bedien- und Anzeige Elementen in VS C++ erstellt für die Präsentation
  • Zeichen Pixel Editor in VS C++ implementiert
  • Dokumentation nach DO-178B (SW Requirement Document, SW Design Description, SW Verification Cases and Procedures, Verification Description)

 

2006-2007 Elternzeit

 

2004 - 2005 Infineon Technologies AG, München / Bereich: "MC Program Management Team" (50%)

Junior Program Manager für die Entwicklung einer Automotive Microcontroller Programmfamilie

32-Bit Microcontroller (TriCore) basierte ASICs für Sicherheitsapplikationen (ABS, ESP, TCS)

 

2003 - 2004 Infineon Technologies AG, München

Bereich:  "Automotive Microcontroller System and Concept Engineering "

Staff Engineer Digital Design

Entwicklung Embedded Software eines universellen Mess- und Applikationsprotokolls der Automobilindustrie (ASAM / XCP on USB)

Requirement Engineering, Implementierung (Assembler, C++), Verifikation, Dokumentation und Support 

 

Boot Software für 32-Bit Microcontroller Emulation Device

Requirement Engineering, Implementierung (Assembler), Verifikation, Dokumentation und Support

1999 - 2003 Siemens Halbleiter (Infineon Technologies AG), München

Bereich:  "Microcontroller Design" / Senior Engineer Digital Design

 

Projektleitung MCDS (Multicore Debug Solution) Entwicklung

32-Bit SoC (System-on-Chip) Echtzeit-Debug System

Projektumfang: 10 Ingenieure / 90 MM, Konstruktionsleitung, Requirement Engineering, Implementierung (Senior Designer, VHDL, Synopsys, Modelsim, Perl), Hardware-Analyse, Dokumentation und Support

 

Projektleitung USB Peripheral Entwicklung

Projektumfang: 2 Ingenieure / 24 MM, Requirement Engineering, Implementierung (VHDL, Synopsys, Modelsim, Verifikation, Hardware-Analyse, Dokumentation und Support

 

USB SoftwareTreiber Entwicklung für Embedded Linux und Windows

Requirement Engineering, Implementierung (C++), Dokumentation und Support

 

Entwicklung 16-Bit Microcontroller SoC Bus Systeme

Requirement Engineering, Implementierung (VHDL, Synopsys Modelsim), Verifikation, Dokumentation und Support

 

16-Bit Microcontroller Timer

Migration, Verifikation und Support

1998 - 1999 Wissenschaftlicher Mitarbeiter

Fraunhofer Institut für Mikroelektronische Schaltungen und Systeme (FhG - IMS; Duisburg)

Wissenschaftlicher Mitarbeiter im Bereich ASIC Design

Consultant bei Siemens-Halbleiter München

Technologietransfer eines Microcontroller Cores, Schwerpunkt Bussysteme und Peripherieankopplung (Schematic Entry, VHDL, Verilog)

 

1997 - 1998 Freiberuflicher Programmierer

Entwicklung einer Client / Server (SQL) Anwendung zur Messdatenerfassung und Analyse, Erzhafen Rotterdam / Holland Konzeption, Implementierung (Pascal), Dokumentation und Inbetriebnahme

Aus- und Weiterbildung

Aus- und Weiterbildung

1990-1997 Studium der Elektrotechnik (TU), Abschluss: Diplom Ingenieur

Technische Universität Dortmund, Schwerpunkt: Nachrichtentechnik Gesamtnote: gut Wahlpraktika: SPS-Programmierung, VHDL ­ Design

Studienarbeit: Implementierung zweier neuronaler Netze (PNN, RBF) zur Klassifizierung in C++

Diplomarbeit: Siemens AG, München, Note: sehr gut
Zentralabteilung Forschung und Entwicklung "Topologiestrukturen zur Transformation von
Fuzzy-Systemkomponenten in neuronale Netze"

Studienbegleitende Tätigkeit:
Wissenschaftlicher Mitarbeiter von Prof. Dr. M. el Baradie, Fuzzy-Logic und
Softwareentwicklung

 

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Agile Software Development, SCRUM
ARM Cortex A9 / ARM Cortex M
ASAM-Norm
ASAM/XCP
Git
Keil Tools
Lauterbach
MCDS
Infineon Multicore Debug Solution
Mentor Modelsim
PLS
Rational ClearCase
Subversion
Synopsys
System Studio
TDD (Test-Driven Development)
V-Modell
DO-178B
J1939
UDS

Betriebssysteme

Echtzeitbetriebssysteme
Micrium MicroC/OS
SUN OS, Solaris
Unix
Windows

Programmiersprachen

.NET Framework
Assembler
tiefgehende Kentnisse (Tricore/PCP, Synopsys DSP)
C
tiefgehende Kentnisse (Embedded Systems)
C#
tiefgehende Kentnisse
C++
tiefgehende Kentnisse
Emacs
tiefgehende Kentnisse (Lisp)
Imake, GNU-Make, Make-Maker etc...
grundlegende Kentnisse
Maschinensprachen
spezielle RISC Prozessoren (ASIP)
MATLAB / Simulink
tiefgehende Kentnisse (bitgenaue Modelle)
Perl
tiefgehende Kentnisse (UNIX Skripte, Yapp Parser)
Shell
tiefgehende Kentnisse
Tcl/Tk
tiefgehende Kentnisse (Modelsim Skripte und Modelle)
Visual C++
Python

Datenbanken

SQL
grundlegende Kentnisse (NHibernate)

Datenkommunikation

Bus
tiefgehende Kentnisse (Tricore FPI/PCP, ARINC 429, I2C, USB)
Ethernet
tiefgehende Kenntnisse
Internet, Intranet
grundlegende Kentnisse
ISO/OSI
tiefgehende Kentnisse
RS232
tiefgehende Kentnisse
SD Card
tiefgehende Kenntnisse
TCP/IP
tiefgehende Kentnisse

Hardware

Digital
Digital Busses
Digitale Signalprozessoren
Echtzeitsysteme
embedded Systeme
Emulatoren
Fuzzy Controller
Messgeräte
Mikrocontroller
PC
Proprietäre HW

Berechnung / Simulation / Versuch / Validierung

Algorithmus
Synopsys System Studio, Matlab
Embedded
Lauterbach, Keil, PLS
Software
TDD, NUnit
VHDL Simualtion
Mentor Graphics Modelsim, Cadence Specman

Design / Entwicklung / Konstruktion

ASIC Entwicklung
tiefgehende Kentnisse
Bitgenaue Modelle (bit-true)
Software Entwicklung
System Level Modelle
Virtual Prototyping
tiefgehende Kentnisse
HAL

Branchen

Branchen

  • Luft- und Raumfahrt
  • Telekommunikation / Mobiltelefonie
  • Automotive
  • EDA

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.