This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
We’re adding an Intermediate Embedded Firmware Engineer to support our power-electronics team. You’ll write and maintain C firmware for bare-metal ARM Cortex-M microcontrollers (primarily the STM32 family) that runs inside our UPS and FMPS products — PWM generation, ADC pipelines, current and voltage control loops, power-up and fault-state sequencing, and communication with the rest of the system over SPI, I²C, CAN and RS-485. You’ll provide the firmware that our power-electronics engineers need during hardware bring-up and debug, and you’ll test your code in an Agile team environment. You’ll work next to the hardware on the bench, with scopes, electronic loads and JTAG/SWD debuggers, and you’ll help with UL / CSA / NEBS / FCC / CE certification testing where firmware behaviour is part of the compliance picture. This is a great opportunity for someone to work in a small early-stage company where you will have the chance to contribute to innovative projects and learn and grow with other like-minded experienced engineers.
Job Responsibility:
Write, document and maintain C firmware libraries for our digitally-controlled AC-DC, DC-DC, DC-AC and AC-AC converters in the 1 kW–30 kW range
Implement real-time control code: current and voltage loops, PWM generation, ADC sampling and scaling, state sequencing for soft-start, steady-state operation and fault handling
Provide firmware and debugging support during new-board bring-up: power-on, peripheral validation, safe first-switching, closed-loop commissioning, and debug of switching-related anomalies
Work with our power-electronics engineers on signal conditioning, sensing, gate drive and protection so the firmware behaves correctly across line, load, temperature and fault corners
Implement and integrate SPI, I²C, CAN, RS-485 and similar interfaces to other boards and host controllers
Write and run firmware tests (unit, integration and on-target) as part of an Agile development process
help keep the team’s build and CI flow healthy
Support prototype validation and certification testing (UL, CSA, NEBS, FCC, CE) where firmware behaviour is part of the compliance argument
Use PSIM / PLECS / LTSpice / MATLAB / Simulink models from the analog team to validate control behaviour against the real hardware
Keep the firmware maintainable: version-controlled (Git), reviewed, documented and usable by the rest of the team
Requirements:
Bachelor’s degree in Electrical or Computer Engineering, or equivalent practical experience
2–4 years of bare-metal firmware development in C on ARM Cortex-M microcontrollers, preferably STM32
Able to read a schematic and reason about amplifiers, filters, analog front-ends, switching and linear regulators, level-shifters and simple power stages
Hands-on lab comfort with oscilloscopes, logic analyzers, electronic loads and JTAG/SWD debuggers
Working knowledge of at least one of SPI, I²C, CAN or RS-485 at the register-and-frame level
Solid debugging habits: reproduce, isolate, hypothesize, measure, fix, write it down
Comfortable working in Git and in an Agile / code-review environment
Legally authorized to work in Canada and able to work on-site (or predominantly on-site) at our Burnaby, BC office
Nice to have:
Firmware experience on AC-DC / DC-DC / DC-AC converters, or on other switching-power products
Exposure to control theory (PI/PID tuning, basic Bode/stability analysis)
DSP fundamentals: digital filtering, fixed-point arithmetic, precision issues
ISR design, priority handling, resource locking and other concurrent-programming basics
Familiarity with EMC-driven firmware constraints (FCC / CE)
STM32CubeIDE and / or Visual Studio Code as a day-to-day C environment
Familiarity with STM32MP1 / STM32MP2 (the Cortex-A side we run Linux on), or with historical TI processor families (C2000, Sitara, MSP)
Experience with firmware testing frameworks, unit-test harnesses or hardware-in-the-loop test benches
Any exposure to UL, CSA, NEBS, FCC or CE certification testing
Fluency with modern AI developer tools — for example code assistants (Copilot / Cursor), chat-based design exploration, and automated test / spec generators — and a clear view on where they actually help on embedded firmware work
What we offer:
Competitive compensation and benefits
Reporting directly to the CIO in a small-team engineering environment fostering collaboration
Accelerated professional growth and development through working on leading-edge products that will ship at scale into telecom, cable-broadband, data-centre and critical-infrastructure applications