Firmware Development Engineer

VIAVI Solutions

Ottawa

On-site

CAD 88,000 - 163,000

Full time

30 hours ago
Be an early applicant

Get a reply from this employer

Your resume and cover letter, tailored to exactly what they’re hiring for.

Get past ATS filters

Benefits offered by this job

Health insurance
401(k) plan
Bonus program

Job summary

VIAVI Solutions is seeking a Senior Firmware Developer to join the Fiber Optic Production Lab Test (FOPLT) engineering team in Ottawa. You will design, develop, debug, and maintain embedded firmware for the MAP modular optical test platform and its cassette ecosystem, spanning ARM/Linux to FPGA interfaces.

The role requires 7+ years of embedded firmware experience, strong C/C++, ARM/DSP expertise, and FPGA interfacing.

Qualifications

  • BS or MS in Electrical Engineering, Computer Engineering, or related field.
  • 7+ years of embedded firmware development experience.
  • Strong proficiency in C and C++ for embedded systems (bare‑metal and Linux).
  • Hands‑on experience with ARM and/or DSP processor architectures.
  • Experience with FPGA interfacing (register‑level, SPI/I2C/memory‑mapped I/O); HDL (Verilog or VHDL) reading ability preferred.
  • Solid understanding of serial communication protocols: I2C, SPI, UART, USB.
  • Experience with embedded Linux (kernel configuration, device trees, cross‑compilation, driver development).
  • Proficiency with debugging tools: JTAG, oscilloscopes, logic analyzers, serial consoles.
  • Familiarity with version control (Git) and CI/CD build systems.

Responsibilities

  • Cassette Firmware Development: Develop and maintain firmware for ARM‑based cassettes (embedded Linux, C/C++) and DSP‑based cassettes (uClinux, C/C++).
  • Implement SCPI command protocol handlers for instrument control and measurement data acquisition.
  • Develop multi‑threaded real‑time signal processing pipelines using FFT, DSP, and SIMD optimizations.
  • Interface with optical hardware components via I2C, SPI, UART, and USB.
  • FPGA Interfacing & Development: Interface cassette firmware with FPGA co‑processors for signal processing, optical triggering, and hardware acceleration via memory‑mapped registers.
  • Maintain and enhance the MAP platform PCIe bridge FPGA (Verilog) which provides bus translation between the host processor and cassette backplane.
  • Debug FPGA register‑level interactions and timing issues across SPI and PCIe domains.
  • Microcontroller Firmware: Develop firmware for bridge board microcontrollers (C) that manage FPGA programming, card‑present detection, I2C register interfaces, and chassis power sequencing.
  • Maintain power management microcontroller firmware controlling chassis power rails, standby/power‑cycle sequencing, and watchdog functionality.
  • Kernel & System‑Level Work: Contribute to Linux kernel and device tree customization on the chassis controller.
  • Debug and resolve hardware‑software integration issues including I2C bus contention, display pipeline conflicts, IRQ handling, and power management.
  • Develop and maintain system services, udev rules, and shell scripts for chassis lifecycle management (boot, hot‑plug, reboot, shutdown).
  • Cross‑Functional Collaboration: Work closely with hardware engineers on board bring‑up, schematic review, and signal integrity debugging.
  • Collaborate with the software team on communication between cassette firmware and the web GUI / front panel applications.
  • Support manufacturing with calibration firmware, production test scripts, and factory provisioning tools.
  • Leverage AI‑augmented development workflows (e.g., AI coding assistants) to accelerate firmware development, debugging, analysis and unit‑testing.

Skills

Embedded firmware
C/C++
ARM/DSP
FPGA interfacing
Linux kernel
Serial protocols

Education

BS or MS in Electrical/Computer Engineering

Tools

Verilog/VHDL
Git/CI/CD
JTAG
Docker/Buildroot/Yocto

Job description

Summary: VIAVI (NASDAQ: VIAV) is a global provider of network test, monitoring and assurance solutions for telecommunications, cloud, enterprises, first responders, military, aerospace, and railway. VIAVI is also a leader in light management technologies for 3D sensing, anti-counterfeiting, consumer electronics, industrial, automotive, government and aerospace applications.

VIAVI (NASDAQ: VIAV) is a global provider of network test, monitoring and assurance solutions for telecommunications, cloud, enterprises, first responders, military, aerospace, and railway. VIAVI is also a leader in light management technologies for 3D sensing, anti-counterfeiting, consumer electronics, industrial, automotive, government and aerospace applications. We are the people behind the products that help keep the world connected at home, school, work, at play, and everywhere in between. VIAVI employees are passionate about supporting customer success and we welcome people who bring their best every day to the company – to question, to collaborate and to push for solutions that will delight our customers. VIAVI Solutions is seeking a Senior Firmware Developer to join the Fiber Optic Production Lab Test (FOPLT) engineering team. This role focuses on embedded firmware development for modular optical test and measurement cassettes used in the MAP platform. The ideal candidate has hands‑on experience with ARM and DSP embedded systems, FPGA interfacing, microcontroller programming, and Linux kernel‑level development. You will work across the full hardware‑software stack — from microcontroller and DSP firmware to ARM Linux applications, FPGA register interfaces, and PCIe bridge logic — delivering production‑quality firmware for instruments used by telecom operators worldwide.

About the Role

As a Senior Firmware Developer at VIAVI Solutions, you will design, develop, debug, and maintain embedded firmware for the MAP modular optical test platform and its cassette ecosystem. The MAP platform is a rack‑mounted chassis hosting hot‑swappable optical test modules (cassettes) covering a broad range of fiber optic test and measurement applications. You will work across multiple cassette architectures as well as chassis‑level infrastructure including FPGA bridges, microcontrollers, and Linux kernel/driver integration.

Duties & Responsibilities
  • Cassette Firmware Development
    • Develop and maintain firmware for ARM‑based cassettes (embedded Linux, C/C++) and DSP‑based cassettes (uClinux, C/C++)
    • Implement SCPI command protocol handlers for instrument control and measurement data acquisition
    • Develop multi‑threaded real‑time signal processing pipelines using FFT, DSP, and SIMD optimizations
    • Interface with optical hardware components via I2C, SPI, UART, and USB
  • FPGA Interfacing & Development
    • Interface cassette firmware with FPGA co‑processors for signal processing, optical triggering, and hardware acceleration via memory‑mapped registers
    • Maintain and enhance the MAP platform PCIe bridge FPGA (Verilog) which provides bus translation between the host processor and cassette backplane
    • Debug FPGA register‑level interactions and timing issues across SPI and PCIe domains
  • Microcontroller Firmware
    • Develop firmware for bridge board microcontrollers (C) that manage FPGA programming, card‑present detection, I2C register interfaces, and chassis power sequencing
    • Maintain power management microcontroller firmware controlling chassis power rails, standby/power‑cycle sequencing, and watchdog functionality
  • Kernel & System‑Level Work
    • Contribute to Linux kernel and device tree customization on the chassis controller
    • Debug and resolve hardware‑software integration issues including I2C bus contention, display pipeline conflicts, IRQ handling, and power management
    • Develop and maintain system services, udev rules, and shell scripts for chassis lifecycle management (boot, hot‑plug, reboot, shutdown)
  • Cross‑Functional Collaboration
    • Work closely with hardware engineers on board bring‑up, schematic review, and signal integrity debugging
    • Collaborate with the software team on communication between cassette firmware and the web GUI / front panel applications
    • Support manufacturing with calibration firmware, production test scripts, and factory provisioning tools
    • Leverage AI‑augmented development workflows (e.g., AI coding assistants) to accelerate firmware development, debugging, analysis and unit‑testing
Pre‑Requisites / Skills / Experience Requirements
Required Qualifications
  • BS or MS in Electrical Engineering, Computer Engineering, or related field
  • 7+ years of embedded firmware development experience
  • Strong proficiency in C and C++ for embedded systems (bare‑metal and Linux)
  • Hands‑on experience with ARM and/or DSP processor architectures
  • Experience with FPGA interfacing (register‑level, SPI/I2C/memory‑mapped I/O); HDL (Verilog or VHDL) reading ability preferred
  • Solid understanding of serial communication protocols: I2C, SPI, UART, USB
  • Experience with embedded Linux (kernel configuration, device trees, cross‑compilation, driver development)
  • Proficiency with debugging tools: JTAG, oscilloscopes, logic analyzers, serial consoles
  • Familiarity with version control (Git) and CI/CD build systems
Preferred Qualifications
  • Experience with DSP platforms and real‑time signal processing (FFT, filtering, spectral analysis)
  • Experience with Xilinx Zynq or similar ARM+FPGA SoC development
  • Experience with AVR or similar 8‑bit microcontrollers
  • Knowledge of SCPI protocol and test & measurement instrument firmware
  • Experience with fiber optic components and optical test instrumentation
  • Experience with PCIe protocol and bridge design
  • Knowledge of RTOS concepts (FreeRTOS, uClinux, or similar)
  • Experience with Docker‑based embedded build environments and Buildroot/Yocto
  • Familiarity with Debian packaging and systemd service architecture
  • Experience with AI‑augmented development tools and workflows

VIAVI Solutions is an equal opportunity and affirmative action employer – minorities/females/veterans/persons with disabilities.

Job Posting Pay Range

87,500 to 162,500

Exceptional qualifications, experience and location may impact salary. VIAVI offers a competitive benefits package that includes paid time off, health, life and disability insurance, 401(k), and a bonus program.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior Reliability/Test Engineer
Senior Reliability/Test Engineer

VIAVI Solutions • Ottawa

On-site
CAD 86,000 - 159,000
Paid time off
Health insurance
Life and disability insurance
+1
Senior Reliability/Test Engineer
Senior Reliability/Test Engineer

Viavi Solutions Canada ULC • Ottawa

On-site
CAD 86,000 - 159,000
Paid time off
Health insurance
Life and disability insurance
+2
Senior Test Engineer
Senior Test Engineer

VIAVI Solutions • Ottawa

On-site
CAD 6,800 - 159,000
Senior Embedded Firmware Engineer – ARM/FPGA & Real-Time
Senior Embedded Firmware Engineer – ARM/FPGA & Real-Time

VIAVI Solutions • Ottawa

On-site
CAD 88,000 - 163,000
Health insurance
401(k) plan
Bonus program
Senior Test Engineer
Senior Test Engineer

Viavi Solutions Canada ULC • Ottawa

On-site
CAD 86,000 - 159,000
R&D Test Manager (Software - Validation & Verification)
R&D Test Manager (Software - Validation & Verification)

VIAVI Solutions • Ottawa

On-site
CAD 105,000 - 195,000
Benefits package
Health benefits
Bonus program
Optical Testing Engineer
Optical Testing Engineer

VIAVI Solutions • Ottawa

On-site
CAD 81,000 - 150,000
Paid time off
Health insurance
Life insurance
+3
Optical Testing Engineer
Optical Testing Engineer

Viavi Solutions Canada ULC • Ottawa

On-site
CAD 81,000 - 150,000
Paid time off
Health insurance
Life and disability insurance
+2
R&D Test Manager (Software - Validation & Verification)
R&D Test Manager (Software - Validation & Verification)

Viavi Solutions Canada ULC • Ottawa

On-site
CAD 105,000 - 195,000
Paid time off
Health insurance
Life insurance
+3
Product Verification and Validation Engineer
Product Verification and Validation Engineer

VIAVI Solutions • Ottawa

On-site
CAD 81,000 - 150,000
Paid time off
Health insurance
Life insurance
+3