Find your future role
Job title
Software Engineer | Across all levels
Ref no. | BHN572179 |
---|---|
Location | Berkshire, England |
Start date | ASAP |
Job type | Permanent |
Job status | Closed |
Job summary
Looking to join an Innovative company? The company not only produce products which are used in some of the most challenging environments in the world but have a number of awards under their belt!
Key skills required for this role
Software Engineer, Software, C++, Rust
Important
Software Engineer, Software, C++, Rust
Job description
Important: Due to the level of security clearance required, all applicants must be eligible to obtain UKEYES ONLY clearance, and therefore be a Sole UK National.
Working: This role is full time office based with possible flexible working hours.
Want to Join a business who's capabilities address the highest classification levels of High Grade and Type 1 National Security, across a growing and thriving sector?
A reputable business who, have a number of awards, most recently been named as an Award winner (Gold Award) in MoD Defence Employer Recognition Scheme!
Brand new site for 2023! Onsite Café, Free parking, Table Tennis and more!
Full range of company benefits, flexible working, training, development and clear career progression!
Overview:
The Software Engineer will support 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.
Scope
Define, design, develop, document and test embedded and/or application software as part of a software engineering team of 5-20 engineers, delivering multiple concurrent research, development and production programmes ranging from tens of £k to several £m.
Main 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
Experience needed:
- Ideally qualified to degree-level or equivalent experience in a Physics or Engineering based subject, such as; Electronics, Hardware, Computer Science, Software or Systems Engineering etc.
- 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 Python
- Experience of C#, JavaScript, node.js
- Experience of Rust
- 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:
- Experience in the Defence / Aerospace or safety regulated environment would be advantageous.
- 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