Evaluierung von Protobuf 3 und Apache Avro als potenzielle Lösungen für die Serialisierung, Speicherung und Übertragung großer Mengen an Logdaten auf Embedded-Systemen.
Entwicklung und Implementierung eines Generators, der Datendefinitionen aus einer MySQL-Datenbank ausliest und in Protobuf 3 `.proto`-Files bzw. Avro-JSON-Files umwandelt. Zur Optimierung der Integration generiert der Generator auch die dazugehörigen C++-Adapterklassen für beide Formate. (Python)
Konzeption und Umsetzung eines Konverterprogramms, das bestehende Logdateien im proprietären Binärformat in Protobuf 3 oder Avro-Format überführen kann. (C++)
Vergleich des aktuellen Binärformats mit den neuen Formaten durch automatisierte Tests. Dies umfasste die Entwicklung und Implementierung des Test-Frameworks, einschließlich eines Test-Runners, der große Mengen vorhandener Logdateien in die neuen Formate konvertiert, die Inhalte validiert, Dateigrößen und Rekordgrößen vergleicht sowie Statistiken sammelt, auswertet und anzeigt. (Python)
Identifizierung von Optimierungsmöglichkeiten, um die Datenmenge bei spezifischen Datentypen zu reduzieren.
Dokumentation der Ergebnisse und Erstellung umfassender Berichte.
Automotive (Autonomes Fahren) / CARIAD / IVC (in-vehicle-client) Projekt
Embedded Entwickler / Maintainer
Embedded Entwickler / Maintainer
Konzeption und Erstellung einer Yocto (4.0/kirkstone) basierten Linux Distribution für das Raspberry Pi CM4 Board.
Betreuung und Konfiguration der Yocto Toolchain zur Erstellung der Distribution.
Board-Integration von Mender OTA (Mender Client, Remote Terminal, ...).
Entwicklung von Tools zur Erstellung und Deployment von Mender Updatepaketen (RESTful API, Python, Bash).
Konzeption und Implementierung eines over-the-air Updatemechanismus für die Aktualisierung verschiedener Systemkomponenten eines Racks (MRP/Multi Rack Platform) mithilfe von Mender.
Raspberry Pi CM4Embedded LinuxYocto/BitBakePythonBourne-again-shellAzure DevOpsMender 3.xGit
München / Remote
11 Monate
2022-11 - 2023-09
Medizintechnik / Carl Zeiss Meditec AG
Entwickler / Maintainer
Entwickler / Maintainer
Instandsetzung der Buildroot-Umgebung
Mitwirkung im Linux Yocto Team
Evaluierung kommerzieller Yocto Lieferungen: Integration, Test und Konfiguration
Entwurf und prototypische Implementierung einer SW-Komponente zur Verwaltung von TLS/SSL-Zertifikaten auf Embedded Devices
Automotive (Autonomes Fahren) / CARIAD / IVC (in-vehicle-client) Projekt
Embedded Entwickler / Maintainer
Embedded Entwickler / Maintainer
Konzeption und Erstellung einer Yocto (3.1/Dunfell) basierten
Linux Distribution für das Entwicklungs- und Produktionssystem (NVIDIA
Jetson AGX Xavier).
Betreuung und Konfiguration der Yocto Toolchain zur Erstellung der Distribution.
Setup der Development- und Production Workflows für das Linux System.
Board-Integration von Mender OTA (Mender Client, Remote Terminal, ...).
Entwicklung und Wartung der CI/CD-Pipelines (Azure DevOps, JFrog Artifactory, Conan, Mender OTA).
Entwicklung von Tools zur Erstellung und Deployment von Mender Updatepaketen (RESTful API, Python, Bash).
Entwicklung von Embedded Software zur Umweltwahrnehmung für autonomes Fahren (C++17, CUDA, CMake, Conan).
Implementierung und Absicherung von Linux User Space Applikationen.
Schreiben von Unit Tests und Berücksichtigung statischer Code Analyse-Tools zur Qualitätssicherung (GoogleTest, Clang-Tidy).
Entwurf und Implementierung eines verteilten virtualisierten Software-Update-Mechanismus, der ermöglicht, die Mender OTA Lösung unter dem Echtzeitbetriebssystem QNX 7.1 laufen zu lassen.
Arbeiten in einer agilen Umgebung und Unterstützung bei der Integration mit Lieferanten im internationalen Umfeld.
Medizintechnik (Operationsmikroskop) / Carl Zeiss Meditec AG / KINEVO Projekt
Entwickler / Testautomatisierer
Entwickler / Testautomatisierer
Anbindung und Evaluierung der HARMAN OTA (Over-the-Air) Update Solution auf einem ARM i.MX6 Board.
Implementierung eines Test-Frameworks in Python zur Evaluierung verschiedener ASR (Automatic-Speech-Recognition) Engines, wie z.B. Azure Cognitive Services (REST API) und vicCONTROL (MQTT, RCP).
Erstellung
und Konfiguriation von kundenspezifischen Debian Paketen für NVIDIA
Jetson TX2/Xavier Boards. Umstellung von NVIDIA L4T Ubuntu auf
Yocto/OpenEmbedded (Thud).
Implementierung einer RPC-basierten
Schnittstelle zur Anbindung von Zielsystemen (Linux x86_64/ARM) an einen
zentralen Test-Runner (Windows).
Implementierung und Integration einer WLAN-Konfigurationsschnittstelle für WPA2-Enterprise.
Applikationsentwicklung für Embedded MMI-Lösungen, Schwerpunkt auf Business Logik.
Middleware-Entwicklung: CAN-Bus Anbindung, CAN Protokollimplementierung, Software-Updater, Netzwerk-Manager, WiFi Integration.
Entwicklung automatisierter Tests.
Freescale i.MX6 (ARM Cortex-A9)embedded LinuxUbuntu Linux (Host)C/C++/Qt/QMLPythonBashQt CreatorBuildrootGNU ToolchainQMakeJenkinsGit
Gilching
4 Jahre 7 Monate
2012-04 - 2016-10
Maschinenbau (Großküchentechnik) / Rational AG / SelfCookingCenter Projekt
Embedded Entwickler
Embedded Entwickler
Optimierung des Hardware-Abstraction-Layers (HAL).
Implementierung neuer Netzwerkdienste (TCP/IP).
Performance-Analyse der neuen Middleware.
Board Support Package Anpassungen, Bugfixing (U-Boot, Linux-Kernel).
Automatisierung und Optimierung der Fertigungsabläufe mit Python- und Bash-Skripten.
Spezifikation und Implementierung neuer Testfälle mit Hilfe von Google Test.
Restrukturierung
und Überarbeitung der Qt-basierten MMI-Basisbibliothek,
Performance-Optimierung der grafischen Benutzerschnittstelle.
Entwurf und Implementierung eines Watchdog-Dienstes zur Überwachung der sicherheitskritischen Systemkomponenten.
Konzeption und Implementierung einer Toolchain zur automatischen Erstellung und Auswertung von Crash-Dumps.
Entwurf
und Implementierung einer automatisierten Buildumgebung für mehrere
Module, Aufsetzen eines Build-Servers (Jenkins) für Continuous
Integration.
Evaluierung von Protobuf 3 und Apache Avro als potenzielle Lösungen für die Serialisierung, Speicherung und Übertragung großer Mengen an Logdaten auf Embedded-Systemen.
Entwicklung und Implementierung eines Generators, der Datendefinitionen aus einer MySQL-Datenbank ausliest und in Protobuf 3 `.proto`-Files bzw. Avro-JSON-Files umwandelt. Zur Optimierung der Integration generiert der Generator auch die dazugehörigen C++-Adapterklassen für beide Formate. (Python)
Konzeption und Umsetzung eines Konverterprogramms, das bestehende Logdateien im proprietären Binärformat in Protobuf 3 oder Avro-Format überführen kann. (C++)
Vergleich des aktuellen Binärformats mit den neuen Formaten durch automatisierte Tests. Dies umfasste die Entwicklung und Implementierung des Test-Frameworks, einschließlich eines Test-Runners, der große Mengen vorhandener Logdateien in die neuen Formate konvertiert, die Inhalte validiert, Dateigrößen und Rekordgrößen vergleicht sowie Statistiken sammelt, auswertet und anzeigt. (Python)
Identifizierung von Optimierungsmöglichkeiten, um die Datenmenge bei spezifischen Datentypen zu reduzieren.
Dokumentation der Ergebnisse und Erstellung umfassender Berichte.
Automotive (Autonomes Fahren) / CARIAD / IVC (in-vehicle-client) Projekt
Embedded Entwickler / Maintainer
Embedded Entwickler / Maintainer
Konzeption und Erstellung einer Yocto (4.0/kirkstone) basierten Linux Distribution für das Raspberry Pi CM4 Board.
Betreuung und Konfiguration der Yocto Toolchain zur Erstellung der Distribution.
Board-Integration von Mender OTA (Mender Client, Remote Terminal, ...).
Entwicklung von Tools zur Erstellung und Deployment von Mender Updatepaketen (RESTful API, Python, Bash).
Konzeption und Implementierung eines over-the-air Updatemechanismus für die Aktualisierung verschiedener Systemkomponenten eines Racks (MRP/Multi Rack Platform) mithilfe von Mender.
Raspberry Pi CM4Embedded LinuxYocto/BitBakePythonBourne-again-shellAzure DevOpsMender 3.xGit
München / Remote
11 Monate
2022-11 - 2023-09
Medizintechnik / Carl Zeiss Meditec AG
Entwickler / Maintainer
Entwickler / Maintainer
Instandsetzung der Buildroot-Umgebung
Mitwirkung im Linux Yocto Team
Evaluierung kommerzieller Yocto Lieferungen: Integration, Test und Konfiguration
Entwurf und prototypische Implementierung einer SW-Komponente zur Verwaltung von TLS/SSL-Zertifikaten auf Embedded Devices
Automotive (Autonomes Fahren) / CARIAD / IVC (in-vehicle-client) Projekt
Embedded Entwickler / Maintainer
Embedded Entwickler / Maintainer
Konzeption und Erstellung einer Yocto (3.1/Dunfell) basierten
Linux Distribution für das Entwicklungs- und Produktionssystem (NVIDIA
Jetson AGX Xavier).
Betreuung und Konfiguration der Yocto Toolchain zur Erstellung der Distribution.
Setup der Development- und Production Workflows für das Linux System.
Board-Integration von Mender OTA (Mender Client, Remote Terminal, ...).
Entwicklung und Wartung der CI/CD-Pipelines (Azure DevOps, JFrog Artifactory, Conan, Mender OTA).
Entwicklung von Tools zur Erstellung und Deployment von Mender Updatepaketen (RESTful API, Python, Bash).
Entwicklung von Embedded Software zur Umweltwahrnehmung für autonomes Fahren (C++17, CUDA, CMake, Conan).
Implementierung und Absicherung von Linux User Space Applikationen.
Schreiben von Unit Tests und Berücksichtigung statischer Code Analyse-Tools zur Qualitätssicherung (GoogleTest, Clang-Tidy).
Entwurf und Implementierung eines verteilten virtualisierten Software-Update-Mechanismus, der ermöglicht, die Mender OTA Lösung unter dem Echtzeitbetriebssystem QNX 7.1 laufen zu lassen.
Arbeiten in einer agilen Umgebung und Unterstützung bei der Integration mit Lieferanten im internationalen Umfeld.
Medizintechnik (Operationsmikroskop) / Carl Zeiss Meditec AG / KINEVO Projekt
Entwickler / Testautomatisierer
Entwickler / Testautomatisierer
Anbindung und Evaluierung der HARMAN OTA (Over-the-Air) Update Solution auf einem ARM i.MX6 Board.
Implementierung eines Test-Frameworks in Python zur Evaluierung verschiedener ASR (Automatic-Speech-Recognition) Engines, wie z.B. Azure Cognitive Services (REST API) und vicCONTROL (MQTT, RCP).
Erstellung
und Konfiguriation von kundenspezifischen Debian Paketen für NVIDIA
Jetson TX2/Xavier Boards. Umstellung von NVIDIA L4T Ubuntu auf
Yocto/OpenEmbedded (Thud).
Implementierung einer RPC-basierten
Schnittstelle zur Anbindung von Zielsystemen (Linux x86_64/ARM) an einen
zentralen Test-Runner (Windows).
Implementierung und Integration einer WLAN-Konfigurationsschnittstelle für WPA2-Enterprise.
Applikationsentwicklung für Embedded MMI-Lösungen, Schwerpunkt auf Business Logik.
Middleware-Entwicklung: CAN-Bus Anbindung, CAN Protokollimplementierung, Software-Updater, Netzwerk-Manager, WiFi Integration.
Entwicklung automatisierter Tests.
Freescale i.MX6 (ARM Cortex-A9)embedded LinuxUbuntu Linux (Host)C/C++/Qt/QMLPythonBashQt CreatorBuildrootGNU ToolchainQMakeJenkinsGit
Gilching
4 Jahre 7 Monate
2012-04 - 2016-10
Maschinenbau (Großküchentechnik) / Rational AG / SelfCookingCenter Projekt
Embedded Entwickler
Embedded Entwickler
Optimierung des Hardware-Abstraction-Layers (HAL).
Implementierung neuer Netzwerkdienste (TCP/IP).
Performance-Analyse der neuen Middleware.
Board Support Package Anpassungen, Bugfixing (U-Boot, Linux-Kernel).
Automatisierung und Optimierung der Fertigungsabläufe mit Python- und Bash-Skripten.
Spezifikation und Implementierung neuer Testfälle mit Hilfe von Google Test.
Restrukturierung
und Überarbeitung der Qt-basierten MMI-Basisbibliothek,
Performance-Optimierung der grafischen Benutzerschnittstelle.
Entwurf und Implementierung eines Watchdog-Dienstes zur Überwachung der sicherheitskritischen Systemkomponenten.
Konzeption und Implementierung einer Toolchain zur automatischen Erstellung und Auswertung von Crash-Dumps.
Entwurf
und Implementierung einer automatisierten Buildumgebung für mehrere
Module, Aufsetzen eines Build-Servers (Jenkins) für Continuous
Integration.