> Markdown version of [/jobs/ext/4491197-senior-embedded-software-engineer](https://www.wearedevelopers.com/jobs/ext/4491197-senior-embedded-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Senior Embedded Software Engineer - **Company:** KO2 Embedded Recruitment Solutions Ltd - **Location:** Hoyland, UK - **Experience:** Expert - **Salary:** £70,000.0 - **Contract:** Permanent contract - **Skills:** 4G (Telecommunication), Agile Methodology, ARM Architecture, Automation of Tests, Fieldbus, C++ (Programming Language), Continuous Integration, Software Debugging, Linux, Linux on Embedded Systems, Middleware, Embedded Software, Message Queuing Telemetry Transport (MQTT), Network Protocols, Object-Oriented Software Development, Real-Time Operating Systems, Software Requirements Analysis, UML, Wi-Fi Technology, Test-Driven Development (TDD), Git, Information Technology, C++14, Code Restructuring, Software Version Control - **Published:** October 31, 2026 - **Apply:** https://www.apply4u.co.uk/jobs/senior-embedded-software-engineer/54205074 ## About the Role It passes data over an IPC link to an embedded Linux application processor. Mostly Linux. You'll spend most of your time on the Linux side, writing application and middleware code in C++11 or later. Modernising a mature codebase. The code was originally written for memory-constrained processors. You'll refactor it into clean, object-oriented, testable C++ for modern hardware, using UML-led design. Full lifecycle. You'll take work from software requirements through design and implementation to integration and validation. Engineering practice. The team is adopting test-driven development, automated testing and CI/CD. Connectivity. TCP/UDP, HTTP/REST, MQTT and TLS, plus Wi-Fi, 4G and over-the-air (OTA) updates. What you'll do Research, design, develop and debug software for new and existing products. Refactor existing code into well-structured, object-oriented modern C++. Make sure code meets the relevant safety, functionality and performance standards, and is fully tested with no regressions. Take part in code and design reviews and produce clear technical documentation. Work closely with hardware engineers and project leads, and give realistic effort estimates. Mentor and support other engineers as the team grows. Essential skills Typically 5+ years of commercial embedded software development. Strong, current commercial experience of modern C++ (C++11/14/17/20) . This must be real production work, not something you've only dabbled in. Solid C skills are also needed. Embedded Linux development, including debugging with GDB and strace. Object-oriented design and UML. Ability to read hardware schematics and debug on target with debuggers, monitors or simulators. Networking protocols such as HTTP and MQTT, including troubleshooting. Source control (Git) and experience of working in an Agile team. A degree in Computer Science, Electronics or a related subject, or equivalent experience. Desirable skills ARM Cortex-M3/M4 microcontroller development, an RTOS, and ## Description Senior Embedded Software Engineer - Modern C++ / Embedded Linux Barnsley, South Yorkshire Up to £70,000 + benefits | Relocation assistance available Do you write modern C++ every day, but still understand what's happening on the hardware underneath? This is a senior role in a small, highly skilled R&D team where your work will directly shape products that are already deployed internationally. The company This is an established IoT product design house with its own in-house R&D team. It develops connected embedded devices across several projects at once, from initial requirements through to products in volume production. The software team is small, so you'll have real ownership, your work will be visible and you'll have a direct say in technical direction. The technical environment Dual-processor architecture. An ARM Cortex-M microcontroller handles real-time I/O. It also runs an RS-485 multi-drop field bus with a custom serial protocol that connects a family of peripheral devices.