Fig. 01Ethos Smart Attendance Terminal
ETH-AT01
Look at the camera — you're marked in.
- walk-up to punch
- < 1 s
- servers to install
- 0
- on-device face vector
- 128-D
- React 18
- face-api.js · TensorFlow.js
- Node.js · Express
- SQLite
- +2
Full-stack engineer with two-plus years shipping systems that span firmware, real-time sync and web platforms — from a face-recognition attendance terminal that works with no network, to the endpoint-monitoring platform running on 650+ machines, to the HRMS that turns a punch into a payslip.
Years shipping production systems
Products built, firmware to web
Endpoints on AssureIT Remote, a partner platform
Organisations running that platform
I work across the full depth of a product — from the sensor and the firmware up to the browser tab someone opens to check on it. Most of my recent work is an HRMS platform that starts at a physical punch terminal and ends at a payslip, with everything in between: offline-first sync, dashboards, payroll logic, and the industrial IoT monitoring that runs alongside it.
I like the parts of a build most developers hand off: deciding how a device should behave with no network, designing the schema a six-module HRMS has to share, or picking the protocol that keeps a machine's sensor data flowing. Then I build the interface on top of it.
Perspective
Casual over chat, first to volunteer for the messiest bug, happiest with three tabs open — code, logs and coffee. I'll explain a weird protocol quirk in two lines instead of writing a formal doc nobody reads.
Currently Technical Lead & Product Development Head at The Forum, engineering products for partner companies Epitage Consulting Services and AssureIT Networks.
Comfortable taking a product from architecture through deployment without handing off the hard parts.
I design for the whole pipeline — device, sync, database and UI — as one coherent system, not separate pieces.
Four of the six products here are in commercial or production use, with published datasheets and real deployments; the other two are built end-to-end — none is a tutorial clone.
Commercial hardware with published datasheets, a self-hosted platform on 650+ endpoints, an industrial IoT platform built from an ESP32 mesh up, and a capstone drone. Open any card for specs, architecture and the datasheet where one exists.
Fig. 01ETH-AT01
Look at the camera — you're marked in.
Fig. 02ETH-CT01
Walk up, be recognised, collect a printed meal token — in seconds.

Endpoint monitoring · RMM · IT asset platform
Every computer seen, controlled and accounted for — on one server you own.
ESP32 mesh · Modbus RS485 · MQTT
An industrial automation platform grown out of a working ESP32 mesh.

Ethos Console + Ethos Software
The software that turns a punch at the terminal into a payslip.
Facade inspection drone
Close-range inspection of skyscraper exteriors without a rope-access team.
The products above are one connected system. This is the path a single event takes through it, and the part of the stack I own at each hop.
Face matched on-device on a ~300 ms scan loop; shift and window resolved from local tables.
React · face-api.js · SQLite
Enrolments and punches replicate over UDP broadcast — no central server.
Node dgram · UDP :41234
The Quorum punch device queues records locally with no network and reconciles with the console when it returns.
Queue · retries · idempotent upserts
Fleet management, live attendance, per-device shift configuration.
FastAPI · PostgreSQL · WebSockets
Six modules on one schema: attendance, canteen, visitor, payroll, contract labour, leave.
FastAPI · React · Supabase
Shift-aware attendance becomes payroll — with the industrial IoT telemetry running alongside.
AWS EC2
Timeline2 roles · Jun 2024 — Present
Leading architecture and delivery of hardware-plus-software products for The Forum and its partner companies, Epitage Consulting Services and AssureIT Networks.
Industrial IoT and asset-tracking systems for building and plant equipment.
Products from these roles are detailed above.
Levels are self-assessed, relative to the tools I ship with daily.