The only thing that I love more than teaching and helping others is learning and expanding my own knowledge and abilities. I hope to be a student until the day I dieyeah, I'm one of those people. I know that I want to work with computers professionally, whether that is with microcontrollers in embedded systems or through software development for desktops or mobile platforms. I want to be challenged by what I do, to be proud of what I have done, and to have the opportunity to meet awesome people. I know that just having these wishes isn't enough in itself though, so I strive to make my work ethic and myself worthy of those desires.
5535 Beeler Street
Pittsburgh, PA 15217
B.S. in Electrical and Computer Engineering | May 2015 (expected)
Computers have always been a passion of mine ever since I was a little kid. After learning to program in Q-BASIC when I was 11 years old on an outdated Windows 98 machine, I started playing around with electronics and trying to build things with whatever I could get my hands on. In college, I decided that I would turn this passion into my career. Along the way, I also picked up a second majorEngineering and Public Policybecause I believe I need to know about how the world works first in order to make a difference in it.
Software Development Intern | May 2014 - August 2014
Design Engineer Intern | May 2013 - August 2013
I was tasked with using the Force.com platform (PaaS) to design and implement a data model back end for an internal-use iOS application and to write the corresponding REST API. I also created scripts for automated processes such as QR code generation, tested the iOS application throughout the development process, responding to user feedback and working hand-in-hand with a fellow developer to improve upon the existing design. At the end, I also developed tools to provide reports and analysis of the data collected to promote key insight and understanding of the results.
Teaching Assistant | January 2014 - Present
For 15-110: Principles of Computing at Carnegie Mellon University, I perform the typical teaching assistant duties of grading assignments, proctoring exams, and holding office hours. I also lead a weekly recitation where I demonstrate ideas taught in lecture to students and guide them through several problems related to the topic of the week. I've also created assignments and provided feedback on the design of other assignments and exams.
Technical Clusters Manager | February 2012 - December 2013
I maintained key computing assets across campus and was responsible for reporting and resolving technical issues related to both software and hardware. I also trained, interviewed, and oversaw fellow student employees and worked together with other students and faculty to resolve issues. I also did some development work prototyping potential new tools that Cluster Services was considering adopting at the time.
Described as a nanoblogging site for curmudgeons, Grumblr will feature user accounts, follow and block features, commenting, the ability to "dislike" posts, editing, searching, and lots of opportunities for complaining and grumbling.Classwork, Web Application, Bootstrap, Django
My friend challenged me to compete in a stocks game with him. Since my summer internship meant that I couldn't do any day trading myself, I decided to write an AI for it in Python. With $2,000 as an initial investment, my AI made a profit of $93.81 in about two weeks.Personal Project, AI, Stocks, Python
Using the Freescale APS12C128 module and serial PC communication, my lab partner and I created a maze game from scratch for our final project. It uses analog-to-digital conversion, interrupts, scheduling, state machines, and other embedded systems concepts.Classwork, Hardware, Embedded Systems, C, Assembly
In Verilog, I designed a complete structural floating point unit in hardware that (more-or-less) follows the IEEE 754 floating point standard. I also wrote testbenches that compared my design to the computer's internal floating point unit several million times.Classwork, Digital Design, Verilog
I wrote a robust framework in Java that performs the server-to-server communication needed for general map/reduce tasks. For validation, I wrote word count and word suggestion (trying to predict what the user is going to type) in my framework.Classwork, Software Design, Networking, Java
Inspired by all the wonderful animated movies I've seen since I was a little kid, I decided to write a simple ray tracer from scratch. Although it could be faster, it supports specular and Lambertian reflections for spheres and half-spaces, all under 350 lines of Python code.Personal Project, Graphics, 3D, Python
I worked together with a partner using GitHub to write a HTTP proxy server that supports parallel GET requests and basic caching of responses. Popular websites such as YouTube, CNN, and Reddit were fully functional through our proxy server.Classwork, Networking, C
For my first college programming course, I decided to create a game because I was always interested in the concept of designing an AI system. The inspiration for this game came from the real-time strategy and tower defense games of my childhood, but with a modern twist.Classwork, Game, Python
I wrote somewhere once that the third-rate mind was only happy when it was thinking with the majority, the second-rate mind was only happy when it was thinking with the minority, and the first-rate mind was only happy when it was thinking.A. A. Milne, War with Honour, Macmillan War Pamphlets, Issue 2 (1940)
The brick walls are there for a reason. The brick walls are not there to keep us out. The brick walls are there to give us a chance to show how badly we want something. Because the brick walls are there to stop the people who don’t want it badly enough. They’re there to stop the other people.Randy Pausch, The Last Lecture at Carnegie Mellon University (2007)
Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle. As with all matters of the heart, you'll know when you find it.Steve Jobs, Commencement Address at Stanford University (2005)
If we listened to our intellect, we'd never have a love affair. We'd never have a friendship. We'd never go into business, because we'd be cynical. Well, that's nonsense. You've got to jump off cliffs all the time and build your wings on the way down.Ray Bradbury, The Reader's Digest, Volume 140, Issues 837-842, p. 181 (1992)