I'm a freelance software engineer. I build apps, websites, and AI features for startups and small businesses that need something built properly, and soon — no team, no handoffs, just me.
Four to six weeks, a price agreed before we start, and a working product at the end. The lowest-risk way to find out whether an idea holds up.
Turn a pile of PDFs into a spreadsheet. Read a receipt from a photo. Answer questions about your own documents.
Idea to launched product. Next.js and React on the web, React Native on iPhone and Android.
APIs, data pipelines, third-party integrations, and cloud setup. Also where overflow work from agencies lands.
Five products I designed, built, and shipped myself. These are my own products, not client work — I build them to sharpen the same tools I use for clients.
One calendar view across every Google account, plus any calendar you have a link to. Mac and Windows apps and Chrome and Firefox extensions, all local-only: no server, and nothing leaves your machine.
Community grocery price comparison — "GasBuddy for groceries." Photograph a receipt, AI parses every line item, and once confirmed the prices become searchable for everyone nearby.
Turns credit-card PDF statements into clean, structured transactions that budgeting tools can use.
Catalog a die-cast collection by photographing the card. AI reads the name, series, and number off it, and tells you in the store whether you already own it. Mobile-first PWA.
Tracks what's in which storage box. A QR code on each box opens its contents on scan.



Anyone with a work account, a personal account, and a kid's school schedule has three calendars and no single place to see the day. Calendar Hub is that place, and it never sends your calendar anywhere.
Google's phone apps merge accounts, but google.com/calendar shows one account per tab. Juggling tabs means double-booking across work and home, Meet links that open as the wrong account, and the same meeting showing up twice when it was sent to two of your addresses. The obvious fix, a hosted sync service, asks you to hand a third party read access to every calendar you own.
Keep everything on the user's machine. The app signs in to each Google account with the read-only calendar scope and talks to Google directly, with no backend in between, so there is no server to breach and no data to sell. Outlook, iCloud, and school calendars come in as iCal links. Duplicate invites merge into one event tagged with both accounts, and every link opens as the account that was invited.
One codebase ships four ways: Mac and Windows desktop apps, with the next meeting in the menu bar or system tray, and Chrome and Firefox extensions with a today-at-a-glance popup. It sells for a one-time $4.99, and a single license key unlocks every platform.
A free 20-minute conversation about what you're trying to build. No sales pitch, no deck.
A plain-language proposal — what gets built, how long it takes, and a fixed price or weekly rate. Agreed before anything starts.
Weekly check-ins with working software, not slides. You can ask questions or change direction any time.
Deployed, with the code and documentation handed to you. Available after launch if something needs attention.
No price list — every project is different. Engagements are structured one of three ways, agreed before work starts.
A defined deliverable for a defined price. Best for sprints and well-scoped builds.
Billed by the week for open-ended or evolving work, invoiced as we go.
A set number of hours each month, for ongoing maintenance or a steady stream of small work.
Tell me roughly what you need and I'll reply within a day — usually with a couple of questions and a sense of whether it fits a sprint, a full build, or something else.