UWaterloo CS488 (Graphics)
Renders arbitrary scenes complete with bump mapping, depth-of-field, and anti-aliasing. Used to make a cool animation.
UWaterloo mathNEWS
A massive guide to every constant featured on a decorative number line in a UWaterloo campus stairwell.
My introductory project to JavaScript, inspired by my love for the original (square) 2048. Swipe or use QWEASD to control the board.
Research Intern
6th co-op internship: self-driving research on simulating safety-critical (adversarial) driving scenarios. We published something!
SDE Intern
5th co-op internship: over-engineered a debugging tool and ended up with a new programming language plus a distributed tracing framework.
UWaterloo CS449 (HCI)
Design project in an HCI course I took with the UGO II team. Can we improve team cohesion by rethinking scrum?
Software Developer Intern
4th co-op internship: helped roll out a huge improvement in the way we handle customers' product data.
UWaterloo CS348 (Databases)
A database-driven full-stack web app built around an MMR system for co-op employers at UWaterloo.
FairVentures Lab
An open-source FVLab project that uses pictures and AI to learn about businesses.
Solutions Developer
3rd co-op internship: built and demoed configurable AI assistants for underwriters at Fairfax.
Loo Labs
A UWaterloo student wiki. Some of my finest full-stack engineering work, cut short by the collapse of Loo Labs itself.
Backend Team Lead
Led the backend team within a short-lived student developer organization. Kicked bugs, took ownership. Learned how to (and not to) design and lead.
Full Stack SWE Intern
2nd co-op internship: helped the ProductBoost team encourage merchants to advertise on our platform.
Swift Record Generator
Outputs random code to measure the performance of structs, classes, and dictionaries for representing data records in Swift.
Mobile Software Developer
1st co-op internship: added features to the Surge9 microlearning platform, which the company is now named after.
Automated Double-Elimination Tournament Organising Spreadsheet
A macro-powered spreadsheet that plans and runs table tennis tournaments.
IB Extended Essay
Strange patterns appear when you highlight all the primes on a spiral number line. This was the topic of a paper I wrote in high school.
Custom-made using Next.js and styled-components.
Hosted using AWS Amplify.
Last updated November 13, 2024.