Lead Software Engineer
Role details
Job location
Tech stack
Job description
You will play a key role in designing and delivering advanced software solutions for underwater robotic systems. This position focuses on developing innovative, high-quality software aligned with business and project requirements. As a Software Lead, you will take ownership of project delivery while leading multidisciplinary engineering teams to develop technically complex solutions for subsea vehicles and associated robotic systems., * Lead the delivery of complex software projects for underwater robotic systems
- Develop and define software architectures for large-scale, integrated systems
- Translate high-level system requirements into detailed technical specifications
- Maintain a system-level perspective while overseeing detailed implementation
- Act as a technical authority and primary point of contact for stakeholders and customers
- Communicate complex technical concepts to both technical and non-technical audiences
- Plan, estimate, and manage work packages, resources, and budgets
- Ensure adherence to software quality standards and industry best practices
- Implement and improve development processes and methodologies
- Mentor and support the development of junior engineers
- Manage workload distribution across teams to ensure efficiency and balance
Requirements
- Minimum 7 years' experience in a senior software engineering role
- Degree in a relevant engineering or technical discipline
- Strong understanding of software systems across Embedded and application layers
- Proven experience leading multidisciplinary software teams
- Experience designing software architecture for complex systems
- Solid understanding of modern software development methodologies
- Experience with safety-critical systems and design principles
- Ability to engage directly with customers and stakeholders
- Strong estimation, planning, and organisational skills
- Practical knowledge of software standards and compliance
- Awareness of cybersecurity principles and their impact on system design
Technical Expertise
Experience with a selection of the following technologies (across Windows and Linux environments):
- C++, Python, JavaScript
- XML, JSON, HTML, CSS
- Web frameworks and Back End technologies (eg Angular, Django, Node.js, React, Apache)
- WebSockets and Real Time data systems
- Docker and containerisation
- Networking protocols (TCP/IP, UDP)
- SQL and database technologies
- Debugging and diagnostic tools (eg Wireshark, system logs)
- Cybersecurity principles