Software engineer TypeScript, Node.js, Python

Hi there, for the last 7 years I've devoted my time to building web-based software, and only recently have I taken an interest in building tools for the terminal for my personal use. I believe that, given time — no matter how little — and the right resources, anything can be learned. I do not shy away from work no matter its complexity, and I do my best to break it down into chunks I can wrap my head around.

I build with AI coding agents — working through requirements, testing thoroughly, and shipping only what holds up.

Personal project

Service Hub

Live

An operations platform for an automotive service business, built so it can be re-skinned for another one. Customers book work on several vehicles at once, dispatch sees it on a board, technicians get their jobs, and every completed service produces a report with parts and photos.

The backend is Node on the standard library — no framework — with a declarative route catalog that also generates the OpenAPI spec, phone-OTP sign-in, and a permission model where a route can’t boot without declaring what it needs. One schema, kept as paired SQLite and Postgres migrations; SQLite is what runs today. The frontend runs buildless in development and bundles for production. Deployed, with a public demo.

React Node.js SQLite PostgreSQL

Personal project

Scout

Shipped

For anyone who works across a lot of repositories. Scout indexes your projects into SQLite, ranks matches by how recently and how often you’ve opened them, and drops your shell into the one you want with a keystroke — or runs an action there (tests, your editor, a tmux pane) without leaving the picker.

It’s Rust with a small, deliberately closed set of dependencies. Actions are declared in TOML, and the ones Scout runs itself are executed as argv rather than through a shell; the config is hash-pinned so a changed file is re-approved before it can run anything. It can also audit the paths it indexes for who else on the machine can edit them. 100k paths index in about a second.

Rust Bash

Client work

Wraptious (what they say...)

Kairu's greatest strength is his ability to bridge technical complexity with clear communication. He has a natural talent for breaking down complex problems, asking the right questions when clarity is needed, and delivering solutions that work. His bias toward action means projects move forward, but he's thoughtful enough to challenge assumptions and improve processes along the way.

John-Paul Treen, Technical Director