I'm a current software engineering student at Western University, pursuing a dual degree with Ivey HBA, mostly because I like being busy.
I like building small things that fix a real annoyance, a Slack digest bot, a deal-finder that saves me from opening six marketplace tabs, and what I am working on right now: an app that documents your fridge and generates recipes.
Toronto, ON
Building production healthcare-claims automations with Typescript, Node.js, Express, and Redis/Upstash, wiring EHR and CRM workflows into Gmail and Slack. Sped up full-dataset CSV exports ~20x and built a Slack-based error-alerting system for the claims pipeline.
New York, NY (Startup)
Building the MVP for a full-stack pricing and workflow platform with Next.js, Strapi, and PostgreSQL, designing backend APIs and data models for dynamic pricing across 15,000+ U.S. funeral homes.
London, ON
Built a Wi-Fi optimization platform with a PPO reinforcement-learning agent (Stable-Baselines3, Gymnasium) that dynamically switches access points to cut latency, jitter, and packet loss, then benchmarked it in a Flask + React experimentation platform across 50+ episodes.
Automated order fulfillment end to end, replacing a fully manual process. Built a Stripe webhook pipeline with row-locked inventory reservation in Postgres, so concurrent orders never claim the same item. Made fulfillment idempotent against duplicate webhooks, blocked refunded orders from going out, and added an out-of-stock queue that resumes automatically on restock. Integrated a third-party provider API that delivers orders straight into the customer's chat.
An authenticating proxy for the OpenAI API that streams responses back byte-for-byte while logging every request off the hot path, plus a live dashboard for inspecting the traffic. Logs ship asynchronously to a separate backend, so the logging side can never slow down or break a caller, and each API key only ever sees its own traffic. Backed by 89 tests.
A fast-paced YouTube view-guessing game where players estimate how many views a trending video has and compete on accuracy. Built this month as a lightweight daily challenge with solo and multiplayer modes.
Turns noisy engineering Slack channels into phase-aware digests for three different team personas. Requests generate in parallel with Promise.allSettled(), so one persona failing doesn't take the rest down with it.
Pick a persona to generate a sample digest from the same engineering thread:
A Django app that queries live listings across the US, Canadian, and UK eBay marketplaces and ranks them by price or review quality, so cross-border comparison shopping doesn't mean twelve open tabs.