Firmware Engineer (Embedded Systems)
Mississauga, ON (Onsite)
Industry: Industrial Manufacturing / Industrial IoT
Compensation: $100,000–$120,000 plus RRSP matching, comprehensive benefits, and a collaborative team environment.
About The Opportunity
Our client is seeking a Firmware Engineer (Embedded Systems) to design, develop, and support embedded software for industrial IoT products deployed in remote, mission-critical environments. This role will work closely with hardware, software, cloud, QA, and product teams to deliver reliable, high-performance solutions that power connected industrial systems.
Key Responsibilities
Embedded Firmware Development
- Design, develop, test, and maintain embedded firmware for industrial IoT devices.
- Enhance and adapt existing firmware to support new hardware platforms and product enhancements.
- Optimize system performance, reliability, and power consumption.
- Design and implement communication protocols between embedded systems and connected devices.
Troubleshooting & System Analysis
- Investigate and resolve complex firmware, hardware, and system-level issues.
- Perform root cause analysis across devices, communication networks, and backend systems.
- Analyze logs, data flows, and system behaviour to identify and resolve technical challenges.
- Take ownership of product quality from issue identification through validation and resolution.
Testing & Validation
- Develop and execute validation plans, test cases, and feasibility studies.
- Validate performance under real-world operating conditions and edge-case scenarios.
- Support automated testing initiatives through firmware tools, scripts, and applications.
Collaboration & Product Development
- Partner with hardware, software, cloud, QA, and product management teams throughout the product lifecycle.
- Support system integration, design verification, and end-to-end product functionality.
- Contribute to product requirements, technical documentation, and customer-driven enhancements.
- Participate in customer and field support activities as required.
Qualifications
- Degree in Computer Engineering, Electrical Engineering, Computer Science, or a related discipline.
- 5+ years of embedded software development experience.
- Strong programming skills in C/C++; experience with Java and Python is preferred.
- Experience developing both bare-metal and RTOS-based systems (FreeRTOS is an asset).
- Strong understanding of embedded system architecture and hardware/software integration.
- Experience with communication protocols including UART, SPI, I2C, RS232, RS485, USB, Ethernet, and TCP/IP.
- Proficiency with debugging and test equipment such as oscilloscopes, logic analyzers, JTAG debuggers, and multimeters.
- Experience with embedded devices operating in 24/7 industrial environments.
- Experience designing low-power, battery-operated systems is highly desirable.
- Exposure to LTE, BLE, RF technologies, and Industrial IoT products is considered an asset.
- Experience within the natural gas, energy, or industrial automation sectors is advantageous.