At a Glance
- Tasks: Design, validate, and test software components for innovative systems.
- Company: Join a leading tech company committed to inclusivity and innovation.
- Benefits: Enjoy competitive salary, health benefits, and opportunities for professional growth.
- Other info: Dynamic team environment with excellent career development opportunities.
- Why this job: Make a real impact in software engineering while working with cutting-edge technology.
- Qualifications: Degree qualified with strong knowledge of C++ and software design.
The predicted salary is between 60000 - 80000 £ per year.
- Principal Software Engineer
- Full Time
The role of a Software Engineer is to be part of the Software Systems Capability function, where you will specify, design, validate and test software components, including low‑level requirements for the software and source code.
The Principal Software Engineer is responsible for the on‑time delivery and quality of the software and the artefacts associated with the design and verification of the software system.
This shall be achieved through decomposition of designs and development of tests and analysis to ensure that the implementation satisfies the requirements allocated to the software.
- What You Will Be Doing
- Reviews and agrees high level software requirements including their testability.
- Analyses and translates high level requirements into a validated design for the software component.
- Captures applicable design constraints (must meet conditions) and quality attributes (may be traded) that apply to the component.
- Designs and implements software components to meet the high-level requirements and design constraints/standards.
Allocates software requirements to test vehicles defined in the verification plan.
- Analyses software components for functional behaviour, which may include modelling and simulation to demonstrate that the design meets the high-level requirements.
Develops and reviews software tests that will provide evidence to demonstrate that the software requirements have been satisfied.
- Analyses existing software for architectural or design issues and drives improvement of the existing code base to meet modern requirements for robustness and safety.
- Analyses verification test results against software requirements.
- Provides targeted testing of software level functionality to support problem investigation and problem closures and customer issues.
- Liaises with other disciplines to understand functional performance capabilities of components of the system to facilitate effective component design.
- May be required to participate in and support capacity planning and the development of long‑term strategic goals for the department, in conjunction with the department managers.
- May be required to develop, implement, document and maintain policies, procedures, associated guidelines, tools and training as required.
- Develops the knowledge required to provide advice to project teams and be able to create, search, and reuse knowledge with some guidance from established practitioners.
- Produces reports where required to document the work carried out.
- Position Qualifications
- Strong knowledge of software design, system architecture, software and/or hardware architecture, software and hardware development process constraints and embedded software testing at module level.
- Degree Qualified.
- Strong knowledge of modern C++ in relation to real‑time systems, including an understanding of refactoring legacy code to improve robustness.
- A working appreciation of associated engineering disciplines.
- Proficient with design and analysis tools. This can include an appreciation of the tools and what can be achieved through them.
- Professional courage to highlight areas of concern and risk with regard to suitability of a product to meet its requirements in a safe and functionally appropriate way.
- An ability to interpret test results and provide an informed opinion or conclusion as to the outcome of the analysis. This includes an understanding of measurement uncertainty.
- A demonstrated ability to manage tasks to completion ensuring that the relevant areas of the business are appropriately informed.
- An ability to identify and manage risk in collaboration with team members.
- Preferred Requirements
- Highly self‑motivated and directed, with keen attention to detail.
- Strong problem‑solving skills, and an ability to understand the level of analysis required.
- Good time management skills able to prioritise and execute tasks in a high‑pressure environment.
Dynamically respond to evolving objectives and emerging opportunities while working in coordination with a multidisciplinary, energetic team of engineers and scientists.
- Good written, oral, and interpersonal communication skills, able to communicate ideas in both technical and user‑friendly language.
- Able to research application issues and products by being outward focussed and able to seek solutions/information from outside of immediate area, including suppliers, universities, customers, related industries.
- Skilled at working within a team‑oriented, collaborative environment or as a sole contributor on identified projects.
- A working knowledge of marine automation systems, including industry standards.
- Keen to develop capability through appropriate training courses and workshops.
- Where required able to train people to improve the capability of the business within a specific area of the business and deliver training material where required.
- Anti-Discrimination Statement
Rolls‑Royce are committed to being a respectful, inclusive, and non‑discriminatory workplace where individuality is valued, diverse perspectives fuel innovation, and everyone can thrive.
- Type of Contract: Permanent
- #J-18808-Ljbffr