Software Engineer

Ultra Electronics
Maidenhead, UK
3 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Shift work

Tech stack

Testing (Software) JavaScript (Programming Language) Software Applications Automation of Tests C Sharp (Programming Language) C++ (Programming Language) Code Generation Communications Protocols Computer Programming Continuous Integration Software Design Patterns Linux
+18 more
Device Drivers Linux on Embedded Systems Embedded Software Python (Programming Language) MISRA C (C Programming Language) Node.Js Object-Oriented Software Development RSA (Cryptosystem) Software Engineering Software Requirements Analysis Systems Modeling Language TCP/IP UML SC Clearance Bare Metal Software Coding Software Version Control Devsecops

Job description

The Ultra Engineering function manages a portfolio of specialist capabilities, generating highly differentiated solutions and products by applying electronic, mechanical, and software technologies in demanding and critical environments to meet customer needs.

The Software Engineering function in Ultra supports the software development lifecycle consisting of requirements analysis, design, implementation, test and verification in order to deliver software components into projects and products and supports the deployment and maintenance of software components. A professional at this grade possesses knowledge for specific fields and performs structured work assignments. Uses established procedures to solve problems by making judgments and gets work done with quality under moderate supervision. Has limited discretion to vary from established procedures.

Scope

Define, design, develop, document and test embedded and/or application software as part of a software engineering team of 5-20 engineers, within the Cyber UK Business Unit, delivering multiple concurrent research, development and production programmes ranging from tens of £k to several £m.

Responsible for / Key responsibilities

  • Current:
  • Implement software under the direction of the project’s software lead and engineering software lead.
  • SFIA Programming / software development: Level 2 o Designs, codes, verifies, tests, documents, amends and refactors simple programs/scripts. o Applies agreed standards and tools to achieve a well-engineered result. o Reviews own work

  • Manage security of information as defined in the Security manual to ensure compliance with Government regulations.
  • Developing into:
  • Specify requirements, design, implement and test embedded software and/ or application software in accordance with the project software development process to ensure high quality and timely software deliverables.
  • Apply object-oriented design techniques to enable code re-use and integration with testing frameworks
  • Review and understand system design artefacts to enable the derivation of software requirements and architecture that meet the high-level system requirements.
  • Design, document, review and maintain the software design using modelling tools such as RSA and EA, ensuring model can be used for accurate code generation as required.
  • Develop and maintain knowledge of best practice development processes, language standards and tools, e.g. TDD/BDD, Continuous Integration, DevSecOps, static and run-time analysis tools, C#/C++/Python/C standards and secure software development.
  • Estimate time and effort required for software activities and deliver to these time and effort estimates to ensure cost and schedule adherence.
  • Contribute to the Software Community of Practice by proposing improvements in tools, processes and techniques that support quality and innovation and make the software development more efficient and effective.
  • Actively contribute to defined aspects of the project to achieve optimal balance between requirements, schedule and cost.
  • SFIA Programming / software development: Level 3 o Designs, codes, verifies, tests, documents, amends and refactors moderately complex programs/scripts. o Applies agreed standards and tools to achieve a well-engineered result. o Monitors and reports on progress. Identifies issues related to software development activities. Proposes practical solutions to resolve issues. o Collaborates in reviews of work with others as appropriate

Role requirements

  • Essential:
  • Willing and able to obtain, and maintain, SC security clearance.
  • Willing and able to obtain, and maintain, DV security clearance (following attainment of SC clearance).

Requirements

  • Degree in an engineering, mathematical or science-based subject or equivalent experience.
  • Experience of at least one of the following; o Embedded product development (including bare-metal and RTOSes such as ThreadX, QNX or Linux) o Embedded Linux application, kernel and/or driver development. o C and C++

  • Experience of Object-Oriented Design and Design Patterns
  • Experience of software testing and design for test
  • Experience of using version control, continuous integration and automated test tools and frameworks
  • Desirable:
  • Python
  • JavaScript, node.js
  • Rust
  • Communications protocols - e.g. TCP/IP
  • Experience of best practice software development processes/lifecycles
  • Exposure to defensive coding techniques and standards such as MISRA
  • Knowledge of software engineering practices, methodologies, processes, techniques and technology trends
  • Experience of DOORS, RSA, Enterprise Architect, UML and SysML

IC

LI-ONSITE, Due to the nature of the programs we deliver for our customers, candidates may need to obtain the relevant security clearance or handle export-controlled material as defined by the role’s requirements. Applicants must be able to obtain and maintain the appropriate level of security clearance for the role. Due to the nature of our work, you must be a British Citizen who has been resident in the UK for the past 5 years in order to apply for SC clearance and 10 years for DV. For more information, please visit the UKSV website.

Benefits & conditions

Every employee is critical to our success, and as such, we offer a range of flexible employee benefits, including:

  • Participation in an Annual Bonus Scheme
  • Private Medical Cover
  • 25 days’ holiday (plus Bank Holidays) with the option to buy an extra 5 days
  • Pension Contribution
  • 4 x Life Assurance Cover
  • Flexible working hours with opportunity for a 1pm finish on a Friday
  • Flexible benefits including cycle to work scheme, will writing and more
  • Security Clearance Allowance - where relevant and subject to you holding the required security clearance

About the company

Join the team redefining defense technology. From engineering systems that save lives to leading programs that change the battlefield-find your place in the future of defense.

Cyber Business

Our Cyber business unit is at the forefront of pioneering advanced cryptographic and key management solutions, facilitating the confidential exchange of vital information for customers operating at both tactical and strategic echelons. Join our team and participate in the innovation that ensures the highest security and trust worldwide.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on ultra-electronics.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

43 sec

Software engineering journey and local Manchester roots

Jonathan Tang · Coffee With Developers

5:02 min

Mapping distributed compute paradigms to modern vehicles

Joachim Werner · LIVE

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · WWC 2025

2:13 min

Evaluating UML, block diagrams, and the C4 model

Simon Lasselsberger · WWC 2022

3:50 min

Queues in TCP stacks and continuous network connections

Clemens Vasters Clemens Vasters · WWC 2022

2:39 min

Experiencing core Linux capabilities for DevOps administration

Michael Cade · LIVE

Videos

See all

Related articles

See all