Embedded Software Developer (Optical Control) (Ottawa based role)
Syntronic View all jobs
- Markham, ON
- $120,000-145,000 per year
- Permanent
- Full-time
- 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
- 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
- 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)