I graduated from Carnegie Mellon University School of Computer Science in 2018 with a major in Computer Science and minors in Machine Learning, Business Administration, and Robotics. For more details, please feel free to contact me!LinkedIn
You can contact me by email at FirstName.MiddleInitial.LastName@gmail.com. My middle initial is P.
If you were trying to reach me at email@example.com or firstname.lastname@example.org, those email addresses are unfortunately no longer valid. Please use the address mentioned above instead.
I recently competed in the Tartan Finnovation challenge, winning first place with a pro-active budget chatbot called Budget Bot. The app allows users to easily keep track of their budget through three convenient channels: web, Facebook Messenger, and Amazon's Alexa. Feel free to view the presentation that I gave during the competition, or try out the fully functioning prototype at with accompanying Alexa Skill and Messenger bot.
Recently, I've been playing around with using LSTM neural networks to generate fake tweets. Some of them were pretty funny, so I made an Alexa Skill to let people try to guess which ones are real.
Automated Reverse Engineering
I also recently published a paper at ESEC/FSE 2017 titled Suggesting Meaningful Variable Names for Decompiled Code: A Machine Translation Approach, which earned third place in the ESEC/FSE student research competition. [Preprint]
ESEC/FSE 2017 Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, 2017
Multilingual Image Caption Generation
Generating captions for images using German and English training data is another fun project. Generating Image Descriptions using Multilingual Data
Internship at Jump Trading
In the summer of 2017, I interned at Jump Trading in Chicago working on additional features for their trading platform.
Internship at Google
In the summer of 2016, I interned at Google, developing a framework to help improve the quality of online-to-offline conversion tracking.
Internship at Knewton
In the summer of 2015, I interned at Knewton, developing a load testing tool for adaptive learning software.
Internship at Snap-on Business Solutions
In the summer of 2013, I developed programs at Snap-On Business Solutions for tracking database relationships and project dependencies. The programs used a Java servlet backend interfacing with SQL Server to store data and an AJAX-based frontend.
Internship at TMW Systems
In the summer of 2012, I worked at TMW systems assisting with software projects including code branch management, file attachments, and automated emails.
See more projects on my GitHub page.
I currently serve as president and team captain of Carnegie Mellon's Mock Trial team. I've competed in mock trial since high school, and I find it to be a great opportunity for me to broaden my skills beyond technology.
At Steel Hacks, our team built Sighting, an iOS app that links people with similar interests into groups allowing them to track things they're interested in (such as tech talks, free food, service opportunities) or want to avoid (such as crime, pollen, diseases). Sighting is a crowdsourced extensible platform that users can use to track anything they want and find places they might be interested in, in real time. Users form groups they can use to monitor common interests and are notified in real time when and where these events occur in their area. The app won two awards: "Most Impactful" and "Best use of AWS." The source code is on GitHub: Server, UI.
At Tartan Hacks, our team built Storytime, an interactive jogging app that builds a story as you run. The app ultimately ranked top 6 at the competition. Start running the app as you start your physical run, and find yourself in the middle of a mystery story that the app reads to you. Yet the environment of this story is oddly familiar. The characters are speaking in terms of places close to you! To hear the next part of the story, you must travel to one of the locations mentioned by the characters. The way the story unfolds depends on which location you pick. And each time you use this app, the locations are randomized, as are parts of the story, leaving you with a new adventure every time. Syncs with Jawbone UP data to personalize the story to your realtime run statistics and to match the run length to your daily goals.
I've had the amazing opportunity of serving as part of the Solon Middle School and High School Science Olympiad teams for 6 years. I was a part of four first place finishes in the national championship, and won two gold medals at the national level (Road Scholar and TPS).
I was also the club's official webmaster for two years, and the official scorekeeper for one.
It has been an incredible experience for me. Through the years, I've built catapults, robots, finely-tuned springs for bungee dropping, scramblers, Rube Goldberg machines, robot arms, and battery-powered vehicles. I've learned about astronomy, cartography, freshwater, glaciers, circuits, electrochemistry, simple machines, remote sensing, estimation, fossils, and more. While I may not remember all that I've studied, I will certainly remember the anxiety of a sensitive mechanical, the exhilaration after a successful award ceremony, and the joy of having fun with friends.