Software Engineer

Ultra

Maidenhead

On-site

GBP 70,000 - 95,000

Full time

14 days+

Get more replies from employers

Send a job-specific resume in minutes.

Benefits offered by this job

Annual Bonus Scheme
Private Medical Cover
25 days’ holiday (plus bank holidays)
Pension Contribution
4 x Life Assurance Cover
Flexible working hours
Cycle to work scheme
Security Clearance Allowance

Job summary

Ultra’s Cyber UK Business Unit is seeking an embedded software engineer to define, design, develop, document and test embedded and application software as part of a team of 5–20 engineers. You will implement software under leadership, apply OO design, and ensure compliance with security and testing standards.

Role requires willingness to obtain SC and DV clearances, a degree in engineering/science, and hands-on C/C++ with embedded Linux.

Qualifications

  • Degree in engineering, mathematical or science-based subject or equivalent experience.
  • Experience in embedded product development including bare-metal and RTOS (ThreadX, QNX or Linux).
  • Embedded Linux application, kernel and/or driver development.
  • C and C++ programming experience.
  • Object-Oriented Design and Design Patterns.
  • Software testing and design for test.
  • Experience with version control, CI and automated tests.

Responsibilities

  • Implement software under the direction of the project’s software lead and engineering software lead.
  • Design, code, verify, test, document, amend and refactor simple programs/scripts.
  • Apply standards and tools to achieve a well-engineered result.
  • Manage security of information to comply with government regulations.
  • Specify requirements, design, implement and test embedded or application software.
  • Apply OO design to enable code reuse and testing framework integration.
  • Review system design artefacts to derive software requirements and architecture.
  • Design, document, review and maintain software design using RSA and EA.
  • Develop knowledge of best practice development processes and language standards (C/C++/Python/C).
  • Estimate time/effort for software activities and deliver accordingly.
  • Contribute to Software Community of Practice to improve tools and processes.
  • SFIA Level 3: monitor progress, identify issues, propose solutions.

Skills

C/C++
Embedded
OO Design
Software Testing
Version Control
CI/CD
Python
JavaScript
Rust
TCP/IP
MISRA
UML/SysML
DOORS RSA EA

Education

Engineering/science degree

Tools

DOORS
RSA
Enterprise Architect
UML
SysML

Job description

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
      • Designs, codes, verifies, tests, documents, amends and refactors simple programs/scripts.
      • Applies agreed standards and tools to achieve a well-engineered result.
      • 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
      • Designs, codes, verifies, tests, documents, amends and refactors moderately complex programs/scripts.
      • Applies agreed standards and tools to achieve a well-engineered result.
      • Monitors and reports on progress. Identifies issues related to software development activities. Proposes practical solutions to resolve issues.
      • 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).

Qualifications / skills required

  • Essential:
    • Degree in an engineering, mathematical or science-based subject or equivalent experience.
    • Experience of at least one of the following;
      • Embedded product development (including bare-metal and RTOSes such as ThreadX, QNX or Linux)
      • Embedded Linux application, kernel and/or driver development.
      • 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

#LI-EG1

Notice

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.

Our Benefits

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

Diversity, Equity & Inclusion Statement
Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Principal Software Engineer
Principal Software Engineer

Ultra • Maidenhead

On-site
GBP 90,000 - 130,000
Annual Bonus Scheme
Private Medical Cover
25 days’ holiday with option to buy 5
+4
Chief Software Architect
Chief Software Architect

Ultra • Maidenhead

On-site
GBP 75,000 - 110,000
Annual bonus scheme
Private medical cover
Pension contribution
+3
Software Engineer
Software Engineer

Ultra I&C • Maidenhead

On-site
GBP 40,000 - 60,000
Annual Bonus Scheme
Private Medical Cover
25 days holiday plus Bank Holidays
+3
Principal Software Engineer
Principal Software Engineer

Worky • Maidenhead

On-site
GBP 65,000 - 95,000
Annual Bonus
Private Medical Cover
25 days holiday
+5
Chief Software Architect
Chief Software Architect

Ultra I&C • Maidenhead

On-site
GBP 60,000 - 90,000
Annual Bonus Scheme
Private Medical Cover
25 days’ holiday plus Bank Holidays
+2
Systems Engineering Manager - Programmes
Systems Engineering Manager - Programmes

Ultra I&C • Maidenhead

On-site
GBP 60,000 - 90,000
Annual Bonus Scheme
Private Medical Cover
25 days’ holiday (plus Bank Holidays)
Systems Engineering Manager
Systems Engineering Manager

Ultra I&C • Maidenhead

On-site
GBP 90,000 - 130,000
Participation in an Annual Bonus Scheme
Private Medical Cover
25 days’ holiday
+5
Systems Lead - Programme
Systems Lead - Programme

Ultra I&C • Maidenhead

On-site
GBP 60,000 - 80,000
Participation in an Annual Bonus Scheme
Private Medical Cover
25 days’ holiday with option to buy extra days
+2
Safety Engineer
Safety Engineer

Ultra I&C • Maidenhead

On-site
GBP 65,000 - 90,000
Annual Bonus Scheme
Private Medical Cover
25 days’ holiday (plus Bank Holidays)
+2
Principal FPGA Engineer
Principal FPGA Engineer

Ultra I&C • Maidenhead

On-site
GBP 80,000 - 120,000
Annual Bonus Scheme
Private Medical Cover
25 days’ holiday (plus Bank Holidays)
+3