Independent, end to end
2025 to present
After a decade of agency and freelance work I took a deliberate year between chapters, then went independent in 2025, partnering directly with clients as a full-stack engineer, with each project raising the bar: deeper technical domains, broader scope and sole ownership from architecture to deployment. Alongside client work I build my own products: Macrop, a full-stack TypeScript nutrition planner, and the Heal Suite, a Claude Code plugin for contract-bound, measurable LLM code audits.
Compliance platform
June 2026- Full-stack engineer on a production SaaS compliance platform for CRS/FATCA regulatory tax reporting (Next.js, TypeScript, PostgreSQL/Prisma, GraphQL): a regulated-industry codebase, two years old, maintained by a distributed five-developer team
- Put entity-level authorization behind a fail-closed server-side guard wired into all 15 entity-data endpoints, and centralized every LLM completion call behind one typed entry point, the boundary held by an ESLint rule and a build-failing guard test rather than by review
Music platform
October 2025 – April 2026- Full-stack product engineer on a music platform connecting artists directly with fans, events, venues and labels, shipping features end-to-end across a React Native/Expo universal app (iOS, Android, web), an Express + TypeScript API and a Supabase/PostgreSQL backend in an NX monorepo
- Drove a contract-first API refactor: Zod schemas in a shared contract package as the single source of truth for frontend and backend, turning runtime type drift into compile-time errors
- Built the platform's analytics subsystem end to end (event emission from the domain services, a typed fact and metric layer, aggregation SQL, a scheduled AWS Lambda rollup and the in-app dashboard) and re-architected Stripe webhook handling into a registry and dispatcher with signature verification, idempotency and fourteen typed event handlers
- Evolved a production database schema safely: 31 migrations, converting lookup tables to Postgres enums across event, notification and populator types, updating every dependent function, policy and generated type, with row-level-security cleanup
- Originated ten subsystems: analytics, webhooks, comments, reactions, content media, video, the music catalogue and the shared cross-platform capabilities layer among them, each a directory whose first commit is mine; 268 commits across ~1,300 files in 7 months in a seven-developer codebase
Non-Planar 5-Axis Slicing Platform
June 2025 – December 2025- Designed and built a browser-based CAM/slicing platform that makes experimental 5-axis, non-planar 3D printing usable by non-programmers, as the contracted engineer for a robotic-fabrication studio, writing the codebase's first commit and 84% of all application-source commits in a four-person project
- Built the product end to end: a real-time 3D interface with Vue 3 and Three.js (model upload, slicing parameter configuration, toolpath visualization and animation) on a FastAPI + PostgreSQL backend with a full mesh pipeline, G-code generation and export
- Integrated a research-grade computational-geometry slicing engine into a stable, operator-friendly product, streaming long-running slicing jobs to the browser via Server-Sent Events
- Introduced production-level engineering to a project that had none (database migrations, Dockerized dev/prod environments, a typed, linted and tested codebase with mypy, ruff, pytest and ESLint), and ran the release process to a versioned 0.15.0, authoring 20 of the project's 21 tagged releases