Our client specialises in Subsea Technology for Energy, Science & Security.
They're a leading independent global provider of underwater acoustic, inertial, optical and sonar technology . They track, position, control, monitor, detect, recover, image, locate, navigate, avoid, engineer, service and support.
Our client is located in Yateley, they have released some new exciting roles for a Senior Embedded Software Engineer to join the team.
Role Purpose-
The senior embedded software engineer works as the domain expert for one or more feature or function within a product.
They are expected to have a deep knowledge of one or more technical stacks. They will closely partner with other team members and technical leads across engineering to plan, develop, test and deliver software for their products.
The Role and Role Specific Competencies Responsibilities
• Software Development
• Plan, architect, develop and validate new features for their products.
• Document software and update specifications as required.
• Embedded Systems
• Understand the deployment of real-time operating systems for low latency sensing and communication.
• Design, develop, and debug complex embedded systems utilising a broad range of communication protocols and peripherals.
• Hardware in the loop testing, debugging, and validation.
• Innovation
• Identify opportunities for software efficiency improvements through code re-use across a varied range of products and projects.
• Keep up to date on technical changes in their area(s) of technical speciality.
• Collaboration
• Partner closely with other members across the engineering department to enable the fusion of hardware and software to add value to the customer.
• Work with technical leaders to contribute to design and architectural concepts.
• Able to explain complex technical concepts to non-technical team members to enable quick decision making within the business.
• Mentor and share best practices and latest technical developments with fellow team members.
• Help and coach others to form accurate timescale estimates within the team.
• Support for customers as necessary.
Knowledge, Skills and Experience
- C/C++ (Object oriented coding)
- Expert Able to code at expert in their C & C++ targeted at Linux based embedded systems.
- Embedded Systems Expert Experience of developing for and debugging on Linux based embedded devices, including cross-compiling for different hardware architectures, virtualisation and docker concepts.
- Experienced working with Buildroot or Yocto based systems.
- Software best practice Proficient
- Can work in a structured software development environment that includes:
• Architecting & documenting designs.
• Following coding guidelines.
• Developing unit and system tests. Use source control systems and engage in peer code reviews. Communication & Team Working Proficient Proactively communicate and work effectively with other team members, and members of other teams throughout the business to achieve project deliverables.
Qualifications Essential Desirable :
- Degree in Electrical / Electronic Engineering, Physics, Maths, Software Engineering, Computer Science Or relevant 5+ years of proven software engineering job experience and on the job training equivalent to a degree.