Candidates must be eligible for SC clearance (resident in the UK for 5 years) or currently SC cleared.
The successful candidate will work as part of a team of Software Engineers in multi-discipline programmes and will participate in all phases of the software development life cycle. This will involve embedded software development, targeting off the shelf high-technology sub-systems or in-house processor-driven boards using a range of real-time operating systems.
Software assignments will be across product lines with a military focus. You will work with other software engineers and other engineering disciplines as part of a product team.
Key Responsibilities and Tasks:
- Designing and developing real-time embedded software solutions.
- Integrating and debugging solutions on target hardware, addressing issues arising during hardware/software integration
- Targeting multiple real-time platforms (e.g. VxWorks and MicroC/OS) using C and/or C++
- Developing to alternative software life cycles with participation in all aspects of the software life cycle
- Software requirements management and traceability using industry best practice, tools and techniques.
- Software test planning and execution (Unit, Integration and System Level)
- Developing software solutions with a view to reuse.
- Documenting all aspects of the software production process in accordance with company processes and standards
Essential Skills Required
- Knowledge of embedded real-time development / Practical experience of real time embedded development.
- Knowledge of the hardware/software interface / Practical experience of integrating embedded solutions on target hardware.
- Understanding of real-time operating system behaviour.
- Appreciation of software requirements analysis, specification & design
- Knowledge of both procedural (e.g. C) and object-oriented (e.g. C++) languages
- Understanding of data communications (e.g. 1553, RS422) and networking
- Understanding of the principles and levels of software testing
- Practical experience of debugging on a target hardware platform.
- Use of one or more real-time operating systems.
- Track record of developing C/C++ applications.
Desirable Skills Required
- Knowledge of UML / Practical experience of model-driven software development using UML.
- Knowledge of Agile development methodologies
- Graphical User Interface design and development
- Understanding of software configuration control
- Knowledge of one or more of VxWorks, uC/OS or SYS/BIOS