Vision & Perception Engineer - Humanoid (Mensch)
Role details
Job location
Tech stack
Job description
Zürich ab sofort Deine Mission & Herausforderungen
Als Robotics Software Engineer (Vision & Perception) bist du der Architekt der "Augen" unseres humanoiden Roboters - und seiner Fähigkeit, die Welt zu verstehen. Du entwickelst den gesamten Perception-Stack, der unseren Robotern ermöglicht, komplexe, dynamische Umgebungen wahrzunehmen, zu interpretieren und mit Menschen sicher zu interagieren.
Deine Arbeit verwandelt rohe Sensordaten von Kameras, LiDAR, IMUs, Kraft-/Drehmomentsensoren und Gelenksensoren in ein hochstufiges, handlungsrelevantes Verständnis für Navigation, Manipulation und Interaktion. Dabei arbeitest du intensiv mit 3D-Computer Vision, Deep Learning, Sensorfusion und High-Performance-C++, um ein robustes und zuverlässiges Wahrnehmungssystem aufzubauen.
- Entwerfe und implementiere die komplette Perception-Softwarearchitektur - von Low-Level-Sensortreibern bis hin zu High-Level-Szenenverständnis - mit Fokus auf Echtzeit-Performance und Robustheit.
- Entwickle und optimiere modernste Algorithmen für SLAM, Objekterkennung & -verfolgung, semantische Segmentierung und 3D-Rekonstruktion.
- Schreibe sauberen, effizienten und wartbaren Code in modernem C++ (C++17/20) für zentrale Perception- und Sensorfusion-Bibliotheken.
- Architekturiere und steuere den hochdurchsatzfähigen Datenfluss der Sensorsysteme mithilfe von ROS2 und dem zugrunde liegenden DDS-Framework.
- Integriere und kalibriere verschiedene Perception-Sensoren - Stereo-/Tiefenkameras, LiDARs, IMUs - zu einem einheitlichen Weltmodell.
- Arbeite eng mit Teams aus Control, Manipulation und Planning zusammen, um Perception-Anforderungen zu definieren und die benötigten Daten für nachgelagerte Aufgaben bereitzustellen.
- Entwickle Tools zur Datenvisualisierung, Systemdiagnose und Performanceanalyse.
- Erstelle und pflege umfassende technische Dokumentationen zu Sensor-Schnittstellen, Datenformaten und Systemarchitekturen.
- Validiere Perception-Module sowohl in Simulation als auch auf realen humanoiden Plattformen - und schließe so die Lücke zwischen Simulation und Realität.
- Stelle sicher, dass alle Perception-Komponenten Echtzeit- und Safety-Anforderungen für Mensch-Roboter-Kollaboration erfüllen.
- Etabliere und fördere Best Practices in der Softwareentwicklung - inkl. Git-Versionierung, CI/CD-Pipelines und datengetriebenem automatisierten Testing.
Requirements
- Ausbildung: Bachelor oder Master in Informatik, Software Engineering, Robotik oder einem verwandten technischen Fachgebiet.
- Erfahrung: Mindestens 3 Jahre Berufserfahrung in der Softwareentwicklung mit Fokus auf Computer Vision oder Perception für Robotiksysteme.
- C++-Kompetenz: Sicherer Umgang mit modernem C++ (C++11 oder neuer) - insbesondere Objektorientierung, Multithreading und Performance-Optimierung auf ressourcenbegrenzten Systemen.
- Computer Vision Grundlagen: Solides theoretisches und praktisches Verständnis von 3D-Geometrie, Kameramodellen, Multi-View-Geometrie, Filtern (z. B. Kalman) und Sensorfusion.
- 3D-Vision-Erfahrung: Nachweisliche praktische Erfahrung mit 3D-Daten und Punktwolken, sicherer Umgang mit PCL (Point Cloud Library).
- Deep-Learning-Erfahrung: Erfahrung mit Deep-Learning-Modellen für Perception-Aufgaben (z. B. Objekterkennung, Segmentierung) - inkl. PyTorch oder TensorFlow sowie Deployment auf Robotik-Hardware.
- Erfahrung mit GPU-Programmierung zur Beschleunigung von Perception-Algorithmen (z. B. CUDA, OpenCL).
- Kenntnisse in Performance-Optimierung für Echtzeitanwendungen auf Embedded-Systemen (z. B. NVIDIA Jetson).
- Vertraut mit Simulationsumgebungen wie Gazebo oder NVIDIA Isaac Sim für Perception-Entwicklung und -Testing.
- Gute Python-Kenntnisse für schnelles Prototyping, Datenanalyse und Machine-Learning-Training.
- Erfahrung mit MLOps-Infrastrukturen für große Sensordatensätze und Trainingspipelines. Kenntnisse klassischer Computer-Vision-Bibliotheken wie OpenCV.