About Me

Since 2004. Enterprise apps, SaaS products, native Apple apps, and developer tools: built, shipped, and kept running.

Professional Development

Writing software since 2004. Enterprise apps, SaaS products, e-commerce sites. I handle the planning, build the thing, and stay on to keep it running.

Scalable & Secure Architecture

Security matters because I've seen what happens when it doesn't. Systems should degrade gracefully, recover cleanly, and stay readable, even to the person maintaining them six months later.

Technical Focus

  • Developer Tools & SaaS

    Focus

    I ship production tools that solve real problems. Accessibility scanners, multi-tenant SaaS, analytics dashboards, CI plugins. If developers need it, I build it.

  • Full-Stack & Distributed Systems

    Expertise

    React, TanStack, Next, Vue, Nuxt, Node.js, C#/.NET. Background job queues, event streams, the stuff that needs to work when traffic spikes.

  • Native Apple Apps

    Shipping

    Swift 6 and SwiftUI across iPhone, iPad, Mac, and Apple Watch. Widgets, complications, menu bar extras, StoreKit. Three on the App Store, more in the pipeline.

Certifications

Industry certifications that back up the experience.

Certified

Introduction to Web Accessibility

W3C (W3Cx WAI0.1x) via edX

Certified

Umbraco Master

Umbraco HQ - Master-level CMS certification

Certified

Sitecore 10 .NET Developer Certification

Sitecore - Professional developer certification

Technical Skills

What I work with and what I've gotten good at.

Backend Development

  • .NET & C#

    Enterprise APIs and background services. Built financial systems that process real money.

  • Microservices

    Breaking monoliths into services that can scale independently. API gateways, message queues, the works.

  • ASP.NET MVC & Web API

    REST APIs, auth systems, the Microsoft stack. Been doing this since .NET Framework days.

  • Node.js & Express

    My go-to for new projects. APIs, serverless functions, SSR. Most of my recent work is Node.

  • BullMQ & Job Queue Processing

    Background jobs with Redis. I use BullMQ for AccessHawk's scan queue. Handles thousands of jobs without issues.

  • Server-Sent Events (SSE)

    Server-to-client streaming for live updates. Simpler than WebSockets when you only need one-way data.

  • GraphQL & REST

    I usually reach for REST, but GraphQL makes sense when clients need flexible queries.

Frontend Development

  • React, TanStack, Next, Vue, Nuxt

    React and Vue both. TanStack Start powers this site. SPAs, dashboards, e-commerce, static sites.

  • TypeScript & JavaScript

    TypeScript everywhere now. The type safety catches bugs before they ship.

  • CSS & SCSS

    Responsive layouts, design systems, component styling. Comfortable owning the visual result, not just the markup.

  • CSS Frameworks

    Tailwind for most projects. Bootstrap, DaisyUI, Shadcn when they fit better.

  • Accessibility (WCAG 2.1/2.2)

    I built AccessHawk because I care about this. ARIA, keyboard nav, screen readers. Making the web work for everyone.

  • Internationalization (i18n)

    SereneReader ships in 13 languages with complete message coverage. Per-locale plural rules, date and currency formatting, and localized URL routing with browser language detection.

  • Vite & Modern Build Tooling

    Vite on new work, Webpack on the enterprise codebases that still run it. Bundle splitting, tree shaking, build performance.

Apple Platform Development

  • Swift 6 & SwiftUI

    Two apps on the App Store, each one codebase covering iPhone, iPad, Mac, and Apple Watch from a shared multiplatform target. Strict concurrency on from the first commit.

  • SwiftData & Offline-First Sync

    Write to the local store, queue the mutation, replay it when the network comes back. Better than showing a spinner and hoping.

  • WidgetKit & watchOS

    Home-screen and lock-screen widgets, Watch apps, complications. The timeline refresh budget is the whole game.

  • StoreKit 2

    In-app purchase and entitlement handling, including universal purchase so one transaction covers iOS, macOS, and watchOS.

  • Xcode Cloud & App Review

    Automated builds and TestFlight uploads. I have been through review on iOS, macOS, and watchOS, metadata rejections included.

Database & Cloud

  • SQL Server & MySQL

    Schema design, query optimization, stored procs. I know how to make databases fast.

  • MongoDB & Redis

    MongoDB for document storage, Redis for caching and queues. Use both daily.

  • Supabase

    PostgreSQL with a nice API layer. Good for projects that need auth and real-time without building it yourself.

  • Microsoft Azure

    App Services, Functions, Storage, DevOps. Most of my enterprise work runs on Azure.

  • AWS & Cloud Architecture

    EC2, S3, Lambda. I work in both AWS and Azure and pick based on what the project and the team already run.

  • Railway

    Runs the production deployments for my own products. Git push to deploy, with managed Postgres, Redis, and cron.

Platform & Tooling

  • Docker & DevOps

    Docker for local dev and production. GitHub Actions and Azure Pipelines for CI/CD. Kubernetes when the project needs it.

  • Playwright Browser Automation

    Headless browser automation for screenshots, accessibility scanning, and testing. Powers the crawler in AccessHawk.

  • Turborepo & Monorepo Architecture

    Turborepo with pnpm workspaces. Fast builds, shared packages, caching that actually works.

  • CloudFlare Security & CDN

    WAF rules, caching, DNS. I use Cloudflare on all my projects. It's stopped real attacks.

  • Enterprise CMS

    Umbraco Master Certified, Sitecore 10 Developer Certified. Years of enterprise CMS work, headless and traditional.

AI & Automation

  • Claude Code Plugin Development

    I build and maintain open-source Claude Code plugins: AI-ADO for Azure DevOps automation, security auditing, workflow orchestration. Available on GitHub.

  • Model Context Protocol (MCP)

    MCP servers and proxy tools that let AI agents talk to existing systems. I've built integrations for Azure DevOps, databases, and internal APIs.

  • LLM Integration

    Claude API, OpenRouter, GPT. I know how to get useful output from LLMs without burning through tokens.

  • Workflow Automation

    Multi-agent n8n workflows, git commits turned into Azure DevOps work items, preflight checks and PR generation. The repetitive parts of the day, handled.

Other Expertise

  • ElasticSearch
  • OAuth/JWT
  • IIS & Apache
  • PowerShell Automation
  • Octopus Deploy
  • Performance Optimization
  • Test-Driven Development
  • SEO Best Practices
  • Agile / Scrum

What I've Built

Products I designed, shipped, and still run in production.

View All Projects
AccessHawk website screenshot

AccessHawk

  • Web Application

Automated WCAG scanning. Real browser capture, Lighthouse audits, and AI analysis in one pipeline, with scheduled scans and a CI API.

  • Nuxt 4
  • TypeScript
  • MongoDB
  • Redis
  • BullMQ
SereneReader website screenshot

SereneReader

  • Web Application

A real-time reading platform with live updates over SSE, native clients on four Apple platforms, and complete localization into 13 languages.

  • Nuxt 4
  • TypeScript
  • i18n (13 locales)
  • Swift
  • SwiftUI
SPConnector website screenshot

SPConnector

  • Web Application

Multi-tenant print routing for e-commerce fulfillment. Real-time WebSocket delivery, AES-256-GCM encryption, thousands of orders a day.

  • Vue.js
  • Express.js
  • MongoDB
  • Redis
  • Polar.sh

Contact

Drop me a line. I read everything and reply within a day.

Required fields are marked “(required)”.