About Me

I grew up in south-western manitoba before coming to Winnipeg for my first degree. I attended University of Winnipeg, graduating with an honours degree in Biochemistry. After graduation, I bicycled with my brother 6000km over 5 months from London, England to Athens, Greece. I ultimately decided not to pursue academia in the long term, and resolved instead to use my longstanding interest in computers, which included having taught myself coding in high school and building the occasional project in my free time. I then attended the University of Manitoba, graduating with an honours degree in Computer Science. I've held junior developer positions at Agriculture and Agri-Food Canada, and at Upfeat Inc. My most recent position was at QDoc Inc. where I was a team lead and software architect.

Due to my effectiveness in our work, and having made numerous critical contributions, I was promoted to team lead after graduation. My task was to develop a new medical billing application in part to meet the requirements of a provincial RFP. This project had many specific requirements and required detailed knowledge of Manitoba's medical billing system. I designed the database schema, architected the application, built a skeleton application, and implemented a CI deployment system using AWS CDK. I evaluated, hired, and trained developers, and planned the work so we could advance the project.

Near the end of my CS degree I decided to learn the Rust language by re-implementing a stack of communication protocols called bramble in Rust for my industry project course. After making that decision, I learned that someone else had already started two years earlier. Whereas I wanted to use it to make an anonymous messaging application, they wanted to use it for a decentralized game platform. Only the sync layer remained, and combining the layers together remained. The project was extremely complex, and I have continued to work on it in my free time over the last 3 years. Now, whenever I initiate a new side-project, Rust is my go-to language. Its extremely flexible and reliable, though it does have its quirks and drawbacks.

I believe in continual improvement of my personal abilities and my team's processes. Software development is a collaborative activity, and the more collaborative it is, the better the result. Software development is also my biggest hobby, ranging from several complex rust projects, to basic scripts for organizing my magic the gathering decklists, to a sudoku solver, and the nix-configuration for managing my home computer cluster, which runs kubernetes and various media server programs. I am proficient in frontend, backend, database, deployment systems, script automation, and cloud infrastructure, but my specialty is backend and cloud.