DriversWork ExperiencePersonal projectsTimelinePublicationsThis site

Work experience

Living Optics, Oxford, UK: Full Stack Software Engineer; 2023.05-present

Living Optics is an Oxford University spinout developing hyperspectral cameras for advanced computer vision applications.

  • Sole engineering contributor to the camera control platform, taking it from concept through to delivery. Worked directly with application scientists to understand user workflows, gather requirements and shape product functionality. Independently designed and built the full stack application using React, TypeScript and FastAPI, integrating WebRTC video streaming, WebSocket communications and REST APIs for real-time camera control and data analysis.
  • Designed and implemented an extensible framework for user developed analysis routines, allowing users to write and execute custom code against live camera data without modifying the underlying application.
  • Primary engineering contributor to a desktop analysis application for data curation, playback, annotation and analysis. Built using React and Electron, with a local Python backend and database, supporting traditional image processing and machine learning workflows for training, testing and deploying models for live inference.
  • Contributed to the C API for the USB version of the Living Optics camera, designing and implementing Python bindings using pybind11.
  • Independently developed a raylib based C application for prototype camera hardware.
Living Optics camera landing page before the video has loaded
Living Optics camera page with live code editing for analysis routines
Living Optics camera page with livestreaming video
Living Optics web based camera software: Screenshots of the Living Optics camera receiving video data via webrtc.

ONI (Oxford Nanoimaging) Oxford, UK: Software Engineer; 2018.05-2023.05

ONI is a microscopy startup developing accessible super resolution microscopy technology.

  • Founding engineering contributor to CODI, a web based platform for visualising and analysing super resolution microscopy data. Joined an initial four person engineering team and helped design and build the product from the ground up, working across the full stack.
  • Designed and implemented a Three.js based point cloud viewer capable of interactively rendering millions of 2D and 3D data points. Developed a tiled rendering architecture inspired by Google Maps, alongside custom shaders and precomputation techniques for performant visualisation and real-time clustering.
  • Designed and implemented flexible image analysis pipelines, leading the transition from hard coded workflows to composable analysis tools that gave users greater flexibility in building their own analytical workflows.
  • Built and maintained the Django backend, PostgreSQL database and Celery based task processing infrastructure supporting asynchronous scientific data analysis.
Example of coloring on CODI
Example of clustering on CODI
CODI point cloud viewer: Left, a drift correction rendering of a point cloud of tubulin which is a protein required for cell division. Right, a point cloud which has been clustered within this region. The clustering can be modified in real-time thanks to some clever precomputations.

University of Oxford, Centre for Statistics in Medicine (CMS): Trial Statistician; 2014.06-2018.05

Supported the design and statistical analysis of medical clinical trials, specialising in rare bone cancers where conventional trial designs are often impractical due to limited patient populations.

  • Developed novel Bayesian trial designs for two bone cancer clinical trials, applying advanced statistical methodologies to improve the efficiency of trials evaluating the safety and efficacy of new treatments.
  • Authored and published an R package for Bayesian sample size determination in single arm, multi stage phase II trials, using an object oriented design to support flexible specification and optimisation of trial designs.
  • Built interactive applications using R Shiny, React, JavaScript and D3.js to visualise trial designs and explore clinical trial safety data.
  • Developed fully documented R packages for colleagues to aid in generating reproducible statistical analyses.
  • Published statistical research and clinical trial methodology in peer reviewed academic journals. Details here

Cardiff University, Wales Cancer Trials Unit: Trial Statistician; 2012.10-2014.06

Supported the statistical design, monitoring and analysis of cancer clinical trials, working with clinicians and researchers to evaluate the safety and efficacy of new treatments.

  • Developed STATA programs to automate the generation of statistical reports for clinical trial safety monitoring and final analysis, improving the consistency and reliability of reporting workflows.
  • Provided statistical advice to clinicians at partner hospitals, supporting clinical trial design and the interpretation of trial results.