I'm currently working in San Francisco at two internships with plans of attending graduate school for an MS in computer science during the fall of 2019.
During summer 2018, I am fortunate enough to be working for Capital One as a software engineering intern. I’m currently working on a full-stack web application using React.js, Redux, Node.js, Express.js, and Python. My team is cross-functional, composed of designers, product managers, and engineers one the same team. We practice Agile development practices, mixing a combination of scrum and kanban boards. Some of the interesting aspects of my internship are developing new features that span across the entire tech stack and constantly iterating on the implementation until it’s scalable and understandable.
Over the summer of 2017, I worked with a development team on a call taking service for taxi dispatchers. The goal is to replace human call taking with an interactive voice response (IVR) system capable of understanding customer speech and converting calls into actionable requests dispatchers can satisfy. Two of the largest strides the company made during the summer was improved UX design (keeping interactions succinct) and accuracy (processing correct locations).
Ever since spring of 2017, I’ve served on course staff for the Computing and Information Science Department at Cornell University. I love sparking interest in the field and teaching peers the ins and outs of computer science, as prior teaching assistants and professors have done for me. I’ve served on course staff for:
The spring of my sophomore year, a group of developers and designers had a vision to make Cornell’s newspaper, the Cornell Daily Sun, available on an iOS app.
On this project, I’ve taken a much more active role in the backend Wordpress development for the app. I develop a RESTful API in PHP that the iOS mobile application can request information from like articles, categories, and other Cornell Sun data. More of my responsibilities include developing high-level specifications, guiding general codebase architecture, on-boarding new Wordpress developers, and presenting our product to the editors of the Cornell Daily Sun.
The fall of my junior year, I paired with a fellow developer to create a mobile application that classified articles by their expected target audience. Leveraging the immense amount of data the Cornell Daily Sun stores about its articles, we were able to create a Naïve Bayes classifier that took in the words of an article and predicted the article’s most likely readership. We split the age groups into 3 buckets: 18-24, 25-44, and 45+. Using a bag-of-words feature vector for each article, we were able to achieve approximately 76% accuracy on our training data of 800 articles, split 70% training and 30% testing.
To learn more about our project, read our technical report, or go through our slide deck, see the GitHub repository linked below.
As our final project in my Cloud Computing class, I collaborated with another student to create a scalable music streaming and recommendation service. Although the primary focus of the project was scalability, we also created a machine learning model to produce music recommendations for each individual user. We leveraged Spotify’s developers API to allows the user to actively stream music and generate feature vectors for each song. The application uses Node.js, Express.js, ml.js, and JSX and was hosted for testing purposes using Amazon Lightsail and DynamoDB.
As a final project for my functional programming class, I worked with 3 other teammates to create a Terminal-based version of the game Stratego. In a timeframe of 9 days, we fully developed the logic behind the game, an ASCII visualization of the board to be displayed to the user, and a x-y coordinate movement scheme for the user to move pieces. We also included a simple bot using a minimax algorithm and probabilistic modeling to pick its moves for the user to play against.