We are seeking an experienced, hands-on embedded software engineer to take technical ownership of a video systems platform. You will lead embedded software architecture, evaluate components and platforms, develop working prototypes, and deliver reliable production-ready systems. You will collaborate closely with hardware engineers and external specialists, translating technical requirements into robust, measurable solutions. Key Responsibilities
Own the embedded software architecture and contribute to system design and platform selection.
Develop and maintain low-level C/C++ software for video processing, hardware control and network communication.
Evaluate and integrate hardware codecs, vendor SDKs, drivers and supporting software.
Implement and debug interfaces and protocols including I2C, SPI, UART, CAN and Ethernet.
Integrate and optimise real-time video transport, including configuration, encryption, monitoring and recovery behaviour.
Build and optimise video pipelines for latency, image quality, bitrate and audio synchronisation.
Develop networking and control functions that handle packet loss, interruptions and recovery.
Support board bring-up, hardware integration and system debugging.
Define FPGA requirements and coordinate specialist support where needed.
Create automated tests, diagnostics, logging and repeatable performance measurements.
Establish reproducible builds, firmware update and recovery processes, and clear technical documentation.
Support bench and field trials, converting test feedback into improvements.
Essential Requirements
Strong embedded C/C++ development skills, including debugging on physical hardware.
Experience delivering hardware-based video encoding, decoding or comparable real-time systems.
Embedded Linux development experience, including vendor SDKs, drivers and hardware interfaces.
Understanding of video pipelines, buffering, memory movement and end-to-end latency.
Experience with Ethernet/IP networking and real-time video transport.
Ability to diagnose issues across software, hardware and system boundaries.
Experience progressing embedded systems from development hardware to dependable operational use.
Ability to assess technical trade-offs, work independently and collaborate with multidisciplinary teams.
Desirable Experience • SRT encoder/decoder development or integration. • Low-latency H.265/HEVC or H.264 implementation. • FPGA/SoC platforms and associated development tools. • FPGA integration, AXI, DMA, Verilog or VHDL. • SDI video, 4K60, 10-bit processing, embedded audio, genlock or timecode. • GStreamer or comparable embedded media frameworks. • Experience with camera-control protocols, telemetry or constrained wireless links.
Remote working is welcome where practical, with on-site attendance for hardware integration, testing and collaboration. We are flexible on start date and prioritise finding the right person.
... the lookout for talented Lead Software Engineers, if you have strong technical experience in real-time embedded systems and are eager to expand your skillset, leadership and decision-making capabilities, this role will provide the foundation for your growth. We are happy to explore engineers from any embedded software background ...
... Bring You will play a key role in designing and delivering high integrity embedded software solutions demonstrating both technical expertise and collaborative leadership. Key skills and behaviours include: - Several years of embedded software engineering experience in aerospace, defence, or other mission- or safety-critical ...
... team as an Embedded Software Engineer and contribute to the development of complex, safety‑critical embedded software for defence and other highly regulated engineering environments. You will be involved in the design, development, and integration of high‑integrity software, working on technically challenging systems where ...
We are looking for a Senior Embedded Software Engineer to develop advanced, real-time software solutions for complex systems. You will be responsible for delivering software from initial concept through to fully verified solutions, working across the full development lifecycle. Key Responsibilities Design, develop, and ...
... Requirements: - A minimum of 7 years experience as a Senior Engineer - A Degree in a relevant Engineering Discipline - Broad understanding of software from embedded to applications - Experience leading multi-disciplined teams of software engineers - Ability to develop a software architecture for complex systems from scratch ...
... least 5 years of experience developing embedded Linux systems, with in-depth system architecture knowledge - Experience developing for resource-constrained embedded platforms - Experience using git version control on large-scale applications - Ability to provide technical leadership to a sizeable team while remaining hands-on ...
... on the lookout for talented Software Engineers, if you have strong technical experience in real-time embedded systems and are eager to expand your skillset, leadership and decision-making capabilities, this role will provide the foundation for your growth. We are happy to explore engineers from any embedded software background ...
... direction to a software engineering team. Essential Skills & Experience Significant software engineering experience, or equivalent demonstrable capability. Strong software leadership and development experience in one or more of: - C++, C#, Python, Java - Designing and delivering software components and systems. - Software design ...
... need a senior engineering leader to act as a core pillar of domain knowledge, driving both operational excellence and technology innovation across our retail systems. We’re looking for a Senior Lead - Staff Software Engineer to architect and scale our core retail technology infrastructure—spanning Point of Sale (POS), ERP/financial ...
... questions; working on NHS projects; or working with Health APIs. Responsibilities: - Lead the architecture, design, development, and deployment of complex software systems, ensuring quality, security, and scalability. - Manage and mentor software engineers, provide technical guidance, and support their professional growth. ...