Développeur logiciel embarqué (contrôle optique) – poste basé à Ottawa / Embedded Software Developer (Optical Control) (Ottawa based role)
Syntronic View all jobs
- Montreal, QC
- $120,000-145,000 per year
- Permanent
- Full-time
- Concevoir et développer des logiciels embarqués pour des systèmes de contrôle optique de couche 0
- Développer et optimiser des boucles de contrôle pour la puissance optique, la stabilisation des longueurs d'onde et la qualité du signal
- Interagir directement avec des composants matériels tels que les lasers, VOAs (atténuateurs optiques variables), amplificateurs et capteurs
- Mettre en œuvre des systèmes de rétroaction en temps réel ou quasi temps réel pour la calibration et le contrôle optique
- Développer des pilotes bas niveau et des couches d'abstraction matérielle (I2C, SPI, etc.)
- Collaborer avec les architectes systèmes afin de traduire le comportement optique en fonctionnalités logicielles
- Contribuer aux mécanismes de détection de pannes, de protection et de restauration dans les réseaux optiques
- Exposer les fonctionnalités du système via des interfaces de gestion (ex. : API REST, télémétrie)
- Déboguer des problèmes complexes couvrant le matériel, le firmware et le logiciel
- Participer à l'intégration, à la mise en service et à l'optimisation des performances des systèmes
- Optimiser les logiciels pour la performance, la fiabilité et l'évolutivité dans des environnements de qualité opérateur (carrier-grade)
- Rédiger du code propre, maintenable et bien documenté
- Design and implement embedded software for Layer 0 optical control systems
- Develop and optimize control loops for optical power, wavelength stabilization, and signal quality
- Interface directly with hardware components such as lasers, VOAs, amplifiers, and sensors
- Implement real-time or near-real-time feedback systems for optical calibration and control
- Develop low-level drivers and hardware abstraction layers (I2C, SPI, etc.)
- Collaborate with system architects to translate optical behavior into software functionality
- Contribute to fault detection, protection, and restoration mechanisms in optical networks
- Expose system functionality via management interfaces (e.g., REST APIs, telemetry systems)
- Debug complex issues across hardware, firmware, and software layers
- Participate in system bring-up, integration, and performance tuning
- Optimize software for performance, reliability, and scalability in carrier-grade environments
- Write clean, maintainable, and well-documented code
- Solide expérience en programmation en C/C++ et/ou Rust
- Expérience avec Linux embarqué ou le développement bas niveau
- Expérience pratique avec l'interfaçage matériel et le développement de pilotes
- Bonne compréhension des systèmes de contrôle ou des boucles de rétroaction
- Expérience avec les systèmes temps réel ou multithread
- Expérience en débogage à l'interface logiciel/matériel
- Connaissance des systèmes télécom ou réseaux (l'expérience en optique est un atout important)
- Expérience avec les systèmes de gestion de versions (Git) et les pratiques modernes de développement
- Excellentes aptitudes en résolution de problèmes et capacité à travailler en équipe multidisciplinaire
- Strong programming experience in C/C++ and/or Rust
- Experience with embedded Linux or low-level systems programming
- Hands-on experience interfacing with hardware and developing drivers
- Understanding of control systems or feedback loop implementation
- Experience with multi-threaded or real-time software systems
- Familiarity with debugging across software and hardware boundaries
- Exposure to telecom or networking systems (optical experience is a strong plus)
- Experience with version control (Git) and modern development workflows
- Strong problem-solving skills and ability to work in cross-functional teams
- Expérience avec des systèmes DWDM, ROADM ou de transport optique
- Connaissances en théorie du contrôle, traitement du signal ou systèmes physiques
- Expérience dans la mise en œuvre de mécanismes de protection et de restauration en couche 0
- Familiarité avec les modèles de gestion réseau (YANG, OpenConfig, NETCONF)
- Experience working on DWDM, ROADM, or optical transport systems
- Background in control theory, signal processing, or physics-based systems
- Experience implementing Layer 0 protection and restoration mechanisms
- Familiarity with network management models (YANG, OpenConfig, NETCONF)