Intermediate Embedded Firmware Developers (C++) to support ongoing internal projects in electrical, thermal and sensing solutions
S.i. Systems
Edmonton, AB-
Number of positions available : 1
- Salary To be discussed
-
Permanent job
- Published on July 8th, 2025
-
Starting date : 1 position to fill as soon as possible
Description
Our client is looking for 2 Intermediate Embedded Firmware Developers (C++) to support ongoing internal projects in electrical, thermal and sensing solutions.
Overview:
A new approach to embedded firmware development, building on your C/C++ experience, to create secure firmware for industrial heating control and leak detection products.
Must Have's:
- 3+ years experience C++ programming
- Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, Electronics, or equivalent experience
- Experience in developing and debugging embedded systems
- 2+ years of coding experience in C/C++, ideally for embedded devices
- Ability to read and understand data sheets and review electronic schematics
- Electronic troubleshooting and embedded debugging experience (experience with tools such as JTAG debuggers, logic analyzers, oscilloscopes, signal generators, digital multi-meters)
- Experienced with multi-threaded/multi-tasking programming
- Knowledge of Git or similar version control
- Knowledge of Real Time Operating Systems (RTOS), FreeRTOS, ARM, ESP32
Nice to Have's:
- Knowledge of Rust
- Knowledge of Object Orientated programming, software architecture, and design patterns
- Knowledge of common scripting languages (Python, Powershell)
- Knowledge of Linux development, kernel development, U-boot, Snaps, or SnapCraft
- Experience with communication protocols such as RS-232, RS-485, IP, Modbus, or CAN bus is an asset
- Knowledge of bare metal and board bring up an asset
WHAT YOU WILL EXPERIENCE IN THIS POSITION:
- Research and Development: Create new products for global markets and refresh existing products
- Agile Development: Join a Collaborative Agile Team to deliver cutting-edge digital solutions
- Full Life Cycle Firmware Development: Under the guidance of senior embedded firmware developers, engage in embedded firmware & software development in an agile environment, including:
- Refine software and testing requirements with Product Management
- Implement requirements and tests in embedded firmware by programming in C++ or Rust
- Debug firmware and hardware interactions with IDE’s, GDB, JTAG, scopes, and logic analyzers
- Participate in design and code reviews
- Test Development: Draft test plans. Program unit tests, integration tests, and hardware in the loop tests
- Documentation: Creating technical documentation for internal and external use
- Collaboration: Work together with a fast paced technical team of friendly talented professionals using Jira, Microsoft Teams, GitLab, and in person meetings to communicate ideas with team members
Requirements
undetermined
undetermined
undetermined
undetermined
Other S.i. Systems's offers that may interest you