softwareengineerjobszurich.ch
← Toutes les offres

Ingénieur Logiciel Embarqué - SoM

Harmattan AI

Type de contrat
Temps plein
Lieu
Zürich
Première publication
Postuler
À PROPOS DE NOUS Harmattan AI est un acteur de premier plan de la défense de nouvelle génération, développant des systèmes de défense autonomes et évolutifs. Suite à la clôture d'une série B de 200M $, valorisant l'entreprise à 1,4 milliard $, nous développons nos équipes et nos capacités pour fournir des systèmes critiques aux forces alliées. Notre travail est guidé par des valeurs claires : construire des technologies ayant un impact réel, rechercher l'excellence dans tout ce que nous faisons, fixer des objectifs ambitieux et relever les défis techniques les plus difficiles. Nous opérons dans un environnement exigeant où la rigueur, la responsabilité et l'exécution sont attendues. À PROPOS DU RÔLE En tant qu'Ingénieur Logiciel Embarqué chez Harmattan AI, vous rejoindrez l'équipe R&D pour prendre en charge la pile logicielle embarquée sur les modules de calcul utilisés sur nos plateformes. Vous prendrez un nouveau module de l'état de carte nue jusqu'à une plateforme Linux maintenue avec démarrage sécurisé, en couvrant la chaîne de démarrage, le noyau, les pilotes et la vérification associée. Il s'agit d'un rôle à fort impact qui combine un travail approfondi sur Linux et le noyau avec une mise en service (bring up) concrète sur du nouveau matériel, en accompagnant une carte depuis sa première mise sous tension jusqu'au vol. RESPONSABILITÉS - BSP et Images de Référence : Construire et maintenir la couche BSP, les device trees et les images de référence pour chaque carte, y compris les couches personnalisées et la génération de SDK, et assurer leur suivi lors des mises à jour du noyau et des révisions de silicium. - Chaîne de Démarrage et Secure Boot : Prendre en charge la chaîne de démarrage, y compris le portage du bootloader, le démarrage signé, le rootfs vérifié et la mise à jour du système A/B. - Pilotes et Interfaces de Bas Niveau : Développer et valider des pilotes de périphériques Linux via I2C, SPI, UART, GPIO, PCIe et MIPI, y compris les interfaces caméra et capteur. - Support de Carte sur Cibles MCU : Assurer le support du démarrage (startup), de l'horloge et des périphériques sur les microcontrôleurs des cartes conçues par l'équipe. - Mise en Service de Carte (Bring Up) et Validation Matérielle : Diriger la mise en service logicielle sur du nouveau matériel, participer aux revues de conception et déboguer les problèmes de niveau système à la frontière matériel/logiciel. - Vérification et Documentation : Définir les plans de tests de vérification et les critères d'acceptation, automatiser les tests de démarrage et de périphériques sur des cibles réelles, et documenter chaque étape. - Collaboration Transversale : Travailler avec l'équipe matérielle sur les nouvelles cartes, et avec les équipes Systems et Embedded Software Platform sur les interfaces et l'intégration. - Mentorat : Selon l'ancienneté, encadrer des ingénieurs embarqués juniors. EXIGENCES POUR LE CANDIDAT - Formation : MSc en ingénierie (électrique, informatique ou domaine connexe). Un PhD est un plus. Un historique concret de mise en service (bring up) importe plus que le diplôme spécifique. - Expérience : Minimum 5 ans en logiciel embarqué, avec la gestion de BSPs tout au long de leur cycle de vie et leur maintien reproductible à mesure que le matériel évolue. - Systèmes de Build : Maîtrise d'un système de build Linux embarqué tel que Yocto ou OpenEmbedded, via des couches ou paquets personnalisés, l'intégration BSP, la construction d'images et la génération de SDK. Une expérience avec des systèmes de build internes ou non standards est un avantage. - Expertise Technique : Développement de pilotes en espace noyau (kernel space) sur des cibles ARM, validés par rapport à de vrais périphériques via I2C, SPI, UART, GPIO, PCIe et MIPI. Travail sur device tree pour de nouvelles cartes et révisions matérielles. Mise en service de carte depuis la première mise sous tension jusqu'à une image Linux bootée. - Démarrage et Mise à Jour : Portage de bootloader, configuration du noyau, démarrage signé et mécanismes de mise à jour de firmware sur du matériel de production, avec des pratiques d'ingénierie soucieuses de la sécurité et déterministes tout au long du processus. - Programmation : Solides compétences en C et C++, incluant le codage en espace noyau, et fortes compétences en scripting Python, avec une pratique solide du contrôle de version (Git). - Expertise en Débogage : Capable d'isoler si une faille se situe dans le pilote, la configuration du noyau ou la carte, en utilisant GDB, JTAG, OpenOCD, le kernel tracing, ftrace et perf. - Attributs Professionnels : Rigoureux, structuré et systématique, capable de travailler de manière autonome, imperturbable face à une carte qui refuse de démarrer. Excellentes capacités de communication et de documentation, capable de présenter les résultats de plateforme et de tests aux ingénieurs et aux parties prenantes senior. - Compétences Additionnelles : Firmware bare metal ou RTOS sur cibles microcontrôleurs, expérience dans l'activation d'accélérateurs matériels sur des SoC embarqués incluant les pilotes et runtimes VPU et NPU, familiarité avec les charges de travail de perception ou de contrôle s'exécutant sur le module, et une expérience en UAS, drone ou défense sont de solides avantages. - Engagement : Dévouement à 100% à la mission, à la vision et aux plans de croissance ambitieux de Harmattan AI, prêt à faire les efforts nécessaires pour assurer l'excellence opérationnelle. Épanouit dans un environnement rapide où les priorités changent et où aucune tâche n'est trop petite. Nous avons hâte de découvrir comment vous pouvez aider à façonner l'avenir des systèmes de défense autonomes chez Harmattan AI.

Traduit automatiquement depuis l’original.

Publié il y a 3 jours

Lieu

Voir sur Google Maps