Nullify
Rebuilt the frontend for Nullify's AI security platform (470 components, initial payload halved), and cut Go and Python service startup times.
Full-stack product engineeringSoftware engineer / hardware tinkerer
I’m a full-stack software engineer: five years at Canva, now the primary owner of Nullify’s rebuilt frontend. I also design and build hardware, from custom circuit boards and processors to robots and embedded systems.
In progress Four legs, many revisions Robot dog An articulated BLDC quadruped brought together through custom controller electronics, wiring, an aluminium frame, and mechanical adaptations—built on an open-source 3D-printed design. Open project →
Bench testing Custom motor controller A compact STM32-based BLDC servo controller with magnetic sensing, CAN-FD, and a custom bootloader path. Open project →
In progress E-paper smart watch A custom round smartwatch built around a 1.1-inch e-paper display, Bluetooth MCU, sensors, charging, and power management. Open project →
Built / continuously revised LED clock A large networked HUB75 clock that grew from a bleeding low-resolution prototype into a polished clock, visualiser, and animation surface. Open project →
Wireless light gun An OpenFIRE-based light gun with ESP-NOW, a dedicated wireless dongle, on-device display, and printed enclosure. Open project →
Single-key keyboard A complete keyboard with one key, built around a tiny custom round circuit board. Open project →
Brother cartridge emulator A hardware and software investigation into the proprietary cartridges used by older Brother embroidery machines. Open project →
Sand table A kinetic coffee table that moves a hidden magnet to draw slow, geometric patterns through sand. Open project →
Moon lamp A large illuminated lunar globe on a custom printed stand, because ordinary lamps were apparently solved already. Open project →
Ethereal ink frame A framed e-paper display for generated artwork: quiet, persistent, and a little uncanny. Open project → 
Flare-On Four years of reverse-engineering challenges, suspicious binaries, and physical medals.
Open project →02 / FreeCAD 8 pieces
Mechanical wallet A printed card wallet whose thumb slider fans five cards out in a staggered cascade, with a rear door for notes and coins.
Open project →03 / 2019—2024 *
/o\
/@*o\
/o**@*\
/_*_o_*_\
||
2019 — 2024 Advent of Code Several years of puzzle solving across Python, Kotlin, Go, and Nim.
Open project →04 / AI inferencePR #46 · src/sd.cpp - int dim = sdxl_params ? 128 : 64; + int dim = turbo ? 64 : 128; + if (turbo) return denoised_cond; - float delta = -999.f / (step - 1); + float delta = step > 1 ? -999.f / (step - 1) : 0.f;OnnxStream / SDXL
Contributed Stable Diffusion XL and SDXL Turbo support to a tiny inference engine that runs on a Raspberry Pi Zero 2.
Open project →05 / CUDA 1 piece
Split seed and tree computation into separate CUDA kernels, more than doubling performance and making the search practical.
Open project →06 / Blender 3 pieces
FTL ship models Printable Blender models of the Kestrel, Rebel Flagship, and Stealth Cruiser from FTL.
Open project →07 / Repair 4 pieces
Nintendo DS repair Hot-air connector replacement followed by a full screen, touch, and audio test.
Open project →08 / Assorted 19 pieces
Side quests Internet-controlled blinds, reactive TV lighting, infrared photography, clocks, kitchen assistants, and assorted bench experiments.
Open project →Rebuilt the frontend for Nullify's AI security platform (470 components, initial payload halved), and cut Go and Python service startup times.
Full-stack product engineeringRendered Magic Design previews by adapting the editor's canvas renderer, built the frontend for a RAG prototype, and redesigned Marketplace search filters.
Software engineering / AI productsBuilt an internal Google Maps feedback tool, then ported Neighbourly to KaiOS/JioPhone within a 512 MB memory ceiling and wrote the team's first porting specification.
Software engineering internships
Built ASP.NET MVC and Angular applications, then took ownership of Angular projects and their Protractor test infrastructure.
Full-stack software engineering
Led software for a 50 kg competition robot, built and tested under the traditional six-week deadline.
Lead software developerFollow the builds, browse the half-finished experiments, or open an issue when I have wired something backwards.
Hot air and very small connectors
4 media itemsA broken display connector replaced with hot air and careful board work.
The final test exercised both displays, touch input, buttons, and audio—the useful proof that the repair was more than a neat solder joint.
The damaged Nintendo DS connector secured for precision hot-air rework.
The failed connector removed cleanly before fitting its replacement.
The repaired console passing its display, touch, and audio checks.
A second functional test confirming the completed Nintendo DS repair.