Software Engineer

Software Engineer

Would you like to work for a leading global aerospace and defence organisation?

The primary role involves the inception and development of embedded software for a range of Precision Guidance products, which typically include functions such as:

  • Control and non-uniformity correction of electro-optic imaging sensors

  • Dynamic feedback control systems for electro-optic sightline steering mechanisms

  • Dynamic feedback control systems for ancillary subsystems such as thermal reference devices, miniature actuation mechanisms etc.

  • Image processing to acquire and track objects of interest, often within complex and dynamic scenes

  • System management and interfacing with other key avionic subsystems

  • High integrity built-in test

  • Data fusion between intrinsic or extrinsic data

Particular project opportunities at this time include definition and development of an evaluation imaging sensor system requiring a plug and play method of hosting existing and future algorithms; maturation and development of a prototype missile seeker to undergo a real-world trial as part of a UK MoD Technology Demonstration Programme; and full development of a replacement forward-looking infrared avionic equipment for the US Harrier AV-8B.

This will involve: -

  • Contributing to the high-level requirements capture and concept design in order to enable the requirements applicable to software to be well-derived. In some cases, this may involve direct liaison with system customers to elicit requirements and drive this process.

  • Definition and authoring of software development plans, balancing the needs of a given project with appropriate company and external processes.

  • Thorough and accurate estimation based on appropriate sub work breakdown structures, scheduling and assumptions in addition to the known technical requirements.

  • Authoring and review of software requirement specifications.

  • Development of software through both classical and model-driven processes, typically combining these approaches appropriately.

  • In all cases work closely as part of multi-functional integrated project teams, both as a lone software engineer or as part of a software sub-team.

  • Generation of software test plans and specifications.

  • Support to module and system-level integration, execution of testing and analysis of test recordings and results.

  • Support to real-world integration and trials where applicable.

Core skills required:

  • Good interpersonal skills and behaviours

  • Thorough understanding of embedded software development

  • Proven capability in developing successful software solutions using a range of languages and toolsets

  • Essential: C / C++

  • Desirable: Java, Python, Delphi

  • Some familiarity with image based acquisition and tracking

  • Familiarity with software development via model-driven engineering, including detailed knowledge of auto-coding from Matlab and Simulink

  • Proven practitioner with standard Microsoft Office tools

Familiarity with the following auxiliary tools is desirable:


  • Matlab/Simulink

  • Rhapsody

  • LabView

  • Configuration control using Dimensions and Teamcenter

  • Desktop Linux familiarity