Software Engineer - Embedded C / C ++ (Contract)
Software Engineer using UML design and architecture patterns, iterative and incremental lifecycles, and high level programming languages C++/C to develop equipment supporting submarine weapon systems, sonobuoy systems and continue to support our electro optic, gun fire control systems and platform data management systems.
Key Responsibilities:
- Contribute to all aspects of a product lifecycle, including analysis of requirements, high level and detailed design, implementation, test and deployment.
- Planning approach to software development and testing.
- Development of high quality, well tested code and accompanying documentation.
- Rigorous configuration control of Software Items and configuration data.
- Adherence to the company's engineering processes and procedures.
- Support the deployment of the software, both onto production hardware and the completed product once deployed to the end users.
- Providing clear regular reports on progress to the Software Functional Team Lead and Project Management chains.
Key Attributes:
- UML and associated tools (Rhapsody and EA architect)
- C++/C
- Qt/QML GUI Framework
- Embedded Software Development
- Agile development (Jira)
- Automated test technologies (GoogleTest, GoogleMock and Squish)
- IP Communications
- Serial and discrete communications
- Linux Operating System
- Real Time Operating Systems
- Operating system hardening
- Virtualisation experience (e.g. VMWare, Hypervisor)
- Clear and concise documentation skills (Microsoft office toolset)
- Configuration control (e.g. SVN and GIT)
- Continuous integration and build (Jenkins)
- Developing software in a regulated environment (Defence, Aerospace and Automotive)
ADDITIONAL SECURITY INFORMATION: WE SEEK A SOFTWARE ENGINEER WHO HAS WORKED IN A MILITARY / DEFENCE ENVIRONMENT / INDUSTRY WITHIN THE LAST 12 MONTHS OR WHO IS CAPABLE OF OBTAINING SECURITY CLEARANCE (SC LEVEL MINIMUM)