Versed in Design Thinking

What do a BS Mechanical Engineering, board game consulting, academic tutoring, and software development all have in common? They all require analytical thinking and learning on the job while being accountable to conveying those ideas to a client.

I'm excited to continue using those skills while working on the applications and programs that are connecting the world.

Find me on LinkedIn

Flexible Web Development

JavaScript Node.js Python C# React Redux Flask PostgreSQL Express HTML CSS C++ Git Docker AWS

It was during high school that I taught myself my first programming language (BASIC on the TI-82 calculator). Though I don't program in BASIC anymore, I've been keeping up with lots of new technologies ever since in both formal education and self study!

One thing I espeically like about programming is how many approaches there are; that means there's almost always something interesting to learn from friends and coworkers!

Find me on GitHub

Motivated and Team Focused

"If you want to go fast, go alone; if you want to go far, go together."

Having worked on both proof-of-concept personal projects and product-focused team projects, I've seen both sides of this saying. That experience allows me to contribute to and even form different teams confidently.

My Resume

Projects

These projects range from academic group projects to side-projects that automate community management (there's even a game in there). Key technologies will be listed under the project's title.

rtmc

Remember the Milk Clone

Express / Sequelize / PostgreSQL / React / Redux / CSS3

This single-page todo list app allows users to create, update, search for, and delete tasks and categorization lists. Tasks also included text notes and due date categorization to allow users to better prioritize them. The entire application was styled using non-package CSS3 attributes to maximize browser compatibility.

Live Site Repository
potl

Prophets of the Labyrinth

Discord.js

This multiplayer rogue-like game was built using Discord.js and plain JavaScript. It uses Discord's buttons and select menus to provide the UI to play the game and gets to implement object-oriented programming (OOP) patterns such as Strategy Pattern, Observer Pattern, and Factory Pattern. While developing it, I optimized deployment (DevOps) using GitHub Actions to automate repetitive steps such as wiki updates and syncing sponsors credits.

Repository
teachables

Teachables

Flask / SQLAlchemy / React / Redux / CSS3 / Docker / AWS S3

This app allows users to post tutorials and comment on them. The PostgreSQL database was designed to allow tutorials to include any number of steps. Additionally, the project utilized AWS S3 to improve scalability of image uploads allowing users to add images to project headings and all sections.

Live Site Repository
enc

Evernote Clone

Express / Sequelize / PostgreSQL / React / Redux / CSS3 / Tiptap

This notes app allowed users to search, create, edit, and delete notes and notebooks for storing those notes. It includes the rich text editor library Tiptap to allow users to save detailed notes with visual styling. I designed the React components to provide immediate user feedback using modals and validation error messages.

Live Site Repository
eh

Extension Hunt

Express / Sequelize / PostgreSQL / Pug / CSS3

This app allows users to post pages for VSCode Extensions then comment on and upvote those pages. It includes DOM manipulation authentication to allow login from any page of the application. This project utilizes a many-to-many db relationship for extension categories to allow extensions to qualify for multiple categories.

Live Site Repository
RolesBot

RolesBot

Discord.js

This light-weight Discord bot allowed moderators to set up a whitelist of roles that server members are allowed to give or remove from themselves. It takes advantage of modern Discord features including slash commands and select menus as well as the age-old "human readable error message" to provide an intuitive user interface.

Repository
DirectoryBot

DirectoryBot

Discord.js

This now-archived Discord bot allowed users to store, edit, lookup and delete their usernames for various platforms. The service was maintained from release to sunset (2 years of deployment) through major library updates utilizing latest features, resolving vulnerabilities, and fixing bugs. Sensitive user data was protected by encrypting stored data and the bot featured a locale-sensitive localization framework to automatically respond in the user's set language.

Repository