Senior DSP/Control Software Engineer (Medical Devices) – 1006


We are looking for talented engineers with experience in designing and implementing real-time control software and/or extracting information from biomedical signals using DSP techniques to help us designing complex Medical Devices in the areas of Surgery, Drug Delivery, In-Vitro Diagnostics and Digital Health.

  • Are you an expert in digital signal processing and control systems design?
  • Do you have a passion for mathematics applied to the real world?
  • Can you see the bigger picture as well as keeping an eye on the finer details?
  • Do you want to be challenged?

We are looking for a talented embedded software engineers with experience in designing and implementing control algorithms or extracting information from biomedical signals using DSP techniques. This is a role that requires both a sound theoretical knowledge and implementation skills. You will join our growing medical software group working on a variety of novel medical devices and contribute to the whole development lifecycle from concept to validation

Cambridge Consultants Medical Technology Division develops cutting edge medical devices using rigorous processes whilst maintaining an informal and friendly environment. It is a great place to work, encouraging innovation and filled with people with a real passion for excellence in engineering.

 

Main Role

To specify, design, develop and test digital filters, control algorithms and control software for surgical, drug delivery and digital health applications.

Many of the systems you will be working on will include electronics, optics, fluidics, robotics and UI components thus requiring, on top of your software development skills, an all-round engineering knowledge, attention to detail and good team work.

Each project is different and you will get involved at all stages of the product development lifecycle.

As a senior, we would expect you to be involved in multiple projects simultaneously, taking responsibility for the delivery of the assigned task.

 

Type of Work

The Medical Software Group is part of the Medical Technology Division which undertakes the development of innovative Medical Devices and In-Vitro Diagnostics equipment from concept to manufacture, often incorporating considerable technical challenges.

The division’s activities fall into four focus areas:

Our projects are often multidisciplinary, where software is just one part of larger system and you will work side by side with other talents, such as human factors engineers, optical physicist, electronics and mechanical engineers.

Software development for medical devices follows a rigorous approach guided by standards such as IEC 62304 and streamlined by the use of a suite of Software Engineering tools and techniques such as continuous integration, static code analysis, test automation and code generation.

 

Responsibilities

Your responsibilities will include:

  • Providing technical leadership in your area of expertise
  • Working within a multidisciplinary team to develop software specifications and test protocols
  • Deliver high-quality code, according to specifications
  • Deliver high-quality design documentation according to medical regulations
  • Perform tests, code reviews, and other quality assurance tasks
  • Fast prototyping in support of proof of principle activities
  • Carrying out your specific project tasks within the timescales and budgets agreed with the project manager.

There are many other aspects to the work in addition to design and development, including the participation in work estimation, the presentation of results to clients or the participation in concept-generation sessions.

As your experience develops you will be given the opportunity to take on further responsibilities such as project team leadership or project management.

You will be expected to work on multiple projects at once and the role may include some travel.

 

Requirements

To meet the requirements of this role, in addition to an excellent degree in a relevant subject such as software engineering, computer science, electronic engineering, biomedical engineering or applied mathematics you will have the following core skills:

  • Excellent knowledge of digital signal processing or control theory
  • Experience in modelling of dynamic systems, designing control algorithms and digital filters using MATLAB or other equivalent simulation tools
  • Sound experience in the implementation of digital filters, closed loop control systems, or  other numerical algorithms in C on embedded processors on bare metal or with the use of RTOS
  • An understanding of development techniques such as hardware-in-the-loop or software-in-the-loop
  • An understanding of the software development life cycle and related tools and practices such as continuous integration and  test driven development
  • Good communication and presentation skills
  • This role requires both a sound theoretical knowledge and implementation skills.

 

In addition, any experience of the following would be advantageous:

  • Processing of biomedical signals
  • Closed loop control of DC motors, stepper motors or brushless dc motors using a variety of control techniques
  • Experience with tools such as dSpace, MATLAB, Simulink or similar
  • Software development in a regulated industry (such as medical, nuclear or defence) or the automotive industry
  • Experience in programming under Windows, Linux, Android or iOS
  • Knowledge or experience in robotics, electronics and interfacing with hardware
  • Knowledge of information theory or probability theory
  • Knowledge of software and system modelling using UML or SysML