About
I'm a software engineering student at the University of Victoria, graduating in August 2026. My interests sit at the intersection of software, robotics, and scientific computing — I like problems where code meets the physical world.
Most recently I was at Natural Resources Canada's Geological Survey, where I developed AI-driven methods to quantify shoreline erosion and accretion around Canada's coastline — building both a marching-squares and a neural-network classifier to detect shorelines in imagery from Landsat, Sentinel-2, and PlanetScope satellites. I was asked to stay on after my co-op term to supervise the project and two new students, presented results to NRCan and outside scientists, and contributed to the open-source CoastSat project.
Before that, at SMART Technologies, I built automated test systems for Android-based interactive displays using Python and Robot Framework. A custom hardware-in-the-loop suite I developed — using RS-232 controlled solenoids to verify real touch input — saved the test team 8–12 hours of manual testing every week, and the bugs I caught blocked a faulty 3000-unit release from shipping.
Outside of work terms, I contribute to AUVic, UVic's autonomous underwater vehicle team — mainly on the Gazebo-based simulator that lets the software team develop and test without waiting on hardware, along with systems validation ahead of RoboSub 2026. I've also played field hockey for the UVic Vikes and Team Alberta.
Toolbox
- languages — C/C++, Python, Java, R
- ML & geospatial — PyTorch, TensorFlow, Scikit-Learn, NumPy, Pandas, QGIS
- robotics — ROS2, Gazebo, OpenCV
- devops & testing — Git, Docker, Robot Framework, Selenium, Appium, Catch2, TeamCity, Azure