work
Impact.com
Senior Full-Stack Engineer I · May 2021 – Present
Part of the data visualization team, I work across our stack to develop features that allow our customers to view in depth analysis of their data through completely customizable and dynamic report building.
CGI Inc
Associate Consultant · January 2021 – May 2021
HMB Inc
Associate Consultant · June 2019 – January 2021
While working at HMB I worked with various technologies and clients.
Miami University
Student Associate, IT Services · 2017 – 2019
projects
AWS Discord Bot
A Discord bot that starts and stops an EC2 game server on demand. Deployed to a Raspberry Pi.
Developed a simple Discord bot to manage an AWS EC2 instance. The primary purpose is to host a game server, which the bot will stop or start based on user commands. Developed using TypeScript and deployed locally to a Raspberry Pi with Docker.
Brewed Awakening Website
Ecommerce site and admin portal for a local coffee shop, fully integrated with their Square account.
Worked with a local coffee shop to design and implement a web application to help expand their online presence. For easy management the application integrates entirely with their Square account. The front end consisted of a user-facing ecommerce application and an administrator portal. Both were developed using React, Redux, and TypeScript. The backend is a Node.js RESTful API. Basic information is stored in a MongoDB database hosted on MongoDB Atlas. Deployed using Docker to an AWS EC2 instance with NGINX acting as a reverse-proxy.
KanjiDraw
A WaniKani companion app for browsing kanji, vocab, and radicals. Built when no existing app felt right.
One of my hobbies is learning Japanese and one of the tools I use is WaniKani, a website focused on one of the Japanese writing systems, kanji. Given there is no official app and the unofficial apps always left something to be desired, I started work on developing my own. Still in early stages of development, KanjiDraw is written using React Native and TypeScript. Current functionality is limited to basic statistics around lessons/reviews and browsing the various kanji, vocab, and radicals that WaniKani has to offer.
Order Display System
Custom order ahead system for mobile coffee shop orders
I wrote an order display system for Brewed Awakening Vermilion to notify workers when new online orders were placed for local pickup. This system runs on a Raspberry Pi Zero that hosts a Node JS web server. I used the Express and Bootstrap frameworks to display the orders page. Orders are read by a Python script which passes the data to the server through a websocket which would then pass it along to the front end. I also took advantage of the onoff node module to manage buttons wired directly to the Raspberry Pi. This allowed for employees to interact with the system to remove orders when they have finished fulfilling them