FAQs
What is the main focus of the Firmware Developer position at Motorola Solutions Video Division?
The Firmware Developer position focuses on designing and implementing sophisticated, scalable multi-threaded Object Oriented Software in C++ for high-speed data processing and networking solutions within the surveillance industry, particularly involving advanced AI-based video analytics.
What are the primary responsibilities of a Firmware Developer in this role?
Primary responsibilities include designing software modules, developing Linux device drivers, optimizing low-level system performance, creating algorithms for image acquisition control, collaborating with hardware designers, maintaining the firmware build system, reviewing peer code, and collaborating with the QA team on testing.
What qualifications are required for this Firmware Developer position?
Candidates should have a degree in Computer or Electrical Engineering, Computer Science, or a related technical discipline, strong C and C++ programming skills for embedded applications, and a firm grasp of operating system concepts. Additionally, experience with scripting languages, build systems, and excellent communication skills are necessary.
Is experience with C++ required for this position?
Yes, candidates must have at least 6+ months of experience programming in C++, C, or Python, along with strong design and programming skills in C and C++ for embedded applications.
Where is this Firmware Developer position located?
This position is based in Vancouver, BC, and candidates must reside in the Greater Vancouver Area, as they will be required to go into the office on a hybrid work schedule.
What is the salary range for this Firmware Developer role?
The base salary range for this position in British Columbia is between 70,000 - 90,000 CAD, depending on experience.
What types of tools and systems should the candidate be familiar with?
Candidates should be familiar with C/C++ compilation and debugging tools, scripting languages, build systems, and version control systems.
Will the Firmware Developer be required to document their work?
Yes, the developer is expected to create design documents on software architecture and algorithms as part of their responsibilities.
How will the Firmware Developer collaborate with other teams?
The Firmware Developer will collaborate with Hardware designers on board bring-up and debugging, review Marketing and Product Requirements Documents, and work closely with the Quality Assurance team to identify test cases for new features.
Are there specific programming languages that are emphasized in this job description?
Yes, the role emphasizes strong programming skills in C and C++, along with some experience in Python for maintaining the firmware build system.