Projects

A list of some of the projects I have contributed to, sorted from newest to oldest.

Names and descriptions are kept purposefully vague to protect confidentiality.

Data ingestion and processing pipeline

2023 - Present
Java (Spring)
Kafka
HiveMQ
Clickhouse
SQL databases
JUnit
Cypress
Maven
Docker
Kubernetes
Helm
Atlassian Bamboo
GitHub Actions
ArgoCD
Datadog
AWS

Set of services ingesting raw machine data with several different protocols (MQTT, FTP, SFTP, HTTP...) and formats, standardising and storing it in a database for further retrieval. The pipeline leverages Kafka to pipe the data to a Clickhouse instance.

I have modernised and optimised several components in this pipeline, reducing maintenance workload significantly.

Developed, maintained and operated as part of a team in a Large-scale scrum department.

Edge data collection

2023 - Present
Java (Spring)
Go
RabbitMQ
HiveMQ
Clickhouse
SQL databases
JUnit
Cypress
Robot
Maven
Docker
Kubernetes
Helm
Skaffold
GitHub Actions
FluxCD
Datadog
AWS

Edge platform installed close to a set of machines in order to aggregate data on their operation and send it to the cloud for storage and analysis. It also allows running workloads on the data and providing other services locally. Requires security certifications and offline reliability, as connection to the cloud is not available all the time.

Developed, maintained and operated as part of a team in a Large-scale scrum department.

Machine reliability web application

2022 - Present
Java (Spring)
TypeScript (React)
SQL databases
JUnit
Jest
Enzyme
React Testing Library
Cypress
Maven
Docker
Kubernetes
Atlassian Bamboo
ArgoCD
Datadog
AWS

Web application to analyse data gathered from thousands of machines in order to ensure that said equipment can run reliably and without unplanned stops or maintenance. Used by hundreds of users and composed of microservices running on Kubernetes.

Developed, maintained and operated as part of a team in a Large-scale scrum department.

Production line process visualisation

2021
TypeScript

Lightweight add-on to a product designed to simulate running sheet metal through several machines connected by conveyors. The add-on showed the timings for each sheet through the machines and suggested possible optimisations to minimise time taken and possible errors.

Written in TypeScript without any runtime dependencies.

Developed by a team of three, with myself as the developer, a UI/UX designer, and a member of the overall product's team providing specifications and interface information.

Warehouse automation

2020 - 2021
Java (Undertow, jOOQ)
TypeScript (React)
SQL databases (MariaDB)
JUnit
Docker
Kubernetes

Automated service integrating with the customer's ERP's database, modbus-controlled PLCs, and Automated Guided Vehicles to transfer and transform perishable products in a warehouse. Includes interaction with heating, cooling, wrapping and storage units, and determines which destination a product has to go to based on its type. Operators can monitor the state and configure stock processing rules through tablets.

Customer communication was handled mostly by the PM as there was a language barrier.