- Developed a distributed Python data pipeline on Azure (Storage, SQL and Machine Learning) to ingest and process images for a press brake safety-system fault-diagnostic model.
- Implemented C++ firmware to provide Bluetooth connectivity to 1 central and 5 peripheral devices for a loading bay safety product.
- Captured and analysed requirements for three projects: a tender-submission automation tool, a customer-facing AI agent and a fault-diagnostic system.
- Led the software development process within the software team by running requirements gathering, design reviews, and performing code reviews.
- Designed the architecture and oversaw the development of the embedded software for an air quality monitor.
- Delivered in-person workshops to five operating companies about software development best practice and responsible use of AI tools.
- Led a three-person software team that improved Smartstor reliability, reducing customer support tickets from 70 to 5 per week.
- Redesigned the Smartstor Python application from a monolithic architecture into microservices with clearly defined APIs and separation of responsibilities.
- Integrated third-party APIs to retrieve energy pricing and weather forecast data used to generate the battery charging schedule.
- Designed and implemented interfaces for MySQL customer-account database and NoSQL (InfluxDB) to store, retrieve and aggregate energy-consumption, pricing and forecasting data.
- Built a test suite for Smartstor with over 600 test cases using pytest that enabled fast and smooth software development iterations.
- Automated test execution, code linting, formatting and staged deployment to AWS EC2 through GitLab CI/CD pipelines.
- Defined and enforced Python coding standards and code-review practices, and automated technical documentation using Sphinx.
- Delivered embedded and connected systems for medical, telecommunications and consumer applications, including a smart implant, connected inhaler, kidney diagnostic platform, wireless communication system and COVID-19 emergency ventilator.
- Developed embedded software in C for ARM Cortex-M microcontrollers from STMicroelectronics, Nordic Semiconductor and NXP.
- Designed software architecture and chose patterns based on the requirements, justifying and documenting the trade-offs made.
- Extended a Python test framework with hardware-in-the-loop with hundreds of test cases to perform integration testing of the new features of the wireless telecommunication system, specifically the Baseband Unit and Remote Radio Head subsystem.
- Investigated software and hardware defects, performing debugging and root-cause analysis across the projects.
- Used SysML modelling language to produce technical documentation with clear diagrams to accompany the software in the handover to the client.
