> Markdown version of [/jobs/ext/3047036-principal-software-engineer](https://www.wearedevelopers.com/jobs/ext/3047036-principal-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Principal Software Engineer - **Company:** Rolls-Royce - **Location:** Heybridge, UK - **Contract:** Permanent contract - **Skills:** Embedded Software, Software Engineering, Software Requirements Analysis, Systems Architecture, Real Time Systems, Modeling and Simulation - **Published:** September 24, 2026 - **Apply:** https://rollsroyce.wd3.myworkdayjobs.com/professional/job/Heybridge/Principal-Software-Engineer_JR6152072-1 ## About the Role * 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. ## Description 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 the software system. This shall be achieved through decomposition of designs and development of tests and analysis to ensure that the implementation satisfies the requirement 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. ## Related Videos - [Building a hypercar from scratch](https://www.wearedevelopers.com/videos/607-building-a-hypercar-from-scratch) - [For the Cars and the Curious: Android Drift](https://www.wearedevelopers.com/videos/499-for-the-cars-and-the-curious-android-drift) - [The Avengers Initiative (Practical Ethics for Software Engineers)](https://www.wearedevelopers.com/videos/2070-the-avengers-initiative-practical-ethics-for-software-engineers) - [Agile work at CARIAD – Creating a customer web application for controlling the vehicle ](https://www.wearedevelopers.com/videos/200-agile-work-at-cariad-creating-a-customer-web-application-for-controlling-the-vehicle) - [Software defines the vehicle: Why customers and developers will love cars even more](https://www.wearedevelopers.com/videos/1114-software-defines-the-vehicle-why-customers-and-developers-will-love-cars-even-more) - [How to develop an autonomous car end-to-end: Robotic Drive and the mobility revolution](https://www.wearedevelopers.com/videos/22-how-to-develop-an-autonomous-car-end-to-end-robotic-drive-and-the-mobility-revolution) ## Related Articles - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [How software is steering vehicle technology](https://www.wearedevelopers.com/magazine/515-how-software-is-steering-vehicle-technology) - [Data Engineer Salary UK](https://www.wearedevelopers.com/magazine/253-data-engineer-salary-uk) - [The 12 Best Jobs for Software Engineers](https://www.wearedevelopers.com/magazine/401-the-12-best-jobs-for-software-engineers)