Apply now

Posted 19 days ago

Embedded Systems Engineer

@ Foreseeson Technology

Richmond, British Columbia

Contract3+ years experience
Apply now
SIGNALS

Overview

Foreseeson Technology is hiring a contract Embedded Systems Engineer in Richmond, BC to develop firmware for a modular high-voltage Energy Storage System. The role covers C/C++ firmware for battery and power-conversion controllers, device communications, and monitoring connectivity. The posting states an in-person arrangement, a one-year contract with possible extension or conversion, and a salary of CA$87,360 per year.

Responsibilities:

  • Develop and maintain embedded C/C++ firmware for ESS controllers
  • Implement CAN, RS-485, UART, I²C and SPI communication with battery devices
  • Support protection interlocks, fault handling and emergency-stop interfaces
  • Build embedded data interfaces for monitoring and cloud dashboards
  • Test firmware with hardware debuggers, oscilloscopes and HIL tools

Requirements summary:

  • Bachelor's degree in electrical, computer engineering or computer science
  • At least three years of embedded firmware experience
  • Strong embedded C/C++ and/or Python
  • Hands-on experience with STM32, TI, NXP or equivalent microcontrollers
  • Experience with CAN, RS-485, UART, I²C and SPI
  • Experience with Raspberry Pi, BeagleBone or equivalent single-board computers

Tools & skills

Source and dates

Source type not verified · apify-linkedin

Employer posting date
2026-10-25
First seen by our source
2026-11-14
Source record updated
2026-11-14

These dates describe the source record, not a live verification that the employer is still hiring. Check the original posting.

Job details

SeniorityMid level
DepartmentSoftware development
Experience3+ years
Travelair: none · ground: none
Work settingOffice, Laboratory
PositionMostly sitting
Physical demandsphysical low · computer high
LanguagesEnglish
EducationBachelor’s degree (required)
Fields of studyElectrical Engineering, Computer Engineering, Computer Science

Summary and details written by AI from the posting; the employer’s posting is the authority.

Foreseeson Technology

FieldValue
Open jobs on Jobsy2
Job description

About the Employer

Foreseeson Technology Inc. is a multifaceted, award-winning technology innovator providing electronic manufacturing, IT security distribution, electric vehicle charging equipment, and Intelligent software platforms for EV Charger and Energy Management System. Foreseeson has experienced over 25 years of continuous growth through innovation and we are also known for pioneering green technology to lower our carbon footprint through electric vehicle charging partnerships with municipalities and corporations.

About the Project

Foreseeson Technology Inc. is developing a modular Energy Storage System (ESS) using high-voltage battery packs. The system combines battery management, power conversion, embedded control, charging and discharging coordination, and local and cloud-connected monitoring.

The Embedded Systems Engineer will develop the firmware and embedded software that enables communication, control, monitoring, and coordination across the ESS. This role will work closely with electrical and power electronics engineers to integrate all system components.

Core accountabilities and Responsibilities

Embedded Firmware Development

  • Design, develop, test, and maintain embedded firmware using C and C++ for microcontroller-based ESS controllers and supporting hardware.
  • Implement reliable control and monitoring functions for battery packs, DC-DC converters, charging equipment, inverter interfaces, and system-level control devices.
  • Develop firmware for battery status acquisition, charge and discharge sequencing, contactor and pre-charge control interfaces, fault detection, and system-state management, subject to hardware and safety requirements.
  • Implement watchdogs, timeouts, fault-state handling, diagnostic reporting, and controlled recovery strategies.
  • Develop modular, maintainable firmware with appropriate code documentation, configuration management, and testing practices.

Device Communications

  • Implement and troubleshoot communication interfaces, including CAN/CAN FD where applicable, RS-485, UART, I²C, and SPI.
  • Integrate communication with existing battery controllers using verified protocol documentation and bench testing.
  • Develop and maintain communication drivers, message parsers, device status interfaces, and diagnostic functions.
  • Implement data acquisition for battery voltage, current, temperature, SOC, SOH, alarms, and fault codes where these parameters are available through supported interfaces.
  • Diagnose communication failures, timing issues, bus errors, signal-interface problems, and interoperability challenges across multiple battery packs and power electronics devices.

System Controller Integration

  • Support the implementation of protection interlocks, fault escalation, controlled shutdown, and emergency-stop interfaces in accordance with the system safety architecture.
  • Integrate system-level commands and status feedback for DC-DC converters, charging and power distribution modules, and inverter interfaces.
  • Support the implementation of control logic for battery utilization, energy-flow coordination, and operating modes.

System Monitoring and Connectivity

  • Develop embedded data interfaces for local monitoring, remote diagnostics, and the ESS dashboard and cloud platform.
  • Integrate embedded controllers and single-board computers such as Raspberry Pi, BeagleBone, or equivalent platforms where appropriate.
  • Support communication between embedded devices, the system controller, and supervisory monitoring software using suitable protocols or other defined interfaces.
  • Implement reliable telemetry, event logging, timestamping, device-health monitoring, and diagnostic data collection.
  • Support secure device communication, authentication mechanisms, access control interfaces, and firmware update procedures as required by the system architecture.

Firmware Testing and Validation

  • Develop unit tests, integration tests, hardware-in-the-loop tests, and test utilities as appropriate for the target platform.
  • Use hardware debuggers, oscilloscopes, logic analyzers, CAN analyzers, and other diagnostic equipment to identify and resolve firmware and interface issues.
  • Validate firmware behaviour under normal operation, communication loss, sensor faults, abnormal operating conditions, and system shutdown scenarios.
  • Work with the electrical and power electronics teams to troubleshoot hardware–firmware integration problems.
  • Maintain source control using Git or equivalent tools, and document firmware versions, changes, test results, and known limitations.
  • Participate in technical reviews, requirements definition, system integration, prototype testing, and preparation of engineering documentation.

Requirements and Qualifications

  • Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a closely related discipline.
  • At least three years of professional experience in embedded firmware development.
  • Strong proficiency in embedded C/C++, and/or python programming.
  • Hands-on experience with microcontroller platforms such as STM32, Texas Instruments, NXP, or equivalent.
  • Experience using firmware debugging tools, hardware debuggers, and embedded development environments.
  • Practical experience with CAN, RS-485, UART, I²C, and SPI communication protocols.
  • Experience programming or integrating single-board computers, such as Raspberry Pi, BeagleBone, or equivalent platforms.
  • Working knowledge of Linux-based systems and real-time operating systems (RTOS).
  • Ability to read electrical schematics and work closely with hardware and power electronics engineers.
  • Strong debugging, analytical, and problem-solving skills.
  • Ability to write clear technical documentation and work effectively in a multidisciplinary R&D team.

Preferred Qualifications

  • Experience developing firmware for battery management systems, energy storage, battery charging, power electronics, or industrial control systems.
  • Experience developing and testing software for safety-relevant or safety-critical applications.
  • Familiarity with functional safety principles, fault handling, watchdogs, and safe-state design in embedded systems.
  • Experience with bootloaders, firmware updates, over-the-air (OTA) update mechanisms, and firmware version management.
  • Familiarity with Git, automated testing, continuous integration, and software build systems such as Make or CMake.
  • Experience with Yocto or other embedded Linux build and deployment environments.
  • Experience with MQTT, cloud-connected IoT devices, telemetry, or remote diagnostic systems.
  • Familiarity with battery SOC/SOH monitoring data, battery communication, and multi-device control.

Equal Employment Opportunity

We are an equal opportunity employer committed to fostering an inclusive, diverse, and respectful workplace, and we welcome applications from all qualified individuals.

We are committed to providing reasonable accommodations throughout the recruitment, selection, and employment process. If you require accommodation at any stage of the hiring process, please contact [email protected] so that we can work with you to meet your needs.

Work Arrangement: In-person, Richmond, BC​

Employment Type: 1-year contract, with the potential for extension or conversion to a permanent, full-time position.

Expected Salary: CA$87,360 per year. The final salary will be determined based on the successful candidate’s qualifications, relevant experience, and overall fit for the role.

*We would like to thank all applicants in advance for your interest in this position. Only candidates selected for an interview will be contacted.

Similar jobs

  • Embedded Systems Engineer

    Brampton, ON
    Full Time

    Horstman Canada

    5+ YOECandidates need a bachelor's degree or higher in an engineering or computer discipline and 5+ years of embedded software experience. Strong C/C++ and experience with Matlab/Simulink, Git, and CAN/J1939 are required, and familiarity with ISO 26262 and lab test equipment is expected.

    Matlab, Simulink, Git, GitHub, GitLab, TTControl

  • Senior Embedded Systems Engineer

    Winnipeg, MB
    $100k–$150k/yrHybridFull Time

    Taiv

    5+ YOECandidates need 5+ years of embedded software experience, with real Android platform work (AOSP, framework, HAL). They also need Linux kernel skills, multimedia and HDMI knowledge, and strong C and C++.

    AOSP, adb, fastboot, git, serial console, logic analyzer

  • Embedded Systems Engineer - Capture Systems

    Toronto, ON
    $100k–$150k/yrOn-siteFull Time

    Peripheral

    3+ YOECandidates need a Bachelor's or Master's degree in a related field, 3+ years of embedded software experience, expert C++ and Python skills, Linux experience, and knowledge of PTP/NTP time synchronization. Custom PCB experience and legal right to work in Canada are also required.

    Linux, C++, Python

  • Senior Embedded Systems Engineer (Woodbridge, Ontario)

    Woodbridge, ON
    $90k–$115k/yrFull Time

    PerkinElmer Scientific Canada ULC

    5+ YOECandidates need an electrical engineering degree, at least 5 years of experience, and skills in C/C++, Rust, JavaScript, embedded Linux and FPGA development. Strong communication and teamwork are also required.

    Xilinx Vivado, Eclipse, Visual Studio Code, Linux, Rust, JavaScript

Locations & environments

Locations

All of CanadaRemote · Hybrid · On-site · Field

Pro tip: add remote jobs to widen your search.

Exclude locations

Workplace type

Company jobs in these results

These are this company’s jobs loaded in your current search. The company may have more openings.