Software Engineer Purpose of the Role A fantastic opportunity for a Software Engineer to join a dynamic organisation, contributing to the development of innovative software systems for above-water and underwater solutions, products, and systems. This role involves applying a structured software engineering approach to tasks across the software development lifecycle. Location: Dorset Employment Type: Permanent, full-time (37 hours per week) Key Responsibilities Support or lead the development of software systems. Act as software lead at system and/or subsystem level where required. Apply knowledge of software engineering principles to design, develop, and integrate solutions. Solve complex problems and critically review methods to ensure quality outcomes. Produce clear technical reports and communicate effectively with technical and non-technical stakeholders.Knowledge, Skills, and Experience Required Proven ability to support or lead software development projects. Educated to degree level (or equivalent) in software engineering or a related discipline. Comprehensive understanding of software engineering principles. Familiarity with Open Systems Architectures and Principles. Experience with software engineering lifecycle processes and tools. Ability to expand knowledge into new domains and see the bigger picture. Excellent verbal and written communication skills, including technical report writing and presentations.Desirable Skills and Domain Knowledge Experience in one or more of the following areas: Maritime Combat Systems and software integration. Command and Control Systems. Network design, implementation, and management. Acoustics/Sonar or RF communications. Autonomy, AI, and Machine Learning. Data management and engagement modelling. Software safety standards (e.g., DEF STAN 00-56 & IEC 61508).Preferred Software/System Skills Java, JavaFX, NetBeans. C++, Visual Studio. Requirements management (e.g., DOORS). UML/System design (e.g., Enterprise Architect). Unit testing frameworks (JUnit, CppUnit). HMI design and development. Atlassian Toolset, databases, and network protocols. Standards such as ISO 9001 and TickITplus.Additional Desirable Skills Python, Fortran, Matlab, LabVIEW, SQL, or web technologies (HTML, JavaScript). Usability testing and agile software development methodologies. IT skills including protocols, switch configuration, hardware configuration, and virtualisation.Behavioural Requirements Strong team player who can work independently when needed. Excellent attention to detail and ability to understand the broader context. Proactive and motivated with a genuine interest in problem-solving and developing robust solutions. Able to multi-task and manage a varied workload effectively.How to Apply Interested candidates should submit their CV and a covering letter detailing their suitability for the role. Any questions then please contact (url removed)