Our client is an innovative Canadian technology manufacturer recognized for designing and delivering highly engineered products used in demanding, mission-critical environments worldwide. As the organization continues to expand its engineering capabilities, they are seeking an experienced Embedded Software Engineer to develop advanced firmware and signal-processing solutions for sophisticated sensor systems.
Reporting to the Manager of Embedded Software, the Embedded Software Engineer will develop embedded software, firmware, and signal-processing algorithms for products operating in demanding environments. Working closely with hardware, mechanical, software, and test engineers, this individual will design, implement, and optimize real-time embedded software, digital signal processing (DSP) algorithms, and system-level functionality from concept through production.
The ideal candidate is a technically rigorous and collaborative engineer who combines deep embedded software expertise with strong analytical skills and a passion for developing reliable, high-performance products.
What You’ll Be Doing
In this role, you will drive embedded software development while partnering with multidisciplinary engineering and manufacturing teams to bring advanced sensor-based products to life.
Key responsibilities include:
- Design, develop, and maintain embedded firmware for ARM-based microcontrollers and embedded systems.
- Develop real-time software for sensor acquisition, digital signal processing, communications, and system control.
- Design and optimize algorithms for signal processing, detection, classification, filtering, feature extraction, and spectral analysis.
- Optimize embedded software for performance, memory efficiency, reliability, and low-power operation.
- Integrate and support hardware interfaces, peripherals, and wireless communication technologies, including GNSS, satellite communications, Bluetooth, SPI, I²C, UART, USB, Ethernet, CAN, and ADC/DAC.
- Develop embedded data-logging, diagnostic, health-monitoring, and automated testing utilities.
- Collaborate with hardware engineers on board bring-up, hardware verification, and hardware-software integration.
- Support system verification, validation, production testing, and troubleshooting of complex technical issues.
- Participate in system architecture, design reviews, technical planning, and project risk management.
- Analyze field-performance data and implement software enhancements that improve product functionality and reliability.
- Contribute to the continuous improvement of software development practices, engineering standards, and product development processes.
What We Are Looking For
The ideal candidate is an experienced embedded software engineer with a strong foundation in firmware development, real-time systems, and digital signal processing. You thrive in a fast-paced, multidisciplinary environment and bring sound technical judgment, attention to detail, and the ability to develop embedded software from initial concept through production and field support.
Qualifications and experience include:
- Bachelor’s degree in Computer Engineering, Electrical Engineering, Software Engineering, Computer Science, or a related discipline.
- 5+ years of experience developing embedded firmware in C/C++.
- Experience working with ARM Cortex-M or similar embedded processors.
- Experience with RTOS-based software development.
- Experience developing digital signal processing algorithms.
- Strong understanding of embedded systems architecture.
- Knowledge of FFTs, digital filtering, spectral analysis, adaptive filtering, and time-frequency analysis.
- Familiarity with both floating-point and fixed-point DSP implementations.
- Experience implementing communication protocols and interfaces such as SPI, I²C, UART, USB, Ethernet, CAN, and BLE.
- Strong debugging skills using tools such as JTAG/SWD debuggers, oscilloscopes, and logic analyzers.
- Experience using version-control systems such as Git.
- Strong software design, analytical, debugging, and problem-solving skills.
- Excellent written and verbal communication skills, with the ability to collaborate effectively across technical disciplines.
The following are considered assets:
- Experience optimizing DSP algorithms for resource-constrained embedded processors.
- Experience with embedded Linux or higher-performance embedded processors.
- Experience processing acoustic, vibration, hydrophone, or other sensor data.
- Experience with underwater acoustics or oceanographic instrumentation.
- Experience working with GNSS, satellite communications, or other wireless technologies.
- Experience developing automated engineering and testing tools using Python or a similar scripting language.
The successful candidate will bring a collaborative mindset, strong technical capability, and the ability to contribute as both a senior technical resource and a future leader within the embedded software group.
We embrace a culture of belonging in the workplace. No matter who you are, where you’re from, how you think, what you believe in, or who you love, we welcome your application. We all come from different backgrounds and walks of life, bringing unique perspectives and experiences. We encourage applications from 2SLGBTQ+ individuals, Black, Indigenous, and People of Colour (BIPOC), women, newcomers to Canada, and people with disabilities.
To learn more about this opportunity, contact Vanessa Rodriguez-Garcia at vanessa@venor.ca or Craig Coady at craig@venor.ca.