I am a recent graduate of the University of Pennsylvania, where I earned my MSE in Computer Science. In my free time, I enjoy biking, swimming, traveling, and baking. Explore this website to find out more about my experience and interests!
As part of CIS 550: Database & Information Systems, I worked with a team of three other students to develop a website with combines and displays data from Airbnb and Yelp about New York City to inform tourists about places to visit and stay. I implemented the backend as a REST API made in Python to perform queries on Oracle SQL and MongoDB datasets and return information in JSON. I also set up hosting for the backend and frontend sites using GCP and used NoSQL to allow users to login and store their favorites (displayed in the map above).
View ProjectFor my Senior Design project, I worked with a team of four other students to help patients with upper limb impairments by creating a cognitively engaging format for rehabilitation. I worked on modifying a line tracking game in JavaScript to keep patients engaged in the repetitive motions of therapy by collecting and responding to game performance and EMG activation in the affected muscles. The game uses a probabilistic model with Laplacian smoothing to queue harder scenarios--which are particular movements a patient does while pulling or pushing the robotic arm--more often
View ProjectAs part of CIS 555: Internet & Web Systems, I worked with a team of three other students to develop a search engine which crawled and indexed over 1 million web pages. I worked on the frontend and database aspects of the project, using Material Design Lite, Jtwig, & the Spark Framework to display the homepage (above) and results, and SQL to combine and retrieve the data from AWS RDS with an average query time of less than one second. Additionally, I implemented extra credit features such as location-specific results, image search, and displaying results from external APIs like Ebay and YouTube.
View ProjectAs part of CIS 350: Software Engineering & Design, I worked with a team of three other students to develop an Android app version of when2meet, a web app often used to schedule meetings by finding a common period of availability in a group of people. We used Firebase to store the meeting data and Google Auth to sign in users to the app.
View ProjectThis project was inspired by my experience with the Food Network website, which is sometimes hard to search for new recipes which use specific ingredients. With Recipe Finder, users can add the ingredients they have available and their quantities to the web app. Then, they can filter recipes based on ingredients and deviation (number of ingredients not in the Pantry that a recipe may have), tags, number of ingredients, difficulty level, time, active time, etc. The main tool I used for this project was web scraping with Beautiful Soup in Python. In the future, I plan to add more filtering abilities, use a database, add images of the recipes, and make adding ingredients easier.
View ProjectThe overall goal of this partner project was to create Sudoku playing and solving libraries in Haskell for the CIS 552 (Advanced Programming, Haskell) Final Project. To achieve this goal, we created four main functionalities: board generation, game play, game solver, and graphics. The game solver was implemented using inference with the AC-3 algorithm and backtracking (using a modified DFS algorithm) to create a solved board. Then, cells are removed from the solved board to create a game board of a specific difficulty. I mostly worked on the graphical interface for this project, which was implemented using the gloss package in Haskell. My GUI allows a player to select a mode and then click a cell and press a key to provide an integer input to the cell. The game ends once the cell is solved by the player, and then they can choose to play a new game.
View ProjectDuring COGS 001, the professor spoke a little about neural networks. In particular, We learned about the linear perceptron model and 0-1 loss functions. To help me understand the model and see what it could do, I decided to code this model in Python. I created two neurons following the linear perceptron model, one that enable addition, and one that enables subtraction. Above, the program has printed the weights of the two inputs on each neuron followed by some test inputs and the result. In the future, I will explore the machine learning capabilities of packages like scikit learn and see what else I can do.
View ProjectSentimentex is a web app that uses machine learning and natural language processing to determine the emotions present in a given text. It uses Google Cloud ML and Natural Language Processing (nltk), with Machine Learning through sci-kit learn (SVMs, Random Forest, and Logistic Regression models). It can recognize seven different emotions, including anger, joy, disgust, and sadness, and determines what percentage of each emotion is present in the text. It was influenced by those who have Asperger’s that cannot discern the emotions in text easily and was created with a team of two other hackers during PennApps. I worked on web-scraping & feature extraction for this project by scraping an online thesaurus for synonyms related to each of the emotions and creating a function to assign a value for each emotion based on how many related synonyms to that emotion are in the input text.
View ProjectFor the final OCaml homework of CIS 120, students make the MS paint application using OCaml. As part of this project, I implemented the ability to draw lines and ellipses by clicking and dragging, and the ability to draw a point or bunch of points by clicking. I also added a checkbox widget and a slider to change the thickness of the pen when drawing the shapes.
View ProjectCIS 555, Internet & Web Systems, is an advanced programming course at Penn which focuses on the issues encountered in building Internet and web systems, including: scalability, interoperability, consistency, replication, and location of resources, services, and data. A main product of the course is the final group project, where students create a search engine. As a TA for a semester, my responsibilities included grading homework and midterms, serving as a mentor for four project teams, & answering student questions during office hours and online.
Read MoreAs a SWE intern on Android Auto Embedded in San Francisco, I developed a functional prototype of a feature in the Android Open Source Project to save user temperature preferences for a vehicle & set the temperature automatically on a schedule. Over the course of the internship, I wrote design docs for the project with agreement from partner teams, completed my implementation, created a demo, and explored future directions. I also had a chance to explore SF with my fellow interns and helped organize a record-breaking global intern activity!
Read MoreCIS 350, Software Design & Engineering, is an advanced programming course at Penn which introduces the tools, processes, and techniques that are used by professional software engineers to create high quality software. A main focus of the course is a semester long group project which teaches collaboration and debugging skills through app development. As a TA for three semesters, my responsibilities included grading homework and midterms, leading discussions on diversity and mental health, & answering student questions during office hours and online.
Read MoreI worked on two studies during my three years at the Children's Hospital of Philadelphia's Center for Injury Research and Prevention: one exploring safety during a transition from autonomous to manual control of vehicle, and one on kids using highly autonomous vehicles (AVs). As part of this research, I programmed scenarios into the simulator in JavaScript, assisted with testing & trials, and wrote data processing code in Python. I have co-authored academic papers, and presented my work at the 2018 AAAM Student Symposium.
CHOP Blog
As an EP intern on a mobile testing team in New York, I created an internal web application for testing mobile ads which greatly reduces the complexity of adding tests and provides a more understandable GUI for users. The project was completed using Google App Engine, Python, HTML, CSS, Jinja, Flask, and Firebase, and then I integrated the web app with an existing Android app. I also had a lot of fun in the city, including visiting Coney Island and seeing two shows on Broadway!
Read MoreThe WiCS Mentorship Committee is in charge of connecting freshman and sophomores with upperclasswomen in computer science and related fields to advise & support them in their first semesters at Penn. I help to organize fun events for the mentors and mentees, and I also mentor students myself. Recently, I assisted the FemmeHacks committee by leading the Intermediate Web Design Workshop with a new Flask tutorial at FemmeHacks 2020 (slides here).
Read MoreThe Ivy League Undergraduate Research Symposium (ILURS) promotes undergraduate research and facilitates a community of researchers across the Ivy League. In 2017, I helped to design and code our website. As Director of Technology throughout 2018, I oversaw the creation of a digital Journal along with Android and iOS apps to guide attendees through their symposium experience.
Read MoreCIS 120 is an intro programming course at Penn which covers basic GUIs, data structures, code design and style while teaching the Java and OCaml programming languages. As a TA for three semesters, my responsibilities included: co-teaching a recitation section, grading homework, and answering student questions during office hours, review sessions, and in an online forum. In my last semester, I was an office hours TA.
Read MoreThe Automated Target Research Center is a research group under the Air Force Research Laboratory which focuses on targeting, sensing, and high performance computing research. I interned with the center for two summers. As a Wright Scholar during Summer 2016, I integrated 3D models from drone imaging into Google Earth & converted them to a military format. During Summer 2017, I worked on a project inspired by DeepMind's AlphaGo by implementing the Monte Carlo Tree Search algorithm using Python, adding heuristics to the algorithm, and creating a simulation of drone swarming using it.
Read MoreIn high school, I was very involved with my robotics team, FRC #245 the AdamBots. I was on three subteams and attended the World Championship in St. Louis in April 2015 & 2016. As Marketing & Outreach Subteam Captain for 2016 FIRST Season, I led the organization and presentation of our third annual Meet the AdamBots and Cyber Cats Event, which gives sponsors, parents, and prospective members an opportunity to see the AdamBots building our robot and hear more about how our team works. I also created and updated pages on the AdamBots website, was the editor of a monthly newsletter for sponsors and parents, wrote blog posts and manage social media accounts, and worked on programming autonomous portion of robot motion as part of the Digital Media and Programming subteams. After graduation, I have stayed involved with FIRST by volunteering as a referee and judge at the FLL championships held at Penn.
Read MoreI love traveling to different cities around the world to experience different cultures. Some of my favorite trips include visiting the Eiffel Tower in France, the Colosseum in Italy, and the London Eye in England, as well as ziplining in Jamaica. Most recently, I traveled to Shanghai and Beijing in China over spring break as part of a Penn Global Seminar.
PicturesMy favorite ways of staying active include biking and swimming. In the summer, my family usually goes to Mackinac Island to do the 8 mile bike ride around the island and enjoy some fudge!
Pictures