Scientific Programmer Job Description

Do you want to be at the heart of a high-growth, well-funded, digital health company, that is revolutionising the way that clinicians gain early insight into their patients’ conditions?

Xim’s Lifelight technology extracts clinical vital signs (pulse, blood oxygen, blood pressure, respiration rate) from simple video feeds (from standard webcams).

The system is based on the combining the established state of the art from machine vision (specifically Remote Photoplethysmography), signal processing, and machine learning.  It has been trialled at a number of the UK’s largest teaching hospitals with the result that xim now possesses possibly the largest dataset of its type (one million heartbeats) for supporting machine learning.  Xim is currently in the process of securing CE marking for Lifelight as a Class IIa medical device.

At the heart of the intellectual part of the company is our signal processing algorithms.  These are used to derive the vital signs either directly or through the correct derivation of signal ‘features’ which are then used as inputs into our machine learning capability.

Following the securing of significant funding, Xim is now looking to further enhance and refine the algorithms at the heart of the system that deduce clear vital signs from a complex video signal.

To help us we are looking for scientific programmers who can rapidly turn signal processing and machine vision improvements into working code helping us rapidly explore and develop emerging signal processing concepts and capabilities.

About the job

The algorithms that underpin Xim’s products are constantly being refined as a result of clinical findings, scientific advances as described in the literature, and machine learning insights.

We are looking for a scientific programmer who can work with the current team to jointly identify and then rapidly implement these algorithm enhancements initially experimentally (to ascertain the effectiveness of an algorithm change) and then to a clinically regulated production environment.

Xim uses Python for its algorithmic development and for the final implementation of the code in the medical device.

Reporting to the CTO, the role of this job is to:

    • Support the data science team with high quality, rapidly deployed, modifications to the Python implementation of our current data processing pipeline.
    • Fully understand and take ‘ownership’ of the current Python code and the algorithms that it implements.
    • Use established scientific Python libraries to implement state of the art signal processing techniques.
    • Join discussions with domain experts, working together to identify improvements to the algorithms in terms of speed and accuracy.
    • Working with the CTO and external suppliers, enhance underlying architecture of the implementation of the Xim algorithms so as to improve maintainability, robustness, reliability and speed.
    • In association with the current data science team, establish technical environments to facilitate and gain insights from machine learning ‘experiments’ on Xim’s accumulated datasets.
    • Document work in according the Xim Quality Management System.
    • Working with the existing data science team to develop an expert knowledge of the state of the art as it concerns the implementation of algorithms around remote photoplesythmography, machine vision, clinical signal processing and machine learning.


We are looking for someone who can show aptitude in:


  • Advanced (preferably scientific) Python programming
  • A relevant degree to BSc or MSc level (or above) in a relevant subject (eg Maths, Computer Science, Physics, Engineering)


  • Signal processing techniques in Python
  • Creation and management of development environments covering: source control, unit testing, release processes

Possibly more important than this however is to find someone with the right ‘attitude’ and ability to learn quickly.

We would like someone who can show that they:

    • Are intelligent, enthusiastic and a quick learner
    • Can rapidly grasp complex scientific and mathematical concepts in outline and in detail
    • Can implement complex mathematical requirements in code that is maintainable, robust, reliable and of the integrity required in a clinical device
    • Are able to work in a very fast moving dynamic ‘flat’ environment as a vital and reliable member of the team

What we offer

Why join us:

  • Create products that are at the leading edge of computer and clinical science
  • Work alongside people from different backgrounds who are global experts in their field
  • Flexible working
  • A competitive salary
  • An opportunity to learn and grow in expertise in novel computing techniques
  • An opportunity to be a key part of a very fast growing, ‘disruptive’ company with the potential to truly revolutionise the delivery of many aspects of clinical care
  • An opportunity to be one of the earliest technical team members in a rapidly growing company that has been identified as a key clinical innovation over the coming decade by the NHS and UK Government.

Xim is a firm proponent of diversity: we are committed to celebrating and respecting diversity, equity and inclusion in its workforce.


Xim is based in the Southampton Science Park, near Southampton. The work will require some days each week onsite (at least initially) but could move to primarily remote / home working if appropriate.


If you would like to apply for this role, please send your CV to: