Spezialist für Automatisierung, Robotik und Automotive Software. Mit fundierter Expertise in C++, ROS 2 und NVIDIA- Technologien stehe ich seit 2018 für ganzheitliches IT-Consulting, das dort ansetzt, wo Standardlösungen aufhören
Ich verantwortete das Hardware- und Software-Bring-up der NVIDIA Drive-Plattformen (Orin/Thor) sowie die Entwicklung einer C++ basierten Video-Streaming-Pipeline mittels DriveWorks SDK. Die Anwendung umfasst den Empfang der GMSL2-Kameradaten, die Enkodierung sowie die Datenübertragung via RTP oder lokales Recording. Das Setup erfolgte in einer Docker-Umgebung (Devcontainers/Cursor) inklusive Cross-Compilation für DriveOS (Ubuntu basiert). Das Projektmanagement erfolgte über Jira und die Versionskontrolle mit git bzw. Bitbucket.
Softwareentwicklung ROS-Treiber in C++ und Python für Echtzeit Demonstration
SONY
Sonstiges
>10.000 Mitarbeiter
In diesem Projekt habe ich einen Bildverarbeitungs-Algorithmus echtzeitfähig gemacht und via ROS 2 in ein verteiltes Kamera- und CAN-Bus-System integriert. Ich entwickelte modulare Pakete in C++ und Python, implementierte eine Gazebo-Simulation und setzte eine Docker compose-basierte Entwicklungs- und Laufzeitumgebung auf. Die Umsetzung erfolgte remote via SSH und VNC auf Ubuntu mit git zu Versionskontrolle in einem internationalen Team (Englisch/Deutsch).
Softwareentwicklung ROS-Treiber in C++ und Python
SONY
Sonstiges
>10.000 Mitarbeiter
In diesem Projekt habe ich ROS-Treiber in C++ und Python entwickelt. Die Treiber dienen als Middleware zum Anbinden von Sensoren, um deren Daten zuverlässig und in möglichst hoher Bandbreite abzuspeichern. Die Sensoren umfassen Kameras, Radare, LiDARe, IMUs und CAN-Bus Messwertgeber. Hervorzuheben ist die Implementierung eines GMSL Kamera Treibers für die NVIDIA DRIVE AGX Xavier mit dem NVIDIA DriveWorks SDK. Für die Versionsverwaltung nutzte ich Git.
Softwareentwickler im Bereich Automatisierung und Maschinenbau
Mühlbauer Group
Industrie und Maschinenbau
1000-5000 Mitarbeiter
In diesem Projekt habe ich mehrere neue automatische Tool-Wechsler für eine Die-Sorter Maschine konzeptioniert, entworfen und implementiert. Zusätzlich entwickelte ich die Software für einen Die-Flipper. Die Entwicklung basierte auf zur Verfügung gestellter CAD-Modelle und Anforderungen mit Aktivitätsdiagrammen. Für den Entwurf der Softwarearchitektur nutzte ich Enterprise Architect um diverse detaillierte Klassen-, Aktivitäts- und Sequenzdiagramme zu entwerfen. Implementiert habe ich die Software in C++ und Visual Studio. Die Versionskontrolle im Team wurde mit TFS und Visual Studio durchgeführt. Das Projekt wurde in Redmine organisiert. Die Projektsprache war primär Englisch in Wort und Schrift.
GUI Entwicklung in C++ und Qt
Anonym
50-250 Mitarbeiter
In diesem Projekt habe ich die Oberflächen für eine moderne Variante einer nostalgischen App in C++ und Qt implementiert. Der Fokus lag hier besonders auf der Skalierbarkeit und Konfigurierbarkeit des Spiels.
Refactoring einer C++ Architektur mit ROS Anbindung
Robert Bosch GmbH
Automobil und Fahrzeugbau
>10.000 Mitarbeiter
Während dieses Projekts modifizierte ich ein umfangreiches in C++ geschriebenes Framework, um dieses zu flexibilisieren und die Auswertung von mehr als einer Spezifikationssprache zu ermöglichen. Das Framework war mit der ROS-Middleware an echte Sensordaten angebunden. Für die Modifikation habe ich die Softwarearchitektur genauestens studiert und mit UML und Enterprise Architect visualisiert. Die Modifikationen konzeptionierte ich in UML und setzte diese anschließend erfolgreich in C++ um. Das Resultat war ein Framework, das flexiblen Input einer Spezifikationssprache ermöglichte und das Hinzufügen der Auswertung neuer Sprachen stark vereinfachte. Die Versionskontrolle erfolgte über Git und die Projektsprache war Englisch in Schrift und Deutsch für verbale Kommunikation.
Softwareentwicklung Sensordatenfusion LiDAR und Kamera
ISSE
Sonstiges
10-50 Mitarbeiter
Bei diesem Projekt durfte ich die Sensordaten Fusion von einer 3D Punktwolke von Lidar-Daten und 2D Kamera Bilddaten konzeptionieren und in C++ und Python implementieren. Für die Datenanbindung, Pipeline und Visualisierung verwendete ich ROS und C++. Für die Kamera Kalibrierung verwendete ich Python und OpenCV. Die Lidar Daten waren in pcap Format gegeben. Zur Verarbeitung der Daten wählte ich das ROS Velodyne Paket und passte es den Anforderungen an. Nach der Verarbeitung der Lidar-Daten und der Entzerrung der Bilder, habe ich die Datenströme zeitlich synchronisiert und die Punktwolke auf die Kamera Bilder projiziert.
In diesem großen Teamprojekt war ich für die Erstellung eines Querschnittslastenhefts für die Anforderungen in der Echtzeitüberwachung von verteilten Funktionen auf eingebetteten Systemen zu verfassen. Neben der Sammlung der Anforderungen war ich dafür zuständig diese hinsichtlich ihrer Granularität, Testbarkeit, Messbarkeit und Konsistenz zu prüfen und gegebenenfalls dementsprechend anzupassen. Weiterhin habe ich Anleitungen zur Umsetzung der Anforderungen im Tool PREEvision hinzugefügt. Das Projekt befasste sich hauptsächlich mit den auftretenden Herausforderungen, sobald Funktionen über mehrere Geräte verteilt werden. Diese Herausforderungen betreffen vor allem die Anforderungen und die Messbarkeit von Funktionen auf zeitlicher Ebene.
Recherche und Analyse von Optimierungsalgorithmen
ISSE
Sonstiges
10-50 Mitarbeiter
Um verschiedene Optimierungsmethoden und deren Vor- und Nachteile im Vergleich ging es in diesem Projekt. Ich habe diese insbesondere im Hinblick auf ihren Einsatz für Kontrollsysteme vergleichen. Anhand einer Vielzahl objektiver Kriterien habe ich unter anderem die folgenden Algorithmen verglichen:
Simulated annealing
Ameisenalgorithmus
Partikelschwarmoptimierung
Neuronale Netze
Modulentwicklung entlang des V-Modells für den Automotive Bereich
ISSE
Sonstiges
10-50 Mitarbeiter
In diesem Projekt war ich für alle Schritte auf der Ebene der Software-Modulentwicklung des Volkswagen V-Modells zuständig. Hierzu zählt zunächst die Überprüfung des Ascet Modells anhand spezifizierter Standards. Anschließend habe ich entweder die C Code Generierung durchgeführt und hierfür geeignete Quantisierungen ausgewählt, oder ich habe Software-Tests für generierten Code anderer Team Mitglieder durchgeführt. Diese Software-Tests beinhalteten statische Code Analyse mit dSpace und das Testen der gewählten Quantisierungen mit TurboProp. Zuletzt habe ich einen MiL – SiL Vergleich ausgeführt, um die Auswirkungen der gewählten Quantisierungen abschließend zu prüfen. Die Teamarbeit wurde mit einem Kanban Board organisiert. Die Versionierung der Modelle und des Codes habe ich mit MKS Integrity durchgeführt und die Parameter wurden in ADD verwaltet.
Bewertungen
"Soenke Vajen lieferte hier hervorragende Arbeiten ab. Seine Kenntnisse in der Implementierung von C/C++ und Python sind exzellent. Darüber hinaus besitzt er die Gabe sind schnell und gründlich in neue Themen einzuarbeiten. Er ist immer flexibel, kreativ und gerne bereit auf Wunsch auch eine Extratätigkeit aufzunehmen. Auch bei schwierigen Konstellationen fanden wir immer konstruktive Lösungen."
Sony Europe Limited
Principal Engineer (Dr. Andreas Schwager)
Kontaktanfrage
Einloggen & anfragen.
Das Kontaktformular ist nur für eingeloggte Nutzer verfügbar.