Role: Senior Software Engineer Location: Bristol(hybrid) Duration: 6 months Inside IR35 : Umbrella About our client: Our client is a leading global aerospace, defense, and security company specializing in delivering complex, mission-critical solutions. With a strong heritage in engineering and innovation, they provide essential services across aviation, marine, land, and nuclear sectors, supporting governments, armed forces, and commercial clients worldwide. Renowned for their commitment to safety, sustainability, and technological advancement, our client plays a vital role in ensuring operational excellence for their customers. Join them and be part of a team that drives innovation and delivers cutting-edge solutions in some of the world's most demanding environments. Key Responsibilities - Design, develop, and maintain cross-platform code libraries (Linux, Windows, Android) using C++, following object-oriented design principles and employing CMake for build management. - Develop and integrate robotics applications utilizing ROS, including advanced OpenCV, Boost, Standard library, and Jsoncpp for efficient data processing and manipulation. - Implement machine learning models for object detection, particularly using YOLOv5, and optimize performance using Nvidia CUDA hardware acceleration. - Develop, test, and deploy cloud-based applications and simulations, using Azure DevOps, Docker, and cloud-based agents for continuous integration and deployment. - Write and maintain unit tests using Google Test Framework, and manage automated testing pipelines in Azure, including YAML pipeline scripting for parallel build and testing. - Work to and maintain agile processes within the team utalising Azure Devops. - Interface with various sensors and hardware components, including Nvidia Jetson microcontrollers, Raspberry Pis, depth cameras, and 3D point cloud sensors, ensuring optimal integration and performance. - Develop communication protocols and safety systems for autonomous navigation and pilot control using Mavlink protocol with Mavlink-based flight controllers (e.g., Orange Cube, Pixhawk). - Collaborate with pilots and other stakeholders to ensure safe and effective handover control between autonomous systems and manual control. - Design, develop, and maintain C++ Cross language interfaces with a particular focus on C#. Required Technical Skillset - Proficient in C++, with a good understanding of object-oriented design principles. - Proficient in using CMake for cross-platform build management. - Background in Linux development. - Experience with Docker for encapsulating applications and ensuring streamlined cloud build and testing. - Strong understanding of git and branch development workflows, including FEATURE, PBI, and Releases. - Familiarity with communication protocols such as Mavlink and integration with flight controllers. - Basic C# experience for interface development. Desirable Skills & Attributes - Familiarity with depth cameras, 3D point cloud data, and related sensor technologies. - Experience with Nvidia Jetson microcontrollers and Raspberry Pis. - Understanding of various sensor types, their strengths, and drawbacks, and techniques such as Kalman filtering and particle filters. - Strong communication skills, particularly in collaborating with cross-functional teams, stakeholders, and customers. - Knowledge in Azure DevOps, including setting up and managing CI/CD pipelines with YAML scripting is desirable. - Knowledge of OpenCV, Boost, Standard library, Jsoncpp, and Nvidia CUDA hardware acceleration. - Knowledge in machine learning, specifically in object detection models like YOLOv5. - Experience in writing unit tests using Google Test Framework. Please apply if you want to be part of a leading global defence, and security company that delivers complex, mission-critical solutions!