Senior Embedded Software Engineer - Automotive (C++/Linux)
On behalf of our Automotive client, Procom is searching for a Senior Embedded Software Engineer - Automotive (C++/Linux) for a 12 month contract role. This position is a hybrid position with 4 days onsite at our client’s Ottawa office.
Senior Embedded Software Engineer - Automotive (C++/Linux) - Job Description:
Our client is seeking a Senior Embedded Software Engineer to take full stack ownership of a Vehicle Information Manager (VIM), a critical real-time CAN data broker at the heart of a Linux-based vehicle platform. This role involves deep technical ownership and team leadership, focusing on the entire lifecycle of vehicle data from configuration to processing live traffic.
Senior Embedded Software Engineer - Automotive (C++/Linux) - Responsibilities:
- Own the end-to-end architecture of the Vehicle Information Manager, including the core daemon, client libraries, and configuration toolchains
- Lead development of the core daemon, focusing on high performance CAN PDU processing, signal transmission, and SOA services
- Develop and maintain public-facing client libraries used across the platform’s applications
- Maintain and evolve a Python-based configuration pipeline for optimized runtime configurations
- Design and maintain multi-threaded real-time unit test suites using Google Test/GMock
- Lead and mentor a small team of 2-4 developers through code reviews and architectural guidance
- Act as primary point of contact for application teams, ensuring seamless integration
Senior Embedded Software Engineer - Automotive (C++/Linux) - Mandatory Skills:
- 8+ years of professional experience in embedded Linux development using modern C++
- Proven expertise in real-time, multi-threaded systems with critical performance and latency
- Deep understanding of SOA, IPC middleware, and asynchronous RPC patterns
- Expert level knowledge of CAN bus protocols, including PDU encoding/decoding
- Advanced proficiency with Google Test and GMock
- Strong Python scripting skills for data-heavy configuration pipelines
- Experience leading or mentoring a small team in an agile setting
Senior Embedded Software Engineer - Automotive (C++/Linux) – Nice-to-Have Skills:
- Experience with accessible design practices
- Strong teamwork and collaboration skills
- Excellent problem-solving abilities
- Effective communication skills
- Familiarity with agile methodologies
Senior Embedded Software Engineer - Automotive (C++/Linux) – Assignment Length:
This is a 12 month contract position with potential for extension.
Senior Embedded Software Engineer - Automotive (C++/Linux) - Start Date:
ASAP
Senior Embedded Software Engineer - Automotive (C++/Linux) - Assignment Location:
Ottawa, Oakville or Waterloo Ontario, Canada. This is a hybrid position requiring 4 days in the office.
This posting is for an existing vacancy.
This employer uses both human and technology-assisted tools to support candidate screening and assessment. Final hiring decisions are made by people.
📌 Senior Embedded Software Engineer - Automotive (C++/Linux) (Ottawa)
🏢 Procom
📍 Ottawa