Software Engineer

16 Minutes ago • 3 Years +
Software Development & Engineering

Job Description

At Motorola Solutions, the Specialty Camera Engineering team in Ware, UK, develops cameras for long-range surveillance, focusing on public and commercial safety. This Software Engineer role involves contributing across the entire software development lifecycle, from concept to implementation, within a dynamic, fast-paced, hybrid environment. The successful candidate will design and implement robust, scalable, multi-threaded object-oriented software in C++ for high-speed data processing and networking, optimize system performance, and develop innovative algorithms for image acquisition and environmental management.
Good To Have:
  • Experience or strong interest in robotic control programming.
  • Familiarity with automated testing, continuous integration, and deployment pipelines.
  • Proficiency with C++17, Python and/or C#.
  • Familiarity with image processing techniques, libraries, or frameworks.
  • Experience working with camera hardware and software interfaces.
  • Experience with Docker and containerization for software deployment and development.
  • Familiarity with GitLab, GitLab CI/CD, or similar platforms.
  • Experience collaborating within distributed teams using Git and GitLab.
Must Have:
  • Design and implement robust, scalable, multi-threaded object-oriented software in C++.
  • Architect and develop advanced software modules utilizing modern C++ design patterns.
  • Analyze, identify, and optimize low-level system performance issues.
  • 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 and maintainability.
  • Work closely with Quality Assurance teams to define test cases for new features.
  • Adhere to and continuously improve established development processes.
  • Contribute to a collaborative development environment by leveraging version control (Git).
  • 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.
Perks:
  • 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.

Add these skills to join the top 1% applicants for this job

cross-functional
problem-solving
team-player
design-patterns
github
cpp
game-texts
cross-functional-collaboration
quality-control
test-coverage
automated-testing
regression-testing
gitlab
networking
c#
linux
ci-cd
docker
git
python
algorithms
c-make

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

Set alerts for more jobs like Software Engineer
Set alerts for new jobs by Motorola solutions
Set alerts for new Software Development & Engineering jobs in United Kingdom
Set alerts for new jobs in United Kingdom
Set alerts for Software Development & Engineering (Remote) jobs
Contact Us
hello@outscal.com
Made in INDIA 💛💙