We are looking for a Senior Embedded Engineer to join our team.
You will be creating and developing embedded software for the most advanced distributed spectral monitoring systems, with modern C++17 (ISO/IEC 14882:2017) in user space on a Linux operating system. 
This is a great opportunity to take significant responsibility in a fast paced and successful company, working alongside a talented group of like-minded Engineers on a range of fascinating applications.
Duties and responsibilities
Responsible for the creation and development of software, including but not limited to:
- All aspects of the full software development life cycle, including requirements analysis, design, development, testing, documentation and training.
 
- Programming to deliver robust, clean, high quality software.
 
- Creation of functional designs and specifications.
 
- Rigorous approach to testing, including writing scripts for test automation.
 
- Reviewing code written by other programmers and providing constructive feedback to ensure it aligns with the required quality standards.
 
Experience and Qualifications Required
- Strong modern C++17 (ISO/IEC 14882:2017) programming skills in a Linux environment.
 
- Experience developing and optimizing complex software systems.
 
- Excellent analytical and problem-solving ability.
 
- Attention to detail and a passion for producing high quality software with clean code.
 
- Must demonstrate clear ownership, but not at the expense of teamwork.
 
- Excellent communication skills.
 
Highly Desirable
- Demonstrable experience in:
- Rust or an interest in adopting this language
 
- Signal processing
 
 
Desirable
- A science or engineering degree in Computer Science, Electronics or similar.
 
- Demonstrable experience in:
- Design and implementation of kernel technologies and drivers
 
- Python
 
- Docker
 
- Git
 
- Linux shell scripting
 
- Distributed / networked systems