All projects/experience

Album of the Week: Automation Chair

Dec 2023 - May 2026, Lead Dev/Product Eng for 200+ member university club

ReactExpress.jsPostgreSQLTypeScriptRESTGitHub ActionsProject Management

Disclaimer

This is a somewhat involved breakdown of my 2 and a 1/2 year technical project as the Automation chair for Album of the Week. We will get into the weeds a bit about the project in various ways so for a lighter summary, refer to my resume


Overview

Album of the Week (AotW) is a university affiliated club at Texas A&M University in College Station. We discuss a musical album every week and as of Fall 2025 we have 200+ members and roughly 50 DAU. In short we have 2 external services that run in tandem:

as well as 2 behind the scenes ones:

The service I developed for it ties deeply with the function of the club, so an explaination of it is in order.

Background

Every week, we have a genre that we aim to discuss (this is on a weekly rotation of different genres) and our members can each nominate an album that they want to talk about on Monday night. Then, after a day has passed every member can vote on the albums they want to talk about, and then finally the next day between the most voted 5-6 albums we randomly decide (weighted to the number of votes each album got) which album to discuss for the week.


Architecture / Technical Breakdown

tamuaotw.com

This website is a React.js & javascript frontend with a Express.js & Node.js back end. In the front end we handle basic club info (live event updates, about me, etc.) and mainly the album selection process (explained above in the Background section).

handling album selection:

Discord bot

The discord server for AotW is our main form of communication. The bot handles timed announcements in the discord currently; it used to, however, handle almost all of our business logic (I plan to write a blog post soon about the ups and downs of that decision). The bot is written in javascript and interfaces heavily with Spotify api and Google drive api, and is directed by our digital ocean business logic now.

Digital Ocean serverless functions

DigitalOcean serverless functions are a cost effective way to crystalize most of the business logic in the cloud and make sure that it runs properly (hosting for the discord bot has historically had many issues). In addition to having a better uptime record than the discord bot, serverless functions have quicker deploy times/improved CD setup, more accomodating structure for future features, and of coruse a lack of interdependence on the discord bot.

PostgreSQL database

The database is pretty simple, there is storage for our events, discussions, members, etc. and data is populated daily by the digital ocean business logic. Schema design and general storage architecture for this wasn't terribly demanding or complex; the use case just isn't there for a very involved PSQL solution


Project Management / Soft Skill Growth

I've spent 2 and half years as a dev for Automation within AotW, and a year and a half of that as the chair (i.e. the lead). In terms of operations, my goals going in taking the position were to:

  1. Iron out DevOps and give the team a reliable way of allocating engineering hours, roadmapping features, and resolving bugs.
  2. Create CI/CD and testing tools so that we can reliably and quickly ship features.

To this end I implemented:

Overall my guideposts when it came to my time at AotW were to design features that focused on reliablity and maintainability. This includes changes to how development is orchestrated internally; the code relies on us to maintain it after all.


Summary

Automation work for AotW is a multiyear project that I've undertook that gave me experience in fullstack web development, technical project management, and much more. It's become a cornerstone of my journey as a software engineer and has shaped my views on how leadership, good code, and proper engineering is conducted. Reach out if you have any questions!