Featured Projects
Architecture diagrams and full write-ups: https://cvag.dev/#projects
Redfish Firmware Rollout
Personal project · 2026
Firmware rollout for server BMCs over the standard Redfish API: a fleet poller, a pre-flighted rollout in a canary and gated waves, and a lab of ten emulated OpenBMC GB200 NVL BMCs where the rollout really flashes firmware. It is built on the latest DMTF schemas with no vendor code, reads production ASUS, Dell, HPE, Supermicro and Gigabyte BMCs, and writes only to the lab. Beside them run the services a rollout needs: NetBox as the inventory's source of truth, a SeaweedFS image store that admits only packages whose signatures verify, an nginx HTTPS image cache in front of it that every update takes its image from, by push or pull, PostgreSQL holding a lock per host and every event of every run, and Prometheus, Loki and Grafana, which watch every BMC, keep its own logs and events and follow every rollout live. It is split as production would be: a control plane with the inventory, the store, the rollout state and the monitoring, and a site with its exporter, a Prometheus agent and the image cache, which only connects out.
Source: https://github.com/ChrisVagg/redfish-rollout-tool/
Stack: Redfish API, DMTF JSON Schemas, Python, Bash, Make, OpenBMC, QEMU, Docker Compose, NetBox, SeaweedFS, nginx, PostgreSQL, Prometheus, Loki, Vector, Pushgateway, Grafana, JSON, HTML
Personal Portfolio
Personal project · 2026
A personal portfolio where every section is a Markdown file with front matter, and a single Node.js script turns the folder into a static page: projects, career, technologies and diagrams, with no framework and one dependency. The first version shipped as container images through GitHub Container Registry to a virtual machine behind Caddy; the current version is built and hosted by Cloudflare Pages.
Stack: Markdown, Node.js, JavaScript, HTML5, CSS, Docker, GitHub Actions, GHCR, Caddy, Nginx, Let's Encrypt, Bash, Cloudflare Pages
Coolblock's Software Solution
Coolblock · Synapsecom Telecoms S.A. · 2023 — Present
The whole immersion cooling software solution, end to end — the parent of Coolblock Panel and Coolblock Portal. Every deployed unit runs its own Coolblock Panel, which controls the industrial system on site, and the Coolblock Portal watches and operates the whole fleet from one place.
Coolblock Portal
Coolblock · Synapsecom Telecoms S.A. · 2023 — Present
The fleet platform for the company's production immersion cooling systems: one place to monitor and operate every deployed unit, and a customer portal where each customer reaches only their own systems. Each system in the field runs its own Coolblock Panel, and the Portal reaches all of them across a zero-trust overlay network, while role & relationship-based access control scopes every user to the units assigned to them.
Impact: Operates the whole current-model fleet of 12 deployed systems from one place, with zero downtime since launch
Stack: Traefik, Nginx, Cloudflare, Let's Encrypt, FastAPI, React, TypeScript, Tailwind CSS, REST APIs, Microservices, Keycloak, OAuth 2.0 / OIDC, SSO, Identity Brokering, RBAC, ReBAC, TOTP 2FA, JWT, OpenZiti, Celery, Redis, InfluxDB, PostgreSQL, Grafana, PagerDuty, Docker, Portainer, GitLab CI, CQRS, Circuit Breaker
Coolblock Panel
Coolblock · Synapsecom Telecoms S.A. · 2023 — Present
The on-site software solution for a single industrial system, running on the embedded industrial PC. The same containerised stack ships to every system in the fleet and is provisioned per installation by model and serial number, so one build serves the whole product line while each appliance drives exactly one machine. It is the field half of Coolblock Portal.
Impact: Deployed on 12 systems, every current-model unit
Stack: Profinet, Modbus TCP, PLC, FastAPI, Redfish, OpenAPI, Express, HTML5, CSS, Tailwind CSS, JavaScript, REST APIs, RBAC, ABAC, Celery, Redis, InfluxDB, MySQL, Vector, Loki, Nginx, Traefik, OpenZiti, Embedded PC, Ubuntu, Docker, systemd, GitLab CI, GitHub, Bash, CQRS
Coolblock Telemetry
Coolblock · Synapsecom Telecoms S.A. · 2026 — Present
The telemetry path from the controllers of every immersion cooling unit into a cloud time-series store: a gateway reads the controllers and publishes their readings over MQTT, a broker carries them, and a subscriber transforms the raw payloads and writes them to the database. It picks up where Immersion Cooling IoT leaves off — the controllers that layer configures are the ones read here.
Impact: Monitors 20 systems, legacy and current models alike
Stack: I/O Controllers, IoT Gateway, MQTT, RabbitMQ, Telegraf, Starlark, InfluxDB, Grafana, Docker Compose, GitLab CI, Portainer, Event-Driven Architecture
Immersion Cooling IoT
Coolblock · Synapsecom Telecoms S.A. · 2023 — Present
The IoT and network layer of an immersion cooling unit: the sensors calibrated and configured, the controllers that carry their readings, the fieldbus between controller and PLC, and the LAN everything sits on. It is the layer between the plant designed in Immersion Cooling System R&D and the software of Coolblock Panel — the path a physical reading takes before any application ever sees it.
Stack: I/O Controllers, Industrial Sensors, Sensor Calibration, 4-20mA, 0-10 VDC, Digital I/O, Profinet, Modbus TCP, PLC, MQTT, HTTP, REST APIs, LAN, Industrial WAN, VLANs, NAT & Port Forwarding, VPN, Edge Gateway Router
Parallel Systems Cooling Automation
Coolblock · Synapsecom Telecoms S.A. · 2026 — Present
Automation for one cooling loop feeding several industrial systems in parallel: the pumps that pull water from the buffer, the dry cooler fan that rejects the heat, the logic that decides how hard each has to run, and the path from the plant's own OPC UA address space out to the company's metrics and dashboards. It applies the thermal design of Immersion Cooling System R&D to a multi-system installation, wired and networked the way Immersion Cooling IoT lays out a single one.
Impact: Cools 200 kW combined heat on one loop
Stack: PLC, PID Control, VFD, OPC UA, I/O Controllers, Industrial Sensors, Python, Docker, InfluxDB, Grafana, LAN, Industrial Ethernet, NAT & Port Forwarding
Immersion Cooling System R&D
Coolblock · Synapsecom Telecoms S.A. · 2023 — Present
The process side of the immersion cooling line, where everything serves the PUE target: the heat and flow balance that fixes where the system has to run, the component selection that follows from it, the PLC routines that hold it there, and the instrumentation it is all measured on. It is what Coolblock Panel reads and writes on site.
Impact: All models run at a PUE under 1.2
Data Center Infrastructure Monitoring
Synapsecom Telecoms S.A. · 2023 — Present
Real-time monitoring and control for critical data centre facility systems: every device is polled over its own protocol, normalised into one time-series store, and visualised and alerted on in one place, from Uniflair precision cooling to VESDA fire detection.
Impact: Monitors 2 data centres
Stack: Modbus TCP/IP, PROFINET, MQTT, SNMP, Node-RED, REST APIs, InfluxDB, Grafana, Docker Compose, Portainer, GitLab CI
Tenant Power & Energy Monitoring Platform
Synapsecom Telecoms S.A. · 2023 — Present
An end-to-end platform for collecting, storing and billing electrical consumption per data centre tenant. Racks fitted with a power distribution unit are polled over SNMP; racks without one are metered directly by current transformers measuring each phase. A scheduled Python job reads both, so every rack is accounted for regardless of how it is instrumented.
Nautobot is the source of truth for tenants, racks and infrastructure ownership. The collection logic lives in GitLab and is synchronised with Nautobot, so the job is scheduled, its changes are reviewable and its reports are structured. Measurements are written to InfluxDB and presented through Grafana.
Impact: Serves 60 tenants across 100+ racks, billed automatically every month
Stack: Nautobot, Python, Modbus TCP/IP, SNMP, REST APIs, Current Transformers, Energy Meters, PDU, InfluxDB, Grafana, Docker, GitLab
Redfish Server Telemetry
Synapsecom Telecoms S.A. · 2023 — Present
Health, thermal and power telemetry for the cluster servers running inside the immersion cooling system, read out of band across Supermicro, ASUS, Gigabyte and Dell hardware. Each server's baseboard management controller is polled over the Redfish API, so readings come from the hardware itself and keep arriving whether the OS is up or down.
Impact: Monitors 5 clusters running the company's VPS service
Stack: Redfish, Python, REST APIs, InfluxDB, Grafana, Docker, GitLab
Signal Analysis for Parkinson's Disease Symptoms
PD Neurotechnology · 2021
Symptom scoring for Parkinson's disease, built on signal analysis. A custom wearable records the patient's movement during guided tests and daily life, an Android app receives the recording, and the algorithm inside it turns raw motion into a score per symptom that is pushed to the cloud platform.
Impact: Used with over 100 patients
Stack: MATLAB, NumPy, SciPy, Fourier Analysis, OpenCV, scikit-learn, C, Python, Java
Blockchain Health Records Platform
University of Patras · Diploma thesis · 2021 — 2022
A health monitoring and management platform where patients own their vital signs and grant or revoke a doctor's access on-chain. Conceived during the COVID-19 pandemic, it pairs a custom sensor board with two Android clients and an Ethereum contract that holds the authorisation logic.
Stack: Ethereum, Solidity, Smart Contracts, Web3j, Web3.js, IPFS, MongoDB, Firebase, Android, Java, Arduino, C, Bluetooth
Technologies
Languages: Python, JavaScript, TypeScript, Java, C, Bash, Solidity, MATLAB
Frontend: React, Tailwind CSS, HTML5, CSS, Android
Architecture: Microservices, Distributed Systems, Event-Driven Architecture, CQRS, Circuit Breaker
Backend & APIs: FastAPI, Node.js, Express, REST APIs, OpenAPI, Redfish API, GraphQL, gRPC, WebSockets
Security & Identity: Keycloak, OAuth 2.0 / OIDC, SSO, Identity Brokering, RBAC, ReBAC, ABAC, TOTP 2FA, JWT, OpenFGA, OpenZiti ZTNA
Caching, Messaging & Data Processing: Redis, Dragonfly, RabbitMQ, Apache Kafka, Apache Spark, MQTT, Node Red, Celery
Databases: PostgreSQL, MySQL, InfluxDB, MongoDB, Firebase, Apache Cassandra
Monitoring & Observability: Grafana, Prometheus, Telegraf, Loki, Vector, Nautobot, NetBox, Observium, Zabbix, Uptime Kuma, ELK Stack
Operations & Platforms: Docker, Proxmox, Portainer, GitLab CI, Github, Traefik, Caddy, Nginx, Cloudflare, HAProxy
Infrastructure as Code: Ansible
Orchestrators: Docker Swarm
Industrial & IoT: Profinet, Profibus, Modbus TCP, Modbus RTU, SNMP, PLC, PID Control, OPC UA, VFD, I/O Controllers, Industrial Sensors, Embedded PC, Microcontrollers