I'm a product engineer in Nairobi. I build software products from zero to one, and the infrastructure they run on. Right now I'm building Hercus, a desktop app for running Claude Code and Codex in parallel on your own repositories.

Before going independent in 2025, I was a full-stack developer at IMS Ventures, on a live financial application. I led development of its internal admin tool, designed its role-based access control and audit trails, and supported its operations team in production.

Projects

Hercus2026

Running several coding agents at once means juggling terminal sessions, losing track of which tasks are done or stuck, and parallel changes colliding in the same checkout. Hercus is a desktop workspace that runs Claude Code and Codex in parallel on your existing repositories. It shows which tasks are running, finished, or waiting on you, keeps parallel work in separate Git worktrees, and includes the files, terminal, browser, pull request, and CI tools needed to review and ship the changes.

Helmstead2026

A SaaS product usually needs far more than hosting: a database, a cache, a message queue, email, secrets, backups, logs, error tracking, monitoring, and domains. Once you run several products, setting all of that up again for each one on a hosting platform becomes a job of its own, and self-hosting it means keeping databases off the public internet. Helmstead is the self-hosted PaaS I built to handle it once, for Hercus, unstructured.chat, and GetProductive. Apps redeploy automatically when GitHub builds a new image, and a single portal provisions Postgres, Redis, and RabbitMQ. The data services sit on a private network that only approved apps can reach, and each service can only connect to the outside hosts it needs.

unstructured.chat2025

Teams waste time hunting for answers buried in documents scattered across different drives and folders, then skimming long files to find the part that matters. With unstructured.chat, they ask questions in plain English and get answers grounded in their documents, with exact citations to the source. It imports files from Microsoft 365, Google Drive, Dropbox, and Box, handles more than 40 file formats including audio and video, and uses role-based workspaces so people only see answers from documents they're allowed to access. It isn't publicly launched.

GetProductive2023

Notes, to-dos, projects, and schedules usually live in separate apps, so staying organized means constantly switching between them. GetProductive brings these everyday tools together on one platform, with a notes manager, task manager, projects manager, and calendar. I started it in my own time while at IMS Ventures.

Blockchain Voting System2022

In conventional elections, voters have to trust a central authority to record and count votes correctly, and the results are hard to verify independently. This system runs the election on an Ethereum smart contract: verified voters cast their votes through MetaMask, every vote is recorded on the blockchain, and the results are open to everyone once the election closes. It was my final-year computer science project.