Design, develop, and optimize C++ code for camera systems, implementing AI models and optimizing algorithms for embedded systems while collaborating with AI engineers.
As a Senior Software Engineer in our camera systems group, you will play a crucial role in designing, developing, and optimizing C++ code for embedded systems. You will work on implementing and deploying AI models and sophisticated algorithms directly on our camera hardware, enabling real-time analysis of video feeds for critical safety and security applications. This position requires a deep understanding of modern C++, strong software engineering principles, and experience with camera technologies.
Responsibilities:
- Design, develop, and test high-performance modern C++ code for implementing AI models and computer vision algorithms on embedded camera platforms.
- Optimize code for performance and resource constraints on embedded systems.
- Integrate and deploy AI models onto camera hardware.
- Collaborate with AI/ML engineers to translate models into efficient C++ implementations.
- Work with camera SDKs and APIs to access and process video streams.
- Develop and maintain unit and integration tests.
- Participate in code reviews and contribute to best practices and documentation
- Troubleshoot and debug software issues on embedded systems.
- Contribute to the development of new features and enhancements for our camera systems.
- Stay up-to-date with the latest advancements in AI, computer vision, and embedded systems.
Qualifications:
- Bachelor's degree in Computer Science, Software Engineering, or a related field. Masters or Ph.D. is a plus.
- 4+ years of experience in C++ software development, with a strong emphasis on performance optimization.
- Significant experience working with camera systems, including image processing, video encoding/decoding, and camera SDKs/APIs.
- Experience implementing and deploying AI models on embedded platforms is highly desired.
- Proficiency in Python for scripting and tooling is a plus.
- Strong understanding of software engineering principles, including design patterns, testing methodologies, and version control (e.g., Git).
- Experience with Linux/embedded Linux development environments.
- Excellent problem-solving and debugging skills.
- Ability to work independently and as part of a team.
- Strong communication and collaboration skills.
- Experience with computer vision libraries (e.g., OpenCV) is a plus.
- Experience with deep learning frameworks (e.g., TensorFlow, PyTorch, ONNX Runtime) is a plus.
- Experience with CI/CD systems like GitHub Actions or Azure DevOps is also a plus.
Note: Candidate must live in the Greater Vancouver Area or the Greater Toronto Area.
Basic Requirements
- Bachelors degree with 4+ years of Software Engineering experience
- AND 3+ years of C++ software development experience
Top Skills
Ai Models
APIs
Azure Devops
C++
Camera Sdks
Computer Vision
Embedded Systems
Git
Github Actions
Linux
Onnx Runtime
Opencv
Python
PyTorch
TensorFlow
Similar Jobs at Motorola Solutions
Artificial Intelligence • Hardware • Information Technology • Security • Software • Cybersecurity • Big Data Analytics
As a Senior HR Specialist, you will oversee HR compliance, develop bilingual policies, conduct investigations, and manage employee relations while providing strategic HR support to management.
Top Skills:
Bilingual DocumentationCompliance ReportingHr PoliciesLabor Laws
What you need to know about the Vancouver Tech Scene
Raincouver, Vancity, The Big Smoke — Vancouver is known by many names, and in recent years, it has gained a reputation as a growing hub for both tech and sustainability. Renowned for its natural beauty, the city has become a magnet for professionals eager to create environmental solutions, and with an emphasis on clean technology, renewable energy and environmental innovation, it's attracted companies across various industries, all working toward a shared goal: advancing clean technology.

