freiberufler Embedded Softwareentwickler C / C++ auf freelance.de

Embedded Softwareentwickler C / C++

offline
  • 76‐83€/Stunde
  • 85560 Ebersberg
  • Nähe des Wohnortes
  • de  |  en
  • 16.01.2024

Kurzvorstellung

Softwareentwickler C / C++. Viel Erfahrung in der Entwicklung von Embedded Systemen.

Qualifikationen

  • Embedded Entwicklung / hardwarenahe Entwicklung
  • Regelungstechnik / Steuerungstechnik

Projekt‐ & Berufserfahrung

Softwareentwickler
UX Gruppe GmbH & Co. KG, Gilching
7/2019 – 12/2020 (1 Jahr, 6 Monate)
IT & Entwicklung
Tätigkeitszeitraum

7/2019 – 12/2020

Tätigkeitsbeschreibung

Firma/Institut: UX Gruppe GmbH & Co. KG
Projekt: FRANKE Kaffee Automaten
Software: C++, gcc Compiler, cmake, Qt, QML, Git.
Entwicklung einer Software zur Steuerung von FRANKE Kaffeeautomaten auf einer embedded Linux Plattform.

Softwaredesign, Softwarearchitektur.
IoT Anbindung, Flottenverwaltung per Cloud.
Parametrierung per REST Interface.
Implementierung einer Paketverwaltung.
Programmierung nach Designpatterns (z.B.: Factory, Strategy ... ).
Design: Vererbungshierarchien, Polymorphismus, Interfaces mit puren virtuellen Methoden, Templates.
Implementierung von Buisiness logic .
User Interface mit QML erstellen.
Build Jobs in Jenkins integrieren.
Bugfixing, Debugging mit gdb.
Codeverwaltung mit Git.
Buildsystem Organisation mit cmake.
Unittesting mit Qt Test

Schwerpunkte: Softwaredesign, Softwareentwicklung, Multithreading, Programmierung Buisinesslogik, Feature Implementierung. IoT. REST. Schreiben von Unittests.

Eingesetzte Qualifikationen

Embedded Linux

Softwareentwickler
Instrument Systems GmbH, Muenchen
7/2017 – 6/2019 (2 Jahre)
IT & Entwicklung
Tätigkeitszeitraum

7/2017 – 6/2019

Tätigkeitsbeschreibung

Projekt: LumiSuite, LumiTop
Software: C++, gcc, clang Compiler, cmake, Python, Qt, Git, Windows, Mac Os.
Entwicklung einer Software zur Bilderfassung und Bildanalyse in einem Team von ca. 10 Entwicklern.

Softwaredesign, Softwarearchitektur.
Programmierung nach Designpatterns (z.B.: Factory, Strategy ... ).
Design: Vererbungshierarchien, Polymorphismus, Interfaces mit puren virtuellen Methoden, Templates.
Implementierung von Algorithmen zur Messdatenerfassung und Bildauswertung in Qt und OpenCV.
Entwicklung eines SDK‘s fuer Endkunden in C++ und C#.
Build Jobs in Jenkins / Teamcity integrieren.
Erstellung von Dll’s und statischen Bibliotheken.
Spezifikation und Dokumentation.
Bugfixing, Debugging mit gdb.
Codeverwaltung mit Git.
Buildsystem Organisation mit cmake.
Unittesting mit Google Test

Schwerpunkte: Softwaredesign, Softwareentwicklung, Multithreading, Ethernet Kommunikation mit GigE Kameras, Bildverarbeitung, Datenvisualisierung, GUI Programmierung, Feature Implementierung. Schreiben von Unittests.

Eingesetzte Qualifikationen

Bildverarbeitung

Softwareentwickler
E.S.R.Labs AG, Muenchen
1/2016 – 6/2017 (1 Jahr, 6 Monate)
Automobilindustrie
Tätigkeitszeitraum

1/2016 – 6/2017

Tätigkeitsbeschreibung

Projekt: 7er BMW Display Key
Software: C, C++, ARM gcc Compiler, Bake, Eclipse, Git, embedded Linux Ubuntu Linux.

Entwicklung der Firmware des Powermanagements für den 7er BMW Schlüssel (Display Key) auf einem NXP ARM Cortex M0+ Controller.

Auslesen von Sensordaten (fuel gauge bq27520-G4) wie beispielsweise Ladezustand oder Temperatur des Display Key Akkus.
Kommunikation mit dem Maincontroller des Schlüssels (NXP i.MX 6 - ARM Cortex A9) per I2C.
Entwicklung eines Bootloader Updaters
Eventbasierte Programmierung mit Dispatcher und State Machine.
Schreiben von Unittests mit Google Test.

Projekt: BMW Carsharing DriveNo. Software: C, C++, TI Compiler, Bake, Eclipse, Git, Ubuntu Linux, embedded Linux ,KEIL RTX RTOS.
Entwicklung einer Firmware um die Bluetooth Low Energy (BLE) Kommunikation des Carsharing Moduls auf einem TI CC2640 Controller zu realisieren.

Kommunikation mit dem Maincontroller per SPI um BLE Datenübertragung sicherzustellen.
Bidirektionale Datenübertragung Android App ↔ BLE (CC2640) ↔ SPI (Calypso) .
Eventbasierte Programmierung mit TI RTOS.

Programmierung eines ARM Cortex M4 (NXP S32K144). Kommunikation
mit einem NFC Chip per SPI (Außeneinheit des Carsharing Systems).

Schwerpunkte: Softwaredesign, Softwareentwicklung, Firmware Entwicklung für Embedded System mit der Anforderung besonders kompakten und schnellen Code zu generieren. Verifizierung und Test der Sensorik, Implementierung der Buskommunikation per SPI und I2C. Analyse und Test der Bussysteme mit Oszilloskop. Schreiben von Unittests.

Eingesetzte Qualifikationen

Embedded Systems

Softwareentwickler
i for T GmbH, Rosenheim
7/2012 – 12/2015 (3 Jahre, 6 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

7/2012 – 12/2015

Tätigkeitsbeschreibung

Zeitraum: Juli 2012 - November 2015
Firma/Institut: i for T GmbH (ifm electronic)

Projekt: Neigungssensor
Software: C, C++, ARM IAR Compiler, IAR Embedded Workbench IDE, Microsoft Visual Studio.
• Entwicklung einer Firmware für ein Embedded System zur Neigungsmessung in C. Entwicklung eines CAN Bootloaders in C.
• Spezifizierung und Verifizierung der benötigten Sensorik (MEMS).
• Verarbeitung digitaler Sensordaten per SPI / I2C Bus. Implementierung von FIR Filtern. Digitale Signalverarbeitung.
• Test und Fehlersuche an Bussystemen (SPI / I2C / CAN – CANopen – J1939) mit Oszilloskop.
• Entwicklung des Sensorinterfaces mit CAN - CANopen und J1939.
• Eventbasierte Programmierung mit Dispatcher und State Machine.
• Hardware: ARM Cortex M3 Prozessor.
• Fehlersuche mit C – SPY Debugger.
• Codeverwaltung mit Subversion.
• Umsetzung einer Temperaturregelung mit PID Regler.
• Implementierung der Datenspeicherung im FLASH / EEPROM.
• Entwicklung von Produktionstools (Visual Studio 2010 C++ / Qt) z.B.: Update der Neigungssensor Firmware per CAN Bus.
• Entwicklung von Dll’s (Visual Studio 2010 C++) um eine Schnittstelle zwischen Sensor und PC zu ermöglichen (CAN - CANopen und J1939).

(STM32 Microcontroller (ARM Cortex M3), IAR Embedded Workbench, IAR Compiler, C – SPY Debugger, C, C++, Microsoft Visual Studio 2010, Mi-crosoft Visual Studio Debugger, Subversion Versionsverwaltung, FreeRTOS)

Schwerpunkte: Softwaredesign, Softwareentwicklung, Firmware Entwick-lung für Embedded System mit der Anforderung besonders kompakten und schnellen Code zu generieren. Verifizierung und Test der Sensorik, Im-plementierung der Buskommunikation per SPI, I2C und CAN / CANopen / J1939. Analyse und Test der Bussysteme mit Oszilloskop. Regelungstech-nik, Simulation des PID Reglers mit Simulink, Implementierung des PID Reglers. Erstellung von Produktionstools. Multithreading.

Eingesetzte Qualifikationen

Forschung & Entwicklung (allg.), Embedded Systems, Hardware Entwicklung, Software Design, Apache Subversion (SVN), C, C++, Firmware, MATLAB / Simulink, Qt, Softwareentwicklung (allg.), Versionierung / Versionsverwaltung, Visual Studio

Softwareentwickler
RAYLASE focus on laser, Wessling
9/2011 – 4/2013 (1 Jahr, 8 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

9/2011 – 4/2013

Tätigkeitsbeschreibung

Zeitraum: September 2011 - Juni 2012
Firma/Institut: RAYLASE focus on laser
Entwicklung einer Testsoftware zur visuellen Einstellung von elektroni-schen Notch - Filterkomponenten.
Entwicklung einer SQL Produktdatenbank um sämtliche Produktgruppen der Firma zu erfassen.

• Spezifizierung des Prüfablaufs.
• Visualisierung der Messdaten, Entwicklung der GUI mit Windows Forms.
• Multithreading Architektur, Messdaten – Thread, Main – Thread (GUI).
• Implementierung von visuellen Komponenten wie Marker / Cursor.
• Ansteuerung eines externen USB Netzwerkanalysators (Omicron).
• Softwaredesign, Softwarearchitektur.
• Programmierung nach Designpatterns (z-:B.: Singleton, Factory …).
• Design: Vererbungshierarchien, Polymorphismus.
• Debugging mit Visual Studio Debugger.
• Gestaltung der Datenbankstruktur: Anlegen der Tabellen und Daten-verweise.
• Implementierung der Datenbank mit SQL - Abfragen. Datenbank – Ver-weise zu Dokumenten implementiert.


(Windows 7, Visual Studio .NET 2008, C#, SQL Server R2)

Schwerpunkte: Softwaredesign, Softwareentwicklung, Debugging, Mul-tithreading, Dokumentation. Datenvisualisierung, GUI Programmierung. USB Protokoll. Entwicklung eines Produktionstools. Datenbank – Design. SQL Programmierung.

Eingesetzte Qualifikationen

SQL, Windows 7, Software Design, Software Architektur / Modellierung, Visual Studio, Softwareentwicklung (allg.), .Net, C#, C++, C, User Interface (UI), Forschung & Entwicklung (allg.)

Softwareentwickler
Rohde & Schwarz, Muenchen
6/2007 – 6/2012 (5 Jahre, 1 Monat)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

6/2007 – 6/2012

Tätigkeitsbeschreibung

Zeitraum: Juni 2007 - Juni 2012
Firma/Institut: Rohde & Schwarz
Entwicklung einer Embedded Firmware für ein komplexes elektrotechnisches Messgerät in einem Team von ca. 20 Entwicklern.

• Softwaredesign, Softwarearchitektur.
• Programmierung nach Designpatterns (z-:B.: Singleton, Factory …).
• Design: Vererbungshierarchien, Polymorphismus, Interfaces mit puren virtuellen Methoden, Templates.
• Jede Codeänderung oder Implementierung wurde generell nur nach Code Reviews mit Kollegen freigegeben.
• Implementierung spezifischer Messmethoden.
• Multithreading Architektur (Messdaten – Thread, Datenbank – Thread ...).
• Mikrokontroller Programmierung in externem Kalibriermodul.
• Implementierung von Algorithmen zur Messdatenerfassung und Spei-cherung der Messgeräteeinstellungen per Serialisierung.
• Erstellung von Dll’s und statischen Bibliotheken.
• Visualisierung der Messdaten. Programmierung von User Interfaces mit MFC und Qt.
• Implementierung und Modifizierung von COM Schnittstellen.
• Spezifikation und Dokumentation.
• Bugfixing, Debugging per Remote - Debugging auf dem Messgerät mit Visual Studio Debugger.
• Codeverwaltung mit Rational ClearCase.
• Ansteuerung externer Geräte, LAN, USB.

(Windows CE, Visual Studio .NET 2008, C, C++, MFC, Qt, COM, ATL, IDL, Rational ClearCase Versionsverwaltung)

Schwerpunkte: Softwaredesign, Softwareentwicklung, Multithreading, Firmware Entwicklung für Embedded System mit der Anforderung beson-ders kompakten und schnellen Code zu generieren. Analyse und Test von Messdaten mit Oszilloskop, Gerätekommunikation per Ethernet und USB. Bugfixing und Debugging. Implementierung von Messmethoden.

Eingesetzte Qualifikationen

Embedded Systems, Windows CE, Software Design, Software Architektur / Modellierung, Qt, Microsoft Foundation Classes (MFC), Visual Studio, Versionierung / Versionsverwaltung, Softwareentwicklung (allg.), C++, C, Ethernet, LAN

Softwareentwickler
AGFA AG, Muenchen
12/2002 – 5/2007 (4 Jahre, 6 Monate)
Maschinen-, Geräte- und Komponentenbau
Tätigkeitszeitraum

12/2002 – 5/2007

Tätigkeitsbeschreibung

Zeitraum: Dezember 2002 - Juni 2003
Firma/Institut: AGFA AG
Prüfvorrichtung zur automatisierten Positionierung eines LCD. LCD wurde mittels 9 CCD Kameras und 6 schrittmotorgesteuerten Achsen zu einem Objektiv justiert und mit diesem anschließend verklebt. Die erforderliche Justagebewegung wurde durch Bildanalyse von 9 Kamerabildern ermittelt.

• Spezifizierung des Softwaresystems.
• Spezifizierung der Hardwarekomponenten.
• Spezifizierung und Test der benötigten Sensorik.
• Spezifizierung und Test der Motorsteuerung.
• Aufbau und Verdrahtung der elektronischen Komponenten.
• Entwicklung der kompletten Software in C / C#.
• Ansteuerung des Framegrabbers und der CCD Kameras.
• Entwicklung von speziellen Algorithmen zur Bildanalyse.
• Entwicklung von Testprozeduren und Testtools.

(Windows 2000, Visual Studio 6.0 und 2003, C , spätere Portierung auf .NET C# )
Schwerpunkte: Softwaredesign, Softwareentwicklung, Spezifikation der benötigten Hardware, Verifizierung und Test der Sensorik, Dokumentation, Entwicklung von besonders anwenderfreundlicher, robuster Software für die Produktion. Entwicklung von Testprozeduren und Tools zum Test der Sensorkomponenten.

Zeitraum: Juni 2003 - Juni 2007
Firma/Institut: AGFA Gevaert Healthcare GmbH
Entwicklung von spezieller Prüfsoftware für verschiedene Prüfgeräte zur Baugruppenprüfung, Wareneingangskontrolle. Geprüft wurden vorrangig optische Systeme.

• Spezifizierung der Softwaresysteme.
• Spezifizierung der Hardwarekomponenten.
• Spezifizierung und Verifizierung der benötigten Sensorik.
• Erstellung von Prüfverfahren für optische Systeme.
• Entwicklung von bedienerfreundlichen Benutzeroberflächen.
• Entwicklung von besonders robuster Prüfsoftware für die Produktion.
• Entwicklung von speziellen Objekten zur Bildanalyse.
• Multithreading Architektur (Messdaten – Thread, Main – Thread (GUI) ...).
• Programmierung nach Designpatterns (z-:B.: Singleton, Factory …).
• Design: Vererbungshierarchien, Polymorphismus.
• Spezifikation und Dokumentation.
• Erstellung von Dll’s und statischen Bibliotheken.
• Erstellung von Tools zur Sensorsteuerung in Linux mit gcc, Debugging der Tools mit gdb. Treiberentwicklung unter Linux.

(Windows 2000, XP, Linux, gcc, gdb, Visual Studio .NET 2003, 2005, C#, C, C++, LabView, MFC, ATL, WTL, LabVIEW, DIADEM, RSI IDL,)

Schwerpunkte: Softwaredesign, Softwareentwicklung, Multithreading, Spezifikation der benötigten Hardware, Verifizierung und Test der Senso-rik, Dokumentation, Entwicklung von besonders anwenderfreundlicher, robuster Software für die Produktion. Debugging.

Eingesetzte Qualifikationen

Software Design, Visual Studio, Softwareentwicklung (allg.), .Net, C#, C++, C, LabView, User Interface (UI), Design (allg.), Forschung & Entwicklung (allg.)

Ausbildung

Physikalische Technik
Dipl. - Ing. (FH)
2002
Muenchen

Über mich

Als freiberuflicher Dipl.- Ing (FH) bin ich in der Softwareentwicklung tätig. Ich entwickle individuelle Software, vorrangig im Bereich Embedded, Steuerungstechnik, Messtechnik und Bildverarbeitung.

Ich verfüge über fundierte Kenntnisse in den Programmiersprachen C, C++, C# sowie in der Softwarearchitektur / UML Modellierung.

Weitere Kenntnisse

Programmierung: C / C++ / C#
Entwurf: UML, Enterprise Architect
Betriebsysteme: MS Windows, Linux, Mac Os
Compiler: Microsoft, GNU GCC, IAR Workbench ARM
IDEs: Microsoft Visual Studio, Eclipse, IAR Workbench
Mikrokontroller: Atmel AVR, ARM Cortex M3 (STM32), TI
Konfgurationsmanagement: SVN, ClearCase
Bus-Protokolle: CANopen, SPI, I2C, Ethernet
Standards: MISRA

Sonstiges:
Fundierte Kenntnisse in der Elektronik. Sicherer Umgang mit Lötkolben, Multimeter, Oszilloskop, etc. Viel Erfahrung in der Entwicklung von Embedded Systemen.

Persönliche Daten

Sprache
  • Deutsch (Muttersprache)
  • Englisch (Gut)
Reisebereitschaft
Nähe des Wohnortes
Arbeitserlaubnis
  • Europäische Union
Profilaufrufe
4149
Alter
51
Berufserfahrung
22 Jahre und 3 Monate (seit 01/2002)
Projektleitung
3 Jahre

Kontaktdaten

Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.

Jetzt Mitglied werden