Posted in

Senior Software Engineer – AI/Computer Vision – Camera Systems

Senior Software Engineer – AI/Computer Vision – Camera Systems

CompanyMotorola
LocationToronto, ON, Canada, Vancouver, BC, Canada
Salary$75700 – $155200
TypeFull-Time
DegreesBachelor’s
Experience LevelSenior

Requirements

  • Bachelor’s degree in Computer Science, Software Engineering, or a related field. Masters or Ph.D. is a plus.
  • 2+ years of experience technically leading teams
  • 5+ 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 and Go for scripting and tooling are pluses
  • Strong understanding of software engineering principles, including design patterns, testing methodologies, version control, and task/bug tracking (e.g., Git, Jira).
  • 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 DevOps, architecting and developing cloud applications, and/or creating CI/CD systems are also all pluses.

Responsibilities

  • Technically lead projects and individually contribute
  • 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.

Preferred Qualifications

  • Experience implementing and deploying AI models on embedded platforms is highly desired.
  • Proficiency in Python and Go for scripting and tooling are pluses
  • 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 DevOps, architecting and developing cloud applications, and/or creating CI/CD systems are also all pluses.