Développeur Logiciel Senior – Systèmes Embarqués d’Imagerie et Pilotes de Caméra 

Nous recherchons un développeur senior en systèmes embarqués, hautement qualifié, ayant une solide expérience dans le développement de pilotes de caméra, les systèmes d’imagerie embarqués et l’intégration de SDK multiplateformes, pour rejoindre notre équipe en pleine croissance.


Le candidat idéal possèdera une expérience avérée dans le développement de logiciels bas niveau complexes sur plusieurs plateformes (Linux, Android, Windows), le travail avec des capteurs caméra/IMU, ainsi que la contribution à l’architecture système et aux chaînes de traitement d’images.

Ce rôle est central pour reprendre des travaux de développement avancés précédemment réalisés par un ingénieur senior. Vous serez amené à prendre en charge plusieurs modules de caméras et plateformes embarquées, notamment Qualcomm et NVIDIA, tout en contribuant aux liaisons logicielles, à l’optimisation IA, aux tests automatisés et à la transition vers des architectures cloud.

Notre entreprise propose des options contractuelles flexibles, y compris des postes à temps plein (40 h/semaine) avec possibilité de télétravail. Toutefois, une préférence sera accordée aux candidats basés à Montréal, Québec. D’autres localisations au Canada pourront être envisagées. 

 

Responsabilités:

  • Développer, porter et maintenir les pilotes de caméra (ex. : MIPI CSI-2, I2C, SPI, EEPROM, moteurs AF, flash LED).
  • Réaliser le bring-up matériel des caméras sur plateformes embarquées (Qualcomm, NVIDIA, Intel, …).
  • Créer et déboguer des bibliothèques partagées Windows/Linux, y compris les modules d’interface des pilotes.
  • Concevoir et maintenir des liaisons Python (via PyBind11, ctypes) pour les SDK C++.
  • Travailler sur des sujets avancés tels que l’intégration d’algorithmes de vision par ordinateur, l’intégration de modèles IA et le traitement vidéo en temps réel.
  • Assurer le développement multiplateforme (Linux, RTOS, Android, Windows).
  • Collaborer avec les équipes matériel, IA et logiciel pour aligner les conceptions techniques sur les besoins produits.
  • Suivre un processus de développement rigoureux utilisant GIT, pipelines CI, CMake et outils de gestion de projet. 

Qualifications:

  • Diplôme en informatique, génie électrique ou domaine connexe.
  • Minimum 3 ans d’expérience en systèmes embarqués, pilotes de caméra ou chaînes de traitement d’images.
  • Excellente maîtrise de C/C++ et Python pour systèmes embarqués.
  • Solide compréhension de l’architecture des systèmes de caméras et du C++ moderne (C++17/20), incluant RTTI, factory patterns et méta-programmation par templates.
  • Expérience pratique avec :
    Personnalisation DTSI sous Linux
    OpenCV, CUDA, TensorRT, GStreamer
    Shaders OpenGL, compression image/vidéo, réduction de bruit
    Pytorch, quantification de modèles IA, conversion ONNX
    Android Studio, adb, UVC, et SDK Qualcomm VRT
  • Expérience en développement de pilotes bas niveau caméra et IMU sur Linux, Android, Windows.
  • Connaissance de Git, scripts CMake, Buildroot.
  • Doit être éligible à l’obtention et au maintien d’une cote de fiabilité du gouvernement du Canada (« Reliability »). 

Expériences Préférentielles (atouts):

  • Expérience sur plateforme Qualcomm (Linux et Windows) : pilote caméra, HAL (CHI), CamX.
  • Développement et déploiement IA sur NVIDIA AGX Orin.
  • Migration et architecture SaaS, incluant Docker et conteneurs cloud.
  • Connaissance de la programmation asynchrone en Python.
  • Connaissance des systèmes de tests automatisés en Python, SikuliX et Google Test.
  • Familiarité avec Docker, GRPC et déploiement cloud.
  • Maîtrise de C# pour le développement d’interfaces ou d’outils auxiliaires. 

Si vous êtes un(e) passionné(e) de résolution de problèmes, capable d’évoluer à l’intersection du matériel, du firmware et des chaînes d’imagerie optimisées par IA, et prêt(e) à contribuer au développement de systèmes de vision de classe mondiale, nous vous encourageons à postuler. 









    *champs obligatoires