I got an F on my own website's security. Here's how I fixed it in an afternoon.
Replacing static AWS keys with GitHub OIDC, and going from F to A on security headers.
Read more →I build AI agents and workflow automation that survive production, deployed on AWS with least privilege IAM, managed secrets, cost guardrails, and defenses against prompt injection.
Eight years shipping production web applications, now applied to agent infrastructure. Most agent demos work; the hard part is making one survive real users, real costs, and real adversarial input.
Available for contract work: agent builds, workflow automation, AWS deployment & hardening. Also open to full-time remote roles.
Email me →Agents that take real actions against real systems, with human-in-the-loop gates and audit trails.
Serverless architecture and repeatable pipelines on AWS, provisioned as code.
Closing the gaps that ship by default, and finding the spend nobody is watching.
OpenAI Realtime • WebRTC • AWS Lambda • API Gateway • DynamoDB • S3
A voice agent embedded in this site. Click a button, talk, and ask about my work. It answers only from a knowledge base I wrote by hand, tags each skill by how deeply I actually know it, and says so rather than guessing when there is no source. Rate limits, spend ceilings, and tool permissions are enforced in code the model cannot reach.
AWS Lambda • API Gateway • S3 • DynamoDB • HeyBeauty API
AI virtual try-on app published on the Shopify App Store. Sole engineer across backend, infrastructure, billing, and support. Re-architected the image pipeline to cut AWS costs by 99%. Sunset in 2026 once foundational image models commoditized single-purpose try-on tooling.
Vision LLMs • Next.js • Vercel • Schema validation
Two systems that turn messy documents into structured data: receipts into accounting-ready CSV, and legal contracts into a reviewable risk summary. Each flagged risk has to quote the clause it came from, and code checks that the quote really exists in the document.
Firecrawl • LLM summarization • Change detection • Email alerts
Watches corporate newsrooms for new press releases and emails a summary when something lands. Most of the work went into the cost model: a tiered pipeline that only pays for the expensive step when a page has genuinely changed, which took a projected $749 a month down to $99.
S3 • CloudFront • Route 53 • DynamoDB • API Gateway • Lambda • GitHub Actions
Started as the AWS Cloud Resume Challenge. Since hardened: static deploy credentials replaced with GitHub OIDC federation, deploy role scoped to four actions, and a CloudFront response headers policy taking it from an F to an A on securityheaders.com.
Replacing static AWS keys with GitHub OIDC, and going from F to A on security headers.
Read more →Updating my app's architecture to reduce costs.
Read more →Finally taking the plunge and putting my AWS knowledge to the test.
Read more →