×
Register Here to Apply for Jobs or Post Jobs. X

C++ Software Engineer

Job in Ottawa, Ontario, Canada
Listing for: Actalent
Full Time position
Listed on 2026-07-27
Job specializations:
  • Software Development
    Unix/Linux, Embedded Systems/ Firmware/ IoT, Software Testing, Embedded Software Engineer
Salary/Wage Range or Industry Benchmark: 61992 - 92299 CAD Yearly CAD 61992.00 92299.00 YEAR
Job Description & How to Apply Below
  • Strong experience developing software on Linux operating systems.
Job Title:

C++ Software Engineer – Manufacturing & Embedded Systems

This role focuses on developing embedded C++ software that supports hardware testing in both factory production and lab environments. You will design and maintain software used to execute functional tests, validate hardware performance, and troubleshoot complex issues across hardware and software. The position offers the opportunity to work on cutting‑edge automotive technologies and chipsets, gain exposure to early‑stage platforms, and tackle new hardware and software integration challenges in a highly collaborative team.

Responsibilities
  • Design, develop, and maintain C++ software to run functional tests on hardware during manufacturing.
  • Support design verification and reliability testing in lab and bench environments by creating and enhancing test software.
  • Interface directly with hardware components such as GPIO, CAN, Bluetooth, Wi‑Fi, GPS, and USB to enable robust testing and validation.
  • Collaborate closely with cross-functional hardware, software, and manufacturing teams to define requirements and deliver effective test solutions.
  • Debug complex issues in test environments and perform root cause analysis to distinguish between hardware and software problems.
  • Analyze logs and test results to identify, troubleshoot, and resolve failures observed during test runs.
  • Implement bug fixes, configuration updates, and software enhancements to improve test coverage, stability, and performance.
  • Support factory builds by ensuring test software is correctly integrated, configured, and maintained for production use.
  • Contribute to continuous improvement of testing frameworks, tools, and processes with a strong focus on debugging, testing, and hardware interaction.
  • Participate in code reviews and follow best practices for developing reliable, time-critical embedded software.
Essential Skills
  • 2–8 years of C++ software development experience, with C++ as the primary programming language.
  • Strong experience developing software on Linux operating systems.
  • Hands‑on experience with multi‑threaded programming, including understanding race conditions and locking concepts.
  • Comfort interacting with hardware and working in environments that involve direct hardware interaction rather than purely software‑only development.
  • Demonstrated strength in debugging and troubleshooting complex software and hardware interaction issues.
  • Ability to analyze logs and test results to identify root causes of failures.
  • Clear understanding of writing time‑critical software and working with performance‑sensitive systems.
  • Strong analytical and problem‑solving skills with a structured approach to diagnosing issues.
  • Good verbal and written communication skills to collaborate effectively with cross‑functional teams.
  • Proven ability to thrive in a fast‑paced environment with time‑critical projects.
  • Motivation to work in a quality‑oriented, innovative environment focused on advanced automotive and embedded technologies.
Additional

Skills & Qualifications
  • Embedded development experience, particularly in environments such as QNX or Embedded Linux.
  • Willingness for strong C++ developers without prior embedded experience to learn and work in embedded contexts.
  • Ability to read and interpret hardware schematics.
  • Prior experience with hardware debugging and working alongside hardware engineering teams.
  • Experience developing software specifically in support of hardware testing in factory or lab environments.
  • Automotive software development experience, including CAN bus communications and frameworks such as AutoSAR/MCAL.
  • Experience debugging on multi‑processor hardware architectures.
  • Exposure to wireless technologies such as GSM, LTE, GPS, NFC, Bluetooth, and Wi‑Fi.
  • Development experience with C (approximately 10–15% of the work).
  • Development experience with scripting languages (approximately 10–15% of the work).
  • Experience with flashing, partitioning, and unit testing tools used in embedded and manufacturing test environments.
  • Exposure to additional programming languages used in the tech environment beyond C++.
  • Interest in working on cutting‑edge…
Note that applications are not being accepted from your jurisdiction for this job currently via this jobsite. Candidate preferences are the decision of the Employer or Recruiting Agent, and are controlled by them alone.
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search:
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary