En tant que Développeur(euse) senior en micrologiciel chez Vention...
Tu seras responsable du développement de micrologiciels et de logiciels pour l’écosystème MachineMotion. Le ou la Développeur(euse) senior en micrologiciel intervient à différentes phases des projets, allant de la R-D initiale de nouveaux produits jusqu’au soutien des outils et API existants.
Ce rôle est idéal pour une personne qui aime avoir une forte appropriation technique — de l’interfaçage matériel à une architecture logicielle propre — et qui peut travailler de façon autonome tout en mentorant d’autres membres de l’équipe.
Ce que vous ferez :
- Architecturer et implémenter des composants de mouvement et de communication en temps réel en C++ moderne, avec un fort accent sur le déterminisme, la latence et la sécurité
- Développer et maintenir des microservices en Python (FastAPI, MQTT, services d’orchestration) fonctionnant sur des systèmes Linux embarqués
- Concevoir et maintenir des API gRPC et des contrats de services Protobuf afin d’assurer des communications robustes et versionnées entre les composants temps réel, les services système et les clients externes
- Définir et faire respecter des limites architecturales claires entre les charges de travail C++ temps réel et les services Python/Linux de plus haut niveau
- Concevoir et maintenir des SDK (C++ et Python) permettant aux clients et partenaires de développer des applications sur la plateforme MachineMotion
- Être responsable de l’architecture des services Linux (systemd, réseautique, permissions, accès aux périphériques, observabilité, journalisation, stratégies de watchdog)
- Diriger les stratégies de packaging Debian et de mises à jour OTA (over-the-air), incluant la gestion des dépendances, le verrouillage des versions, les garanties de compatibilité et la sécurité des retours arrière
- Améliorer la robustesse du système par l’analyse des modes de défaillance, la journalisation structurée, la surveillance de l’état des services et l’isolation des processus
- Déboguer des problématiques complexes à l’aide de journaux, captures de paquets, instrumentation matérielle (oscilloscope, analyseur logique) et diagnostics au niveau système
- Contribuer aux pipelines CI/CD, aux tests de régression automatisés et à la maintenabilité à long terme
- Mentorer les ingénieur(e)s par le biais de revues de code, de discussions architecturales et de l’application des meilleures pratiques