Programming Projects
Ableton Midi Controller
This is by far my most ambitious project to date. The idea is to create a custom, open source controller for mixing music. It has taken all of my skills with software development and embedded systems design to get as far as I have but I still have a long way to go. I started to project in January of 2024 and I figure it'll take me at least until mid 2025 to get it where I want it to be.
The project involves too much to go into detail on here so I'm planning on starting a Medium page where I write about different aspects of the project and what I've learned, so I'll link that here when I get the chance.
Sticking Pattern Generator
The Problem:
I picked up drum sticks for the first time in late 2019 and began teaching myself to play in hopes of accompanying my guitar recordings. I discovered that there are “rudiments”, which are patterns played by switching which limb you are using to hit the drum kit. For example: a common one is a paradiddle, which goes right, left, right, right.
I spent hours looking at YouTube videos and finding different patterns that other drummers use regularly but it was difficult to find unique ones to practice.
My Solution:
I had the idea of creating a web app that allowed users to generate random sticking patterns that alternated between left, right, and kick. I allowed the patterns to be up to fifteen segments long and added in a metronome to aid in practicing timing.
The project is an exercise in creating simple, clean, responsive user interfaces and I learned a lot in the process of making it.
Discord Music Club Bot
The Problem:
In 2021 / 2022 I started a book club but for music with a bunch of my friends on a Discord server that I run. The idea was that we could all make suggestions for an album that we wanted to listen to each week, vote on one winner, and listen to it together while sharing our first impressions.
Eventually we had enough people that it was becoming difficult to manage who listed what suggestion and to handle the process of voting.
My Solution:
I figured I could make a bot for Discord that automated the entire process for me by keeping track of each user’s most recent suggestion and putting up a poll with all of them 24 hours before the meeting.
It worked quite well! We decided at some point that the last week of every month should be changed to have everyone add one song to a playlist that we all listened to together rather than voting on an album and I updated the bot to handle that scenario and it served us well until we stopped doing the music club sometime in 2022.
Professional Experience
Motorola Solutions
Jan 2022 - Dec 2024
APX Next
I started my professional career post grad school at Motorola Solutions on the APX Next team developing the back end for their radio communication systems. My advanced wireless experience fit in perfectly with the kinds of infrastructure needed to keep everything working working smoothly with the consistency expected for use by first responders. I worked largely with Elixer and Python for about a year until there was a reorganization within the company.
Environmentals
I got most of my Spring and Angular experience from the second project I worked on, which was a web interface for sensors that trigger on an event such as when a door opens. I had the most experience with Java on the team so I started with a focus on the back end and transitioned to the front end once my co-workers became more comfortable. I had used other reactive web frameworks in the past so adapting to Angular wasn't difficult.
Backup and Restore
My third team integrated Kopia into the existing Motorola backup services. It was largely written in Python and Bash and expanded my experience with virtual machines and pipelines.
Iowa State University
2020 - 2021
I worked three different positions during my time at Iowa State University while pursuing my master's degree:
Graduate Research Assistant for the ARA Project
In 2020, while I was working on my master's, I was brought on to the ARA Project by the director, Hongwei Zhang, to do preliminary work looking into software defined networking. I participated in a research group that met weekly to discuss academic papers related to advanced wireless networking. A couple of months into my work, we received a $19 million grant from the National Science Foundation to continue the project, which involved creating the world's first advanced wireless testbed for agricultural purposes.
Teaching Assistant for Advanced Wireless Networking
Professor Zhang was impressed with my work with the ARA Project, so he asked me to assist him with his Introduction to Advanced Wireless Networking class. I guided students through the curriculum during my office hours and graded homework assignments.
Teaching Assistant for Embedded Systems Programming
Intro to Advanced Wireless Networking was only offered once a year, so during the last semester of my master's, I was a TA for an intermediate class where I led multiple two hour lab sessions every week alongside my office hours. I gave a basic overview of the concepts needed for the lab at the beginning of each session and checked code functionality and quality when students demoed their working projects.
Power Electronics International
Summer 2018 - 2020
I worked at Power Electronics International every summer and winter starting in 2016, taking on multiple projects over the years.
My earliest program was written in Python and used Tkinter to keep track of electronic components we purchased for prototyping.
I taught myself how to do reactive web development using node.js and vue.js and developed a data collection and display app that ended up at around 10,000 lines of code written.
Education
Iowa State University
2016 - 2021
Bachelor's in Computer Engineering
Fall 2016 - May 2020
GPA: 3.28 | Major GPA: 3.63
Master's in Computer Engineering
Fall 2020 - Fall 2021
GPA: 3.84
Advanced wireless focus area
Music
Stalled
"I think I can safely say that Stalled are just about my favorite live band in Chicago right now. Their music has everything I love to hear in a live music context- slow, moody passages, effect-drenched guitars, intricate rhythms, and unbelievably powerful sonic explosions when you least expect them. Their music is patient, visceral, emotional, and powerful. These are three of the coolest cats in Chicago making some of the sickest music I have ever heard. The last 3 shows I have seen them play recently - at Hideout, Cole's, and last night at Schubas are burned into my memory. They are constantly pushing boundaries and writing/playing new songs, a testament to their commitment to this music. There are things this band can do that no one else can.” - Shravan Raghuram
Since 2022 I’ve had the pleasure of playing drums in the post-hardcore band Stalled. We recently released our debut album Dust Inside a Dream, which was recorded by the three of us in our practice studio with myself taking the lead on the production, engineering, and mixing of the record. Check us out at the links below!