search
Personal Website
Built as a way to organize my projects and have a public-facing profile, this is a single-page application
built on Vue, Vuetify, and Nuxt. It is deployed as a static site.
JavaScriptES6ES2015VueNuxtMaterial DesignSPANode.js
Nurse Roster Builder
An application to build out the requirements for a workforce of nurses, nurse practitioners, and doctors.
Originally created as a part of UMBC's CMSC 447 course. In this project, I designed most of and implemented
all of the UI side, which both compiled to an Electron app and transpiled to a web app. I also worked with
the team member who implemented the algorithmic backend to make a JSON specification for mapping between
the UI state and the input for the backend process.
JavaScriptES6VueVuexMaterial DesignSPAElectronNode.jsJSONJavaOptaplanner
Natural Language Processing Research
With funding from an Undergraduate Research Award from UMBC, I conducted experiments to inform
machine learning models for sentiment detection. With Dr. Frank Ferraro's advisory, I designed
the associated experiments, created a small web application to act as a survey for the experiment,
and trained natural language processing models based on that data. I presented my progress at UMBC's
Undergraduate Research and Creative Achievement Day during a poster session.
2018-2019
ResearchMachine LearningNatural Language ProcessingPythonJavaScriptUMBCUndergrad
Goldman Sachs Internships
During my summers in 2018 and 2019, I was at Goldman Sachs as a Summer Analyst.
While there, I had the opportunity to work with various technologies having to do with
messaging frameworks and interfacing with usage data from those messaging operations.
- My summer 2018 project involved collecting graph-based data about messaging service usage. I built a full-stack service which injested this data into a JanusGrah instance and served it as JSON to a graph representation as a component in a larger React application.
- My summer 2019 project involved collecting messaging usage data from a variety of sources and building a dashboard of analysis metrics. The data collection and processing was done using the Apache Kafka Java API. The analysis dashboard was built in Kibana after being inserted into an Elasticsearch data store.
ReactJavaScriptJavaGraphsJanusGraphGremlinTinkerpopKafkaElasticsearch
Comic Tracking Extension
This is web scraping and RSS subscription application that builds and tracks a database of
webcomics and their updates. The backend service is to be accompanied by a Google Chrome
Extension that stores a local list of comics and checks in with the backend for updates.
This project is part of an ongoing effort of mine to create a suite of tools that allow
users to keep track of and support artists whose work they love.
Ongoing
TypeScriptJavaScriptNode.jsChrome ExtensionNeo4jGraphs