Skip to main content

Work & Case Studies

A few problems worth solving: the situation I walked into, what I built, and what changed. Some details are anonymized to respect client confidentiality.

Governed risk-management platform inside Zoho Projects

Every project manager was supposed to log delivery risks each month. Nobody could tell who actually did, whose projects were flying blind, or what a risk looked like six months ago. The “risk register” was a spreadsheet nobody trusted and no one audited.

JavaScriptZohoPythonFlaskGoogle CloudPostgreSQLGoogle Cloud StorageGoogle Chat
Read the full case study →

Automated anomaly triage for 100+ specialists' timesheets

PMs were rubber-stamping hundreds of timesheet lines a month. And the wrong ones (weekend hours, days over eight, time booked on approved leave) were exactly the ones that slipped through, because nothing surfaced them and the tool timed out before the data even loaded.

JavaScriptZohoPythonFlaskGoogle CloudGoogle Cloud Storage
Read the full case study →

Compliant self-service HR change-request workflow

Every profile change. A new bank account, a legal address, a phone number. Went through the same informal email thread, with no record and no distinction between what’s routine and what legally needs verification.

ZohoPython
Read the full case study →

Speakscribe

Transcription tools hand you a wall of text. But never let you actually ask it anything.

PythonFastAPIOpenAIReact
Read the full case study →

Julia workload-data analyzer

Turning a CRM’s workload data into a distribution report meant an afternoon of manual spreadsheet work. Every single week.

Julia
Read the full case study →

Community Discord bot

Manual moderation and referral tracking couldn’t keep up with thousands of active members.

PythonDiscordSQLiteWeb3.js
Read the full case study →

This website

A portfolio should double as a work sample. So the site itself had to be genuinely well-built.

SvelteTypeScriptTailwind CSS
Read the full case study →