Experience

Professional experience and career history

Roles

Principal Software Engineer
Terminal Industries logoTerminal IndustriesBelfast, UKMay 2024 - Present (1 year, 8 months)

I am building real-time computer vision products for detecting identifiers in complex real-world scenarios across multiple video streams and images. I develop web services, ML pipelines and infrastructure as code, implementing comprehensive observability with Grafana Cloud (Prometheus, Tempo, Loki). I have built benchmarking tools with data version control, document analysis solutions leveraging LLMs, and internal tools in TypeScript and React. I contribute to API servers in Go and have project managed teams, driving planning and development practices.

PythonTerraformGrafanaPrometheusDVCGoogle GeminiTypeScriptGitHub ActionsNVIDIAGo+4 more
Machine Learning Lead
Bestomer logoBestomerRemote, UKMay 2023 - Feb 2024 (10 months)

I led our ML strategy in this pre-product-market-fit, seed-stage start-up. I built ML pipelines for training and evaluating models, experimented with 3rd party services to evaluate "build vs buy", and built PoCs to discover our desired UX. I built web services in both Python and TypeScript and contributed to iOS development. I built CI/CD pipelines and infrastructure as code.

TypeScriptNode.jsFastifyPrismaPostgreSQLWeaviatePythonFastAPIPulumiAWS+7 more
Customer Innovation Engineer II
Confluent logoConfluentBelfast, UKApr 2022 - May 2023 (1 year, 2 months)

I designed, architected and engineered machine learning driven data streaming solutions, wearing multiple hats as software engineer, product owner, project manager and technical consultant.

Apache KafkaKotlinPythonGoogle BigQueryspaCySemaphore CIDVC
Senior Machine Learning Engineer
Sonrai Analytics logoSonrai AnalyticsBelfast, UKMar 2020 - Apr 2022 (2 years, 2 months)

As Sonrai's ninth employee, I was central to establishing its engineering practices. I acted as the technical lead for our Data Science team, making many of our foundational architectural decisions and training our team of junior engineers. I developed computer vision models for semantic segmentation, multiple instance learning and object localisation. I engineered full machine learning pipelines, managing the scope of algorithms, data sampling, modelling, versioning and iteration.

PythonPyTorchFastAPIPlotlyLeafletDockerAWSBitbucketDVCGeoPandas
Graduate Software Engineer → Software Engineer → Senior Software Engineer
Philips logoPhilipsBelfast, UKJul 2017 - Mar 2020 (2 years, 9 months)

I led our development of production-grade computer vision solutions, including algorithm conception, data collection and engineering, deep learning model development, developing a scalable runtime environment and integration with web applications.

PythonOpenCVKerasDockerJenkinsRabbitMQAnsible
Research Assistant / Software Engineer Summer Intern
Ulster University logoUlster UniversityBelfast, UKJul 2016 - Sep 2016 (3 months)

I worked on the SPAAACE project (Self-Properties Autonomic / Apoptotic / Autonomous Computing Environment), using Arduinos to create a prototype of Cubesats implementing university research on self-managing systems.

ArduinoC++
Software Development Intern
Microsoft logoMicrosoftLondon, UKJul 2015 - Jun 2016 (1 year)

I primarily designed, developed and tested C# code which improved auto-suggest across all platforms. I optimised large portions of the stack, carried out in-depth big data analysis on logs, and developed interactive dashboards.

C#.NETT-SQL
Software Development Intern
Infosys logoInfosysPune, IndiaJun 2014 - Sep 2014 (4 months)

I developed a system which took the results of NLP analysis of web-pages, and generated a graph database to hold semantically related information to the web-page contents.

JavaStanford NLPNeo4j