Led the embedded software development and initial product launch of a benchtop automated liquid handling system using C++ and Python, with embedded Lua scripting, for system control and Node.js (TypeScript) for integrated system configuration.
Uses a custom Linux image built using Yocto based on Debian 10.
Led the front and backend development of a new product initiative for a client entering the IoT space using AWS infrastructure as code, Firebase Cloud Messaging, and React Native to provide a view of live data, settings configuration, device onboarding, and alarm push notifications.
Included automated testing using Jest, Detox, and AWS client mock as part of a CI/CD process with AWS Code Build to S3 and MS App Center to allow for a tight client feedback loop.
Returning developer, and previous lead, of a PHP, React (TypeScript), Python, project that measures, processes, and visualises; noise, vibration, dust, and meteorological data.
Led the on-time delivery and successful release of three major updates to the live web application allowing the client to integrate new monitoring instruments and expand their business in to Europe.
Makes use of a number of automation technologies including Ansible and AWX, Bitbucket CI Pipelines, AWS ECR.
Led the onboarding and development of a lighting control system, in C, using PIC microcontrollers, to provide extended output capabilities and a low-level communication protocol for lighting and associated data.
Protocol designed to work over existing power cabling in locations, over long distances, to allow for easy retrofit installations.
Currently being used on cruise ships and event locations in Holland.
Designed and implemented a standalone, external, data logging system for aircrafts with onboard buffering and unidirectional synchronisation to remote server over 3G/4G and prototyped use of Iridium Satellite on an iMX7 IoT SBC.
Led the adoption of Agile practices using Jira across all projects, and have directly acted as Product Manager on a number of projects directly working with clients to determine requirements and break them down in to User Stories.
Interviewed new team members and represented the company at various business and recruitment fairs.