Software Engineer C++/Linux Real-Time Systems
Summary
Develops real-time C++/Linux systems for defence, including low-level I/O and multi-threaded data processing.
Salary: £45,000 - 65,000 per year
Requirements:- Strong commercial experience developing software in C++ within Linux environments
- Knowledge and practical use of C# for tooling, interfaces, or supporting applications
- Experience developing real-time data processing systems
- Strong understanding of multi-threaded and concurrent programming concepts
- Experience working with low-level I/O, DMA, PCIe cards, or driver-level interfaces
- Experience developing sequencing frameworks, workflow engines, or state-machine-based execution systems
- Proven track record integrating and debugging complex software and hardware systems
- Strong understanding of software engineering best practices, memory management, and performance optimisation
- Experience using version control systems such as Git and familiarity with CI/CD practices
- Experience working with SFPDP technology
- Knowledge of FPGA-based data acquisition systems and synchronisation techniques
- Experience with Hardware-in-the-Loop environments, automated test rigs, or system test frameworks
- Exposure to Real-Time Operating Systems or real-time Linux extensions
- Experience using the LabVIEW suite of tools
- Design and develop real-time test and data capture software using C++ on Linux
- Integrate high-speed SFPDP cards into multi-channel data processing environments
- Architect, develop, and maintain scalable multi-threaded applications
- Implement data sequencing, synchronisation, capture, and replay functionality
- Collaborate with hardware teams to ensure accurate timing and seamless hardware/software integration
- Lead and support integration, verification, and testing activities at both component and system level
- Perform performance analysis, debugging, troubleshooting, and optimisation of real-time systems
- Produce technical documentation including software architecture, interface definitions, and test procedures
- Architect
- C#
- CI/CD
- FPGA
- Git
- Hardware
- Support
- Linux
- PCIe
- C++
More:
We are a highly skilled and collaborative engineering team working on technically complex projects that support the testing and validation of sophisticated, mission-critical technologies. We offer a hands-on role with excellent opportunities for professional growth across a broad range of products, platforms, and technologies. You will join experienced software and systems engineers in a supportive and inclusive culture that values innovation, continuous learning, and technical excellence.
last updated 32 week of 2026