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