Motorola Solutions is seeking a Firmware Engineer to join their Specialty Camera Engineering team in Ware, UK. This role involves designing, developing, and implementing embedded software for long-range surveillance cameras, focusing on performance, reliability, and resource efficiency. The engineer will work with C/C++, bare-metal systems, RTOS, and various embedded interfaces, collaborating with hardware engineers throughout the product development lifecycle. Responsibilities include developing device drivers, troubleshooting hardware/software integration, and optimizing system performance for public and commercial safety applications.
Good To Have:- Python scripting for test automation, data analysis, or rapid prototyping.
- ARM processor experience.
- Experience or strong interest in robotic control programming.
- Familiarity with automated testing, continuous integration pipelines (DevOps & CI/CD).
- Proficiency in reading schematics.
Must Have:- Design, develop, and implement embedded software for bare-metal systems.
- Develop, test, and debug low-level device drivers, peripheral interfaces, and communication protocols.
- Collaborate with hardware engineers to define software/hardware integration requirements and support board bring-up, hardware validation, and troubleshooting.
- Write efficient and maintainable code in C/C++ for microcontrollers, memory-constrained, and real-time systems.
- Utilize oscilloscopes, logic analyzers, JTAG, and other debugging tools to analyze and resolve hardware/software integration issues.
- Develop and execute unit, integration, and system-level tests to verify correct operation and performance of embedded firmware.
- Participate in code reviews to ensure adherence to coding standards, best practices, and design guidelines.
- Maintain comprehensive documentation of software architecture, interfaces, and procedures.
- Analyze and optimize system performance, power consumption, and memory utilization.
- Collaborate with cross-functional teams to define product requirements, identify technical risks, and ensure timely delivery.
- Bachelor’s or Master’s degree in Computer Engineering, Software Engineering, Electronics, or Electrical Engineering.
- Hands-on experience in embedded systems development.
- Solid understanding of embedded systems design, including C/C++ memory management, microprocessor architectures, instruction efficiency, and I/O timing.
- Proficient with debugging tools and techniques for embedded systems.
- Demonstrated ability to identify and improve low-level system performance issues using strong problem-solving skills.
- Experience with scripting languages and building systems.
- Adherence to established development processes for all design and implementation activities.
- Experience collaborating with Quality Assurance teams to identify test cases for new features and areas for regression testing.
- Hands-on experience working with hardware engineers on board bring-up, and debugging using oscilloscopes, logic analyzers, or JTAG.
- Experience reviewing peers’ code for adherence to coding standards and design guidelines.
- Fluent in English, both spoken and written.
- Ability to work in a hybrid arrangement (office located in Ware).
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.