Hi, I'm Chris

About

I'm a software developer, creative thinker, and problem solver. I have a background in education, music, and arts technology, with experience in collaboratively planning and executing long-term projects. My skills in improvisation and love for learning have allowed me to quickly grasp new ideas in the JavaScript and Java ecosystems and integrate them into high-quality results. I'm a graduate of the FastTrack Java Developer program, completed the University of Helsinki’s Full Stack Open web development curriculum, and hold a Bachelor’s degree from Johns Hopkins University. I value education and helping those around me realize their potential.

Harmony Helper

A tool for music theory students to check their species counterpoint assignments for errors. Students can enter their counterpoint compositions and receive feedback on their adherence to species counterpoint rules and guidelines. The app features keyboard shortcuts to simplify inputting music notation on a webpage, and the analysis code runs entirely in the browser to accomodate students with limited internet connectivity.

Care Chronicle

A patient health record administration tool. Providers can view a patient's medical appointment history and add new entries in one of three categories: Health Check, Hospital, or Occupational Healthcare. Each entry type accepts the relevant data fields. The app includes a CI/CD pipeline to lint/build the frontend and server, deploy the app, and version tag each release.

Social Media API

A RESTful web service with 30 endpoints for interacting with Twitter-like data entities: users, tweets, hashtags, and mentions, including services to handle data parsing, validation, and business logic. The API was developed in an Agile team and supports operations such as getting a tweet's chronological context, reposting and liking tweets, and following/unfollowing users.

Who's Who

A musical guessing game utilizing the Spotify API. Includes gameplay modes Easy, Medium, and Hard, allowing for one or multiple genre selections, and a leaderboard to record high scores.