- Digitized a paper-based warehouse by launching a Blazor WASM handheld scanner app, improving accuracy and throughput enough to eliminate the need for a warehouse expansion and additional headcount.
- Architected and automated ERP workflows across supply chain, accounting, QA, and product domains, delivering purchasing automation, inventory forecasting, AQL enforcement, and lot costing controls that improved operational efficiency and financial accuracy.
- Served as both developer and solutions consultant, partnering directly with cross-functional teams to deeply understand operational workflows and pain points, reframing surface-level requests into scalable ERP solutions that addressed root causes.
- Founded and scaled the development team (1 → 6), leading onboarding and mentorship while establishing code reviews, quality standards, and testing practices.
- Developed a Julia-based block processing system to detect internal ETH transfers to block fee recipients by analyzing Ethereum execution traces via Go Ethereum's APIs.
- Integrated trace data with PostgreSQL blockchain datasets and structured transaction- and transfer-level storage with transactional bulk inserts.
- Built a concurrent block-scanning pipeline with structured logging and retry/fallback handling to reliably process large historical block ranges.
Competl is a competitive multiplayer word-guessing game built as a university group project for SENG513, inspired by Wordle but centered around real-time competition. Built with Next.js, React, and MongoDB, the app features a daily 5-letter puzzle shared across all players, with a timer tracking each player's solve speed. Players authenticate via OAuth (Google/GitHub) and compete on a daily leaderboard ranked by completion time and guess efficiency. The game tracks comprehensive statistics including win streaks, best leaderboard placement, and a visual guess-distribution histogram. State is persisted in local storage with automatic daily resets, and the backend uses serverless API routes to handle score submission, leaderboard retrieval, and user stat updates. The project demonstrates full-stack development across authentication, real-time competitive scoring, and responsive UI with Material-UI.
Stock Sentiment Tracker is a full-stack web application built with Django that analyzes public sentiment toward stocks by processing tweets fetched via the Twitter API. For a given stock ticker, the app retrieves recent tweets, runs them through a custom NLP pipeline using Stanford's Stanza library, and computes a sentiment score by combining lexicon-based text analysis (using a financial-domain word list with negation handling) with emoji sentiment data. These scores are aggregated into a weighted average — giving more influence to highly-retweeted posts — and displayed on a clean Bootstrap frontend with a sentiment scale, tweet breakdowns, and embedded featured tweets. The app also includes a model evaluation page that backtests sentiment predictions against historical Yahoo Finance price data across 100 major stocks, measuring how often a positive/negative sentiment signal correctly predicted the next day's price direction.
Bandwagon is a full-stack NBA prediction gaming platform built as a group project for CPSC 471 (Database Management Systems). Users create accounts, vote on upcoming NBA game outcomes before tip-off, and earn points based on prediction accuracy — with a twist: correctly picking the underdog pays out more than picking the favourite, incentivizing strategic risk-taking. The backend is built with ASP.NET Core (C#) and Entity Framework Core against a SQLite database with 13 entities, exposing a RESTful API with Swagger documentation. The frontend is a React.js SPA using the Context API for state management and Axios for data fetching. Beyond the core prediction loop, the platform includes a merchandise shop where users redeem earned points for prizes, a badge/achievement system, a global leaderboard, and an admin panel for updating game scores and triggering a weighted prediction algorithm to calculate team win probabilities and point payouts.