New Opening: Software Engineer (Systems)

The Role

This is an exciting opportunity for an ambitious and talented software engineer to join a young and highly innovative company breaking new ground in the area of hormone monitoring for elite sports and healthcare applications. We follow an internal/external development model for our software development covering embedded, front-end and mobile and this role will be one of the first two dedicated software engineers within the company. We are looking for a highly skilled, versatile software engineer who is able work with the required rigour to work within our quality management system and to ensure compliance with ISO 13485:2016.


You will be involved in the optimisation of our existing potentiostat host-side software engine, porting it to a 32-bit embedded platform, communication with our existing measurement hardware at a low-level and exposing an interface to enable a GUI on an integrated display. You will also contribute to the software development of similar systems, connected to our existing hardware either wirelessly or via USB, running on PC/Mac, Android and iOS platforms. This will include the development of test and validation systems.
You will be required to work closely with our in-house engineering team and with our external development team. You will be based in Cambridge but will be required to travel regularly to work with our in-vitro diagnostic development team in Sittingbourne, Kent. Occasional travel may be required to visit clients, deliver projects and represent the company at events.

Responsibilities
• Own the host-side core communications and processing blocks, maintaining it and developing it for future applications and platforms (currently written in Python)
• Contribute to project and product planning for software development ensuring delivery of plans according to schedule
• Document both internal and external software development, from PRD through validation and to post-market surveillance
• Contribute to our in-house systems and processes, particularly software-orientated areas such as build version control and bug tracking
• Interface with internal and external software developers assisting with the more specialist areas of the project, including GUI and user experience development
• Have excellent communication and teamwork skills, with the ability to work well with people from other technical disciplines


Job requirements
Required
• Degree in Computer Science or similarly relevant subject
• Minimum experience of 2 years developing software within a commercial setting
• Experience in successful product development and launch
• Experience of programming in a range of environments and languages, ideally including C/C++, Python, Java.
• Proven experience of developing on embedded 32-bit platforms
• Embedded software design, development, testing and debugging experience
• Willingness to show the flexibility and versatility required to work in a fast-moving start-up environment
• Ability to learn new skills required to work through problems with minimal peer technical support
Desirable
• System-level design
• Embedded OS development and integration
• Bare metal development on small microcontrollers
• Knowledge of wired and wireless communication protocols, including BLE, WiFi, USB, SPI, I2C, UART
• Version control systems
• Development of software for medical applications, including knowledge of relevant standards Language Must be able to speak English in a professional working capacity