Senior Embedded Software Engineer

Pulsenics

$110K — $130K *
Consumer Technology
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • 7+ years of experience in developing embedded firmware for ARM microcontrollers (STM32 or similar).
  • Proven ability to design and support reliable firmware architectures for instrumentation and control systems.
  • Expertise in embedded C/C++ for both bare-metal and RTOS environments.
  • Hands-on experience with debugging tools like oscilloscopes and logic analyzers.
  • Strong fundamentals in electronics to address hardware-firmware interactions.
  • Advanced skills in reading schematics and understanding component datasheets.
  • Familiarity with wired communication protocols such as SPI, I²C, and UART.

Responsibilities

  • Lead the architecture for embedded firmware across devices, focusing on control and measurement systems.
  • Define and evolve firmware interfaces and APIs for scalability and maintainability.
  • Design and implement time-critical embedded firmware in C/C++ for ARM Cortex microcontrollers.
  • Establish firmware testing strategies, including unit and system-level validation.
  • Produce thorough technical documentation of architecture and implementation processes.

Benefits

  • Opportunities for professional development and continued learning.
  • Collaborative work environment with cross-functional teams.
  • Hands-on role impacting real-world electrochemical device performance.
  • Flexible work arrangements in a dynamic technology sector.
Full Job Description
Position Overview

Pulsenics is seeking a Senior Embedded Software Engineer with 7+ years of experience to lead and evolve the embedded firmware architecture that underpins our hardware and software solutions used to test, characterize, and validate electrochemical devices (batteries, electrolyzers, fuel cells). This role is responsible for defining, implementing, and maintaining the firmware systems that govern measurement accuracy, real-time control, safety, and long-term reliability across Pulsenics' devices.

You will operate across bare-metal, RTOS, and embedded Linux environments, working closely with hardware, instrumentation, and systems engineers. This is a hands-on, judgment-heavy role for an engineer who has shipped, supported, and debugged complex embedded systems in real-world conditions and is comfortable making architectural decisions under real constraints.

This is not a feature-delivery role. It is a system-ownership role where correctness, timing, and robustness are critical.

Key Responsibilities
  • Lead the embedded firmware architecture across Pulsenics' devices, including control, monitoring, safety, and measurement subsystems.
  • Define and evolve firmware abstractions, interfaces, and APIs to support scalability, testability, and long-term maintainability.
  • Design and implement embedded firmware in C/C++ for ARM Cortex-based microcontrollers (e.g., STM32) in time-critical environments.
  • Define and enforce firmware testing strategies, including unit, integration, hardware-in-the-loop, and system-level validation.
  • Produce clear and durable technical documentation covering architecture, design decisions, and implementation details.


Qualifications
  • 7+ years of professional experience developing embedded firmware for ARM-based microcontrollers (STM32 or similar).
  • Proven track record designing, shipping, and supporting time-critical, reliable firmware architectures for instrumentation, control systems, or power electronics.
  • Expert-level proficiency in embedded C/C++ in bare-metal and RTOS-based systems.
  • Extensive hands-on experience debugging firmware on real hardware using oscilloscopes, logic analyzers, and related lab instrumentation.
  • Strong understanding of electronics fundamentals sufficient to independently diagnose hardware-firmware interaction issues.
  • Advanced ability to read schematics and interpret component, MCU, and peripheral datasheets.
  • Deep familiarity with wired communication protocols such as SPI, I²C, UART, and similar interfaces.
  • Experience working in embedded Linux environments and developing low-level drivers or system interfaces.
  • Strong software engineering practices, including version control (Git), code reviews, and disciplined development workflows.
  • Demonstrated ability to make sound trade-offs and drive decisions forward.
  • Clear and effective communication skills across technical and non-technical audiences.
  • Bachelor's, Master's, or PhD in Computer Science, Engineering, or a related technical field.


Interested in Applying?

Department Engineering Locations Toronto Employment type Full-time

Similar Jobs

More Jobs at Pulsenics

More Consumer Technology Jobs

Find similar Senior Embedded Software Engineer jobs: