Company Overview
At Motorola Solutions, we believe that everything starts with our people. We’re a global close-knit community, united by the relentless pursuit to help keep people safer everywhere. Our critical communications, video security and command center technologies support public safety agencies and enterprises alike, enabling the coordination that’s critical for safer communities, safer schools, safer hospitals and safer businesses. Connect with a career that matters, and help us build a safer future.
Department Overview
The Specialty Camera Engineering team based in Ware, UK is responsible for developing cameras for long range surveillance applications, such as border or coastal security. The products are aimed at public and commercial safety. The team is responsible for the development of the complete products, including hardware, firmware and mechanics and takes care of the whole development life-cycle that includes development, testing and maintenance of the systems we build.
Job Description
Ability to work in a hybrid arrangement (office located in Ware).
Ability to work in a dynamic team and fast-paced environment and contribute across the entire software development lifecycle, from initial concept generation to final design and implementation.
Core Technical Proficiencies:
- Programming Languages: C/C++
- Operating Systems: Practical experience with Linux environments.
- Concurrency: Understanding of multithreaded programming concepts and implementations.
- Networking: Knowledge of TCP and UDP networking protocols.
- Robotics Control: Experience or strong interest in robotic control programming is a significant plus.
- DevOps & CI/CD: Familiarity with automated testing, continuous integration, and deployment pipelines.
- Version Control: Proficiency with Git and collaborative development workflows.
Responsibilities:
- Design and implement robust, scalable, and multi-threaded object-oriented software in C++ to address complex challenges in high-speed data processing and networking.
- Architect and develop advanced software modules utilizing modern C++ design patterns and best practices.
- Analyze, identify, and optimize low-level system performance issues, applying strong problem-solving skills and engineering expertise.
- Develop innovative algorithms for controlling image acquisition parameters and managing environmental conditions.
- Produce comprehensive design documentation detailing software architecture, algorithms, and implementation strategies.
- Collaborate closely with hardware engineers during board bring-up, system integration, and debugging activities.
- Conduct thorough peer code reviews to ensure adherence to coding standards, design guidelines, and maintainability.
- Work closely with Quality Assurance teams to define test cases for new features, identify areas for regression testing, and ensure high product quality.
- Adhere to and continuously improve established development processes throughout all phases of design and implementation.
- Contribute to a collaborative development environment by leveraging version control (Git) and participating in code reviews and workflow discussions.
Basic Requirements
- Bachelor’s or Master’s degree in Computer Engineering, Software Engineering, Electronics, or Electrical Engineering.
- At least 3 years of hands-on experience in embedded systems development.
- Advanced proficiency in C and C++ design and programming for embedded applications.
- Solid understanding of operating system concepts, including processes, threads, mutexes, and exception handling.
- Proficient in using C/C++ compilation and debugging tools.
- Extensive experience with build systems, especially CMake, and with compilers and related toolchains.
- Experience with scripting languages, build systems, and version control systems (e.g., Git).
- Proven experience developing in a Linux environment for ARM target processors.
- In-depth understanding of embedded design principles, including C/C++ memory management, microprocessor architectures, instruction efficiency, and I/O timing.
- Fluent in English, both spoken and written.
Advantageous Skills and Knowledge:
- Candidates possessing the following skills will be highly regarded:
- Programming Languages: C++17, proficiency with Python and/or C#.
- Image Processing: Familiarity with image processing techniques, libraries, or frameworks.
- Camera Systems: Experience working with camera hardware and software interfaces.
- Containerization: Experience with Docker and containerization for software deployment and development.
- DevOps & CI/CD: Familiarity with GitLab, GitLab CI/CD, or similar platforms for continuous integration and deployment.
- Version Control: Experience collaborating within distributed teams using Git and GitLab.
Personal Attributes:
- Problem-Solving: Demonstrated ability to tackle complex technical challenges.
- Collaboration: Effective team player comfortable with cross-functional collaboration.
- Adaptability: Readiness to learn new technologies and adapt to evolving project requirements.
- Initiative: Proactive approach to identifying and resolving issues.
In return for your expertise, we’ll support you in this new challenge with coaching & development every step of the way. Also, to reward your hard work you’ll get:
- Competitive salary and bonus schemes.
- Two weeks additional pay per year (holiday bonus).
- 25 days holiday entitlement + bank holidays.
- Attractive defined contribution pension scheme.
- Employee stock purchase plan.
- Flexible working options.
- Private medical care.
- Life assurance.
- Enhanced maternity and paternity pay.
- Career development support and wide ranging learning opportunities.
- Employee health and wellbeing support EAP, wellbeing guidance etc.
- Carbon neutral initiatives/goals.
- Corporate social responsibility initiatives including support for volunteering days.
- Well known companies discount scheme.
#LI-ST1
Travel Requirements
Under 10%
Relocation Provided
None
Position Type
Experienced
Referral Payment Plan
Yes