Resume
Experience
Software Engineer (2013–present) Full-stack TypeScript since 2023. Bun, Convex, TanStack, Expo, React Native. I build tools and open source them.
Recent work:
- convex-revenuecat: Convex component for RevenueCat subscriptions. Idempotent webhook handling for all 18 event types, edge cases like cancellation keeping access until expiry. Published on npm.
- gitbar: Menubar GitHub dashboard in Tauri and Rust. 3 parallel GraphQL queries, stale-while-revalidate caching, progressive rendering, ~5MB binary.
- polar-commerce: E-commerce on Polar. They have no cart system, so I built one. Ephemeral product bundling at checkout, webhook reconstruction server-side.
- skills: Plugin system for Claude Code. Lifecycle hooks, state persistence across sessions, 8 independently installable plugins.
When LLM APIs started launching in late 2023, I shipped 7 API client libraries in 10 months. First to publish wrappers for the Gemini and Grok APIs. 280+ combined stars. That work moved me from Python to TypeScript full-time.
Before that, Python was my primary language for 10 years (2013–2023). Started with data analysis, scraping large datasets, organizing and sorting them. Got into reverse engineering APIs and security measures, working backward from how systems behaved to figure out how they were built. That’s what pulled me into programming. I used JavaScript and React on the frontend with Python backends (Flask, Electron) throughout this period.
Co-Founder & COO, Artistic Distributions (2017–2022) Co-founded with Kai. Two sides: engineering and operations.
Engineering: Headless Shopify storefronts using the Storefront API (Liquid, Hydrogen, GraphQL) handling thousands of concurrent buyers with bot protection. Dynamic sites in React and TypeScript, static sites in HTML/CSS/JavaScript. Built AR experiences in Swift. An app that let artists place their artwork in real spaces, Instagram/Snapchat filters, and an Instagram game using eye tracking with Kai’s artwork.
Operations: End-to-end production of limited edition sculptures, vinyl toys, apparel, enamel pins, serigraph prints, and sticker packs. Sourcing manufacturers, prototyping, international shipping, customs, and QC. Managed social channels and coordinated launches across multiple artists. Ran collaborations with Pintrill, Carrots by Anwar Carrots, Adidas, Nike, Converse, NTWRK, Avant Arte, Beyond The Streets, and Art Miami. One charity print drop raised over $80K in 24 hours.
Open Source
36 public repos, 4 published npm packages (convex-revenuecat, create-claude, create-codex, create-claude-statusline), ~1,900 total downloads. Dev tools, SaaS starters, AI toolkits, browser extensions, desktop apps, CLI tools, and Convex components. Merged PRs to Bun, fumadocs, and TanStack. See the projects page.
Skills
Languages: TypeScript (2020–present, primary), Python (2013–2023, 10 years), Swift (AR/mobile, 2018–2020)
I build with: Bun, Convex, TanStack Start, Next.js, Astro, Expo, React Native, shadcn/ui, Tailwind CSS, Zod, Stripe, RevenueCat, GraphQL, Tauri
What I haven’t done: I’ve built systems under real load (drop commerce with thousands of concurrent buyers, bot protection, real-time inventory) but haven’t worked at the scale of distributed microservices or production DevOps. I’ve coordinated across teams operationally (10-person in-house crew, external teams at Adidas, NTWRK, Beyond The Streets) but haven’t worked inside an engineering org with code review, on-call, and sprint cycles. I ship fast and own projects end-to-end. Now I want to do that on a team.
Education
B.S. Computer Science, Long Island University, 2016