Software Design Engineer
The best products come from people who can see beyond the code - understanding how firmware, electronics and real-world use all need to work together. As a Software Design Engineer, you’ll take ownership of embedded development, fault finding and product improvement for specialist communications and surveillance equipment used across demanding environments.You’ll work closely with technical, production, sales and vehicle operations teams, giving you exposure to the complete product lifecycle. From developing bare-metal firmware and solving complex faults to testing new ideas and improving existing products, your work will have a visible impact on performance, reliability and the end-user experience.What’s in it for you
- £35,000–£45,000 salary depending on experience, plus an excellent benefits package.
- Take genuine ownership of development work, from initial ideas and redesigns through to testing and production support.
- Work with embedded technology used within specialist communications, surveillance and vehicle-based applications.
- Gain broad technical exposure across firmware, electronics, testing, fault diagnosis and product development.
- Join an established UK operation backed by more than 45 years of specialist industry expertise.
- Work from a Birmingham site with on-site employee parking and convenient access to Birmingham International rail and bus services.
- Develop, test and maintain bare-metal C firmware, primarily for STM32 and ARM microcontrollers, including I2C, SPI and UART communications.
- Diagnose firmware and product faults by reviewing code, schematics and supporting documentation, identifying effective corrective actions.
- Write clear, modular and maintainable code while using Git for version control and keeping technical documentation up to date.
- Test existing and new product functionality, considering reliability, usability and the overall end-user experience.
- Research, prototype and evaluate technical solutions that support new product development and improvements to existing equipment.
- Manage multiple development and support tasks through Jira while providing technical assistance across production and other internal departments.
- Practical intermediate-level experience writing, debugging and building efficient bare-metal C firmware for STM32 and ARM microcontrollers.
- Strong fault-finding skills, including the ability to interpret electronic schematics and identify issues within firmware and hardware.
- Practical knowledge of technical test equipment such as multimeters, oscilloscopes and signal generators, with soldering or PCB rework skills advantageous.
- Familiarity with development and workflow tools such as STM32CubeIDE, VS Code, Code Composer Studio, Git and Jira.
- Knowledge of MSP430 microcontrollers, Bluetooth or other wireless technologies would be advantageous; familiarity with KiCAD would also be useful.