Company Overview
At Motorola Solutions, we're guided by a shared purpose - helping people be their best in the moments that matter - and we live up to our purpose every day by solving for safer. Because people can only be their best when they not only feel safe, but are safe. We're solving for safer by building the best possible technologies across every part of our safety and security ecosystem. That's mission -critical communications devices and networks, AI-powered video security & access control and the ability to unite voice, video and data in a single command center view. We're solving for safer by connecting public safety agencies and enterprises, enabling the collaboration that's critical to connect those in need with those who can help. The work we do here matters.
Department Overview
The Video Embedded Software Engineering Team at Motorola Solutions (MSI) delivers firmware for embedded devices such as in-car video systems, fixed video and body worn cameras. Working in close collaboration with other departments, engineers in this team excel at developing applications and drivers under Linux, and have a variety of backgrounds and specializations. The team uses modern C++ to develop highly reusable code, and utilize state-of-the-art systems and tools throughout the development life cycle.
Job Description
- Design and implement sophisticated scalable multi-threaded Object Oriented Software in C++ for solving challenging problems involving high speed data processing and networking
- Design advanced software modules that follow modern C++ design patterns
- Apply C programming skills for Linux device driver development and debugging
- Apply problem solving skills and experience to identify and improve low-level system performance issues
- Apply engineering principles to design algorithms for controlling image acquisition parameters, as well as environmental conditions (Temperature, Power, Fog, Frost, etc.)
- Create design documents on software architecture and algorithms
- Collaborate with Hardware designers on board bring-up and debug
- Maintain and improve Firmware build system using Make and Python
- Review code of peers for adherence to coding standards and design guidelines
- Estimate and track time and effort necessary for completing implementation tasks
- Review Marketing and Product Requirements Document during feasibility and development
- Collaborate with Quality Assurance team on identifying test cases for new features and areas for regression tests
- Follow the established development process for all design and implementation tasks
- Provides mentorship and coaching to junior developers
Basic Requirements
- Bachelor / Master degree in Computer Engineering, Software Engineering and Electronics and Electrical
- 3+ years embedded development experience
- Strong C and C++ design and programming skills for embedded applications
- Firm grasp of operating system concepts including processes, threads, mutexes, interrupt handling, and exception handling
- Experience with C/C++ compilation and debugging tools
- Experience with scripting languages, build systems, and version control systems
- Excellent written and oral communication skills
- Experience with development in a Linux environment for ARM target processors
- Working knowledge in writing low level programming for HW peripherals and drivers.
- Understanding of embedded design considerations including C/C++ memory management, microprocessor architectures, instruction efficiency, and I/O timing
- Knowledge of digital imaging/photography and audio/video coding is a plus
Travel Requirements
None
Relocation Provided
None
Position Type
Experienced
Referral Payment Plan
Yes
EEO Statement
Motorola Solutions is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion or belief, sex, sexual orientation, gender identity, national origin, disability, veteran status or any other legally-protected characteristic.
We are proud of our people-first and community-focused culture, empowering every Motorolan to be their most authentic self and to do their best work to deliver on the promise of a safer world. If youd like to join our team but feel that you dont quite meet all of the preferred skills, wed still love to hear why you think youd be a great addition to our team.
Were committed to providing an inclusive and accessible recruiting experience for candidates with disabilities, or other physical or mental health conditions. To request an accommodation, please email [Confidential Information].