Here's the obligatory resume. Personally, I'd skip it (it doesn't SAY anything!) and read this page instead, but you're the web surfer...I've also put together a list of classes that I've taken. I wrote it for my own reference, but I'll share. :)
Currently I'm working at the MIT Media Lab with Professor Pattie Maes and the Software Agents Group. My thesis project is called "Hanging Messages" and involves a messaging system that allows the sender to specify not only the recipient of the message, but also the time and location that the message is delivered. Basically this involves using Internet-capable handheld devices to send and receive messages, and GPS to determine location so the client device knows where it is, and can query specifically for messages at that location. I think it's just starting to get interesting: In addition to the basic functionality, there's a lot of possible e-commerce applications, as well as client filtering ideas that could be implemented. Anyhow, I'll see how it goes and how much I can ACTUALLY finish this year.
Last summer I worked at Closedloop Solutions, Inc., which is a small startup company in San Carlos, California, about halfway between San Francisco and San Jose. The most intense part was working on the late July release of Spendcap 2.1, which was basically our first customer release of a full-fledged application ever. Most of my work there was Java servlet programming, but I also somehow managed to acquire responsibility for practically all of the PL/SQL scripts we used to set up and maintain the databases. PL/SQL is a LOT less flexible and robust than Java. There were a bunch of long days and missed weekends during the last few weeks before the release date, but I'd say we made up for it with our marathon ping-pong matches, movie breaks, and company lunches.
I did my Advanced Undergraduate Project with Professor Daniel Jackson of the Software Design Group at the MIT Laboratory for Computer Science. I worked with Manu Sridharan on a visualization tool for Alcoa, an object modelling software package. We wanted to make the resulting visual output as intuitive as possible for the user, so we allowed a lot of customization regarding which objects were visualized and how they were displayed. The customization interface was written in Java, but Dot, an existing program, was used for the layout. We used XML to store the data when it was being passed between modules, since it's a very flexible and descriptive format. If you're really interested you can read my final report, entitled Visualization Tool for Object Model Analysis. It's a postscript file, since I'm a wanna-be LaTeX junkie.
I also spent a few months at the Media Lab with the Digital Life Consortium during my junior year. I used Java (Swing) to write an interface for a scalable multicasting project that was Dean Chen's thesis. The multicast idea was pretty interesting; he used every client as another server, thus making the system scalable, and there were some other features like time-delayed broadcast, but I mostly focused on the GUI and didn't get to think too much about the rest.
I spent about a year working for MIT Information Systems as an Athena Consultant. As a consultant, you answer any questions that people have that involve Athena, MIT's UNIX-based campus-wide computing facility. Some of the questions are pretty standard, and there are stock answers. Others require digging through old questions and doing other research to figure out. Some questions are really obscure, off-the-wall, or just plain difficult, and the full-time consultants usually end up answering those. I appreciate Athena a lot more now that I've found out some of the cool things that it can do.
During the summer of 1998, I worked at UMAX Technologies in Fremont, California. They were installing SAP and had a bunch of random little programs that they wanted someone (not the $200/hr consultants) to write. In the end, I'd worked on a bar code scanner program, an ABAP/4 (SAP internal) program, messed around with GenTran and EDI, and hung out with the MIS group long enough to learn how to crimp Ethernet cable. That was also the first time that I'd been instructed in Chinese; my boss, Jenny Chuang, was from Taiwan, and taught me a lot about working in industry, in addition to the technical stuff that I did.
Before that I worked another research job with the Programming Methodology Group at LCS during my freshman summer, and taught for Day School Summerbridge in high school. Summerbridge is a whole other story in and of itself, and I can't do it justice in a few sentences. I did write about my experiences in my Tau Beta Pi Phase I Essay (postscript again), which you can read if you want to hear more.