> Markdown version of [/jobs/ext/1904797-senior-embedded-software-engineer](https://www.wearedevelopers.com/jobs/ext/1904797-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:** 17918 - **Location:** London, UK - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Board Bringup, ARM Architecture, User Authentication, Booting (BIOS), C++ (Programming Language), Communications Protocols, Computer Programming, Daemon Tools, Software Debugging, Linux, Device Drivers, Middleware, Embedded Software, Ethernet, Firmware, Field-Programmable Gate Array (FPGA), Hardware Design, Software Architecture, Real-Time Operating Systems, Simple Network Management Protocols, Systems Integration, Universal Asynchronous Receiver/Transmitter, Openapi, Serial Peripheral Interface, PIC Microcontroller, Yocto, Bare Metal, Build Tools, Restful APIs, Vulnerability Analysis - **Published:** August 3, 2026 - **Apply:** https://www.apply4u.co.uk/jobs/x/42623623/ ## About the Role requirements, interface specifications and technical documentation Collaborate with multidisciplinary engineering teams throughout the product lifecycle About You Strong experience developing embedded Linux systems Commercial experience with RTOS and/or bare-metal development Strong C/C++ programming skills within embedded environments Experience working with resource-constrained embedded systems Knowledge of communication interfaces including Ethernet, CAN, SPI, I2C, UART and RS422 Experience bringing up and debugging custom hardware platforms Strong debugging skills using oscilloscopes, logic analysers and software debugging tools Ability to work effectively within multidisciplinary engineering teams Desirable Experience with Yocto, PetaLinux or similar embedded Linux build systems Experience with Zephyr OS Experience with ARM Cortex-M and Cortex-A platforms, particularly STM32 devices Knowledge of Linux kernel architecture, bootloaders and device drivers Experience implementing secure ## Description software architecture, development practices and system integration processes. Key Responsibilities Architect, develop and maintain embedded Linux systems using Yocto-based platforms Develop and maintain firmware for Zephyr OS and bare-metal embedded subsystems Support prototype board bring-up, hardware integration and system-level debugging Design and implement communication protocols between Linux, FPGA and microcontroller-based systems Develop networking interfaces including REST APIs, SNMP agents and OpenAPI specifications Implement, optimise and troubleshoot TCP/UDP communications and low-level networking functionality Develop secure communication solutions including authentication, encryption and secure firmware update mechanisms Develop Linux services, daemons, device drivers and communication middleware Support vulnerability assessment and system hardening activities Lead root-cause analysis and resolution of embedded software, networking and security issues Produce software ## Related Videos - [Unleashing the Full Potential of the Arm Architecture – Write Once, Deploy Anywhere](https://www.wearedevelopers.com/videos/940-unleashing-the-full-potential-of-the-arm-architecture-write-once-deploy-anywhere) - [Docker network without Docker](https://www.wearedevelopers.com/videos/1418-docker-network-without-docker) - [For the REST of us: API First and Conway’s Law](https://www.wearedevelopers.com/videos/1932-for-the-rest-of-us-api-first-and-conway-s-law) - [The best of two worlds - Bringing enterprise-grade Linux to the vehicle](https://www.wearedevelopers.com/videos/67-the-best-of-two-worlds-bringing-enterprise-grade-linux-to-the-vehicle) - [More efficient software for more efficient microchips](https://www.wearedevelopers.com/videos/1164-more-efficient-software-for-more-efficient-microchips) - [Docker exec without Docker](https://www.wearedevelopers.com/videos/1094-docker-exec-without-docker) ## Related Articles - [Where To Find Software Engineering Jobs](https://www.wearedevelopers.com/magazine/396-where-to-find-software-engineering-jobs) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [Why Upskilling And Reskilling is Important For Developers](https://www.wearedevelopers.com/magazine/428-why-upskilling-and-reskilling-is-important-for-developers) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Fully Remote Software Engineer Jobs](https://www.wearedevelopers.com/magazine/447-fully-remote-software-engineer-jobs) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated)