Job Title: C++ Software Developer
Job Description
We are seeking a skilled C++ Software Developer to join the Network Node team and contribute to the validation and testing of next-generation vehicle network technologies. This role involves hands-on, technical work focused on embedded C++ development, unit testing, and test support code, with a particular emphasis on cryptography-related features and embedded targets. The ideal candidate will work closely with functional testers and other developers to address testing gaps, develop test infrastructure, and contribute feature code where necessary. This position is ideal for someone who enjoys gaining a deep understanding of systems and can quickly adapt to complex embedded environments.
Responsibilities
- Develop and maintain embedded software primarily in C++ (≈80%), with some C (≈20%).
- Write and maintain unit test and test support code.
- Collaborate with functional test teams to define and document test steps.
- Contribute to feature development where required, including work related to security and cryptography requirements.
- Perform on-target debugging, log analysis, and defect investigation.
- Participate in an Agile/Scrum environment, including daily Scrum and Scrum Planning, weekly team sync meetings, and SAFe PI Planning every ~3 months.
- Utilize modern development tools, including AI-assisted tooling such as VS Code with Copilot.
Essential Skills
- Strong C++ experience at the embedded systems level, with knowledge of C++14 or newer.
- Solid understanding of STL / standard library and core C++ concepts such as overload vs. override, stack vs. heap, constructors, virtual vs. non-virtual methods, and object-oriented inheritance.
- Comfortable working in Linux/POSIX environments, with experience maintaining, extending, and testing existing codebases.
- Embedded / POSIX-based development experience and strong command-line skills.
- Familiarity with tools such as SSH, SFTP, and on-target debugging.
- Strong systems thinking, problem-solving, and communication skills.
- Comfortable adopting and using AI development tools and cryptography.
Additional Skills & Qualifications
- Experience with QNX, Wind River, or similar environments is an asset.
- Experience working with bench hardware and wiring.
- Exposure to cryptography concepts, including RSA, ECC, and AES keys, symmetric vs. asymmetric cryptography, hashing, digests, and key derivation.
- Automotive experience, particularly familiarity with CAN bus / UDS protocols.
- Experience in application-level automotive software.
Work Environment
This role requires working 5 days a week onsite in a state-of-the-art facility equipped with standing desks. The environment is collaborative and supportive, offering the opportunity to work on real embedded systems used in modern vehicles.
Job Type & LocationThis is a Contract position based out of Ottawa, ON.
Pay and BenefitsThe pay range for this position is $50.00 - $62.68/hr.
Workplace TypeThis is a fully onsite position in Ottawa,ON.
Diversity, Equity & Inclusion
At Actalent, diversity and inclusion are a bridge towards the equity and success of our people. DE&I is embedded into our culture through:
- Hiring diverse talent
- Maintaining an inclusive environment through persistent self-reflection
- Building a culture of care, engagement, and recognition with clear outcomes
- Ensuring growth opportunities for our people
Actalent is an equal opportunity employer.