My Portfolio
Here you’ll find details about both professional and personal projects i’ve worked on in the past
WhosReffing
WhosReffing is a live information platform for hockey refferees across a large number of North American leagues.
I started this project as a simple email service which sent out a detailed report of who was reffing that nights games. The email list became so long that I decided to make the move to a website.
Aside from the officials, WhosReffing also offers detailed statistics on individual referee participation and league-specific analytics.
The site currently gets an average of 630 unique monthly users during the course of the hockey season, but has peaked at over 1300.
The main driving force to the website is the backend Golang script I wrote to collect and serve data to Firebase FireStore. Its hosted on a AWS EC2 instance and on pre-set intervals it collects available data and automatically updates FireStore.
The site is currently launched as an Angular website using Bootstrap as its main front-end design tool.
I have recently re-written the entire project in React using a Golang API. This API serves data from an MySQL database hosted on AWS RDS which still obtains its data from (a new) Golang script running on the same intervals.
This new site includes a ton more detailed statistics for individual referees which I was able to do by leveraging MySQL queries. I have yet to publish the new site.
The Pro Shop
The Pro Shop is a mobile application that is currently in its last stages of development. The app provides customers with real-time information on the status of their skate sharpening’s as well as wait times across all stores.
The second part of the app is an employee portal which displays currently open sharpening’s and has a simple drag and drop system for employees to move customer’s skates.
Its built in Ionic using the Angular framework and integrates Firebase for both Authentication and real-time data. The other driving force is a Golang API serving MySQL data. Both the API and Database are hosted on AWS.
GameSheet Scoring
During my time at GameSheet Inc I led the design and development of a brand new mobile app for referees to score live sports games on Android.
I led the pre-development planning and design for the Android app, created workflows for both technical and non-technical participants, and managed tickets for the project.
The app is built native for Android using JetPack Compose and Kotlin. An SQLite database held a majority of the local data which was served by FireStore and a Typescript API.
I also oversaw the deployment and testing for the entire project during each new iteration.
Referee Statistics Bot
In 2022 during the hockey season I had a fellow official contact me about getting a count for all the games they had worked in their career. At this point I had already had the idea of building a bot to retrieve historical and current data on all officials, so I wrote a Golang bot that not only retrieved all historical data but also updates the data each day.
I was able to retrieve base information and analytics on every game for a large number of leagues. With this data I was able write MySQL queries to display in-depth analytics on any/all officials such as: average game length, percentage of time games go to overtime/shootout, officials penalties per game, any many more.
Eventually, my plan is to build a website that displays all this information for anyone to view.
Discord Bot
One of my favorite projects i’ve worked is a discord bot that provides streams for any professional hockey league. When the bot is installed on a server, users can use the custom commands to display any available streams for a specific team or league.
The bot is written in Javascript using a custom Node.js server though it leverages a Python script to obtain the streams.