Chris Bird Full Stack Developer

About Me Projects CV

About Me

Polyglot Programmer, Web Developer - "Jack of all trades, master of some"!

Since 2002, I have been working at the Clinical Trial Service Unit, part of the Nuffield Department of Public Health at the University of Oxford. My role as an Analyst/Programmer has exposed me to a broad range of technologies - while the bulk of my work has been in C++, I have also used PHP, Java, Python, HTML5 and CSS.

Here is a selection of my work - find my full CV here.

Programming

C++, Python, JavaScript, jQuery, Node.js, PHP, Java

Design

HTML, CSS/SASS, Bootstrap, SVG, GIMP, Inkscape

Systems

Linux, Apache, Heroku

Tools

Git, Yeoman, vi/vim, Sublime Text, Gulp, SSH and VS Code

Featured Projects

SMS System
CTSU SMS System
C++, Linux, Ingres/SQL

The SMS System was one of my first projects at CTSU. Created to send SMS text messages for patient appointment reminders, it is available to any team within the NDPH, subject to approval. To date, it has sent over 2 million messages, mainly for the UK Biobank project, and HPS2/THRIVE. It was written in C, and uses an Ingres database.

SMS System

In 2017, I performed a major overhaul of the system, re-writing it in C++11, providing an HTTPS API for users, creating a Node.js test harness, and improving throughput massively such that sending several thousand messages takes a couple of minutes instead of over an hour. The new HTTPS interface for users means it is easier to provide to the wider NDPH department, in anticipation of increased uptake by users.

Retrieval Assistant
Storeman: Retrieval Assistant
C++, RAD Studio, Ingres/SQL

The Retrieval Assistant is a part of the Storeman application to support laboratory processes connected to the LIMS system in the Wolfson Laboratories at the Clinical Trial Service Unit. It enables the laboratory manager to create a "Retrieval Plan" of blood samples that are required from cryogenic storage for analysis, then logs the retrieval of those samples by scanning their barcodes and providing an interface with which to log any problems, for instance broken vials. A laptop running the program is taken onsite to the storage facility, used to retrieve the samples, and the data gathered is synced to the main database when a connection is available.

Matrix
Cognitive Tests
JavaScript, jQuery, Node/Yeoman/Gulp, CSS/SASS, Bootstrap, Responsive Web Design

I have created a number of online cognitive tests, originally for the UK Biobank project, but which will now be licensed to research groups across the world. Designed by a psychologist with the aim of measuring problem-solving skills and reaction times to try to correlate with various factors including mental illness, they are designed to work on any web-enabled device and use responsive design techniques. They capture split-second timing data which is delivered back to the server as a JSON payload.

Try them here (click on "Start" next to Matrix, Hoops or Trails to start - the backend is not connected and no data is collected in this instance)

Hoops
Trails
Retrieval Assistant
Teachplus
Python/Django, Project Management

Teachplus by Education Information Solutions is an app to help teachers monitor their pupil's progress with the curriculum. I started this project in Django, sourced contractors to continue the project, and have been managing the project since. We hope to go to MVP soon.

The STIG
The STIG - STeering File Information generator
PHP, Python, Perl, Bash, Ingres/SQL

A web application to provide information for researchers in the Early Breast Cancer Trialists' Collaborative Group (EBCTCG) about "Steering Files" (a type of text file used to create Forest plots) associated with the meta-analysis of breast cancer trials. This was a proof-of-concept application that I made in my spare time, which then became a vital tool for the professors investigating meta-analyses.

The DS1000
The DS1000
C/C++, Embedded C, Radio and telecomms

I worked on software maintentance of the market-leading Integrated Communication and Control System (ICCS) by Securicor Information Systems, the DS1000, for two years. The system is used by the majority of Emergency Services in the UK, including Met Police, Greater Manchester Police, West Midlands, Strathclyde, Avon and Somerset, and many other large police, fire and ambulance services. When I started, there was a huge backlog of bugs to fix and I and two other colleagues were on permanent overtime for many months in order to clear it. After several months, we had cleared the backlog to a manageable size and I was then solely responsible for software maintenance. Our customers and our radio engineers were certainly a lot happier then!

Many more to come (this site is under construction)...