What a hypocrite I am! I make grand claims that I'm going to write about the internship interview process with radical transparency, but as soon as things get interesting, I evidently go right back to stony silence. Time to fix that.
As a programming languages researcher, I believe that a huge variety of software engineering problems can be fruitfully viewed as PL problems. I believe that at a lot of companies, over time, a standard-issue software engineering job can be made into a PL job, and maybe that will be my superpower someday. But this is a thirteen-week internship we're talking about, and that limits my choices a lot. For me, right now, thirteen weeks only seems like enough time if I know the job is PL-flavored from the start.
Happily, someone wants to give me such a job. I'm going to be working at GrammaTech this summer. They make static analysis tools that help people understand large software projects. They do a lot of work for organizations like NASA, where it's important that the code not be wrong. They're located in Ithaca, New York, which, I understand, is a beautiful place to spend the summer. A few people I know from the programming languages community have worked there. The internship itself seems promising: I think I'll learn a lot, and I really like all the folks there with whom I've had dealings so far. It looks like I will be working for Dave Melski on a software security-related project, which I think ties in neatly with some of the stuff I will be learning about with Amal eventually. I'll even get to hang out at Cornell and take a course this summer. Both work and the Cornell campus will be within walking distance of the apartment where I will be staying.
The thing about GrammaTech that really makes me excited, and that has been untrue of every other place I've interviewed, is that the very first question asked of me was "Tell me about your research." This is how researchers shake hands. It was exactly the question I wanted to be asked, and exactly the sort of thing that, for instance, Jane Street didn't ask.
I've had my eye on this internship for quite a while. (Putting "Scheme" on a job posting is a good way to get my attention; throw "compilers" on there, too, and I start salivating.) In fact, I applied shortly after I started grad school in fall 2008, hoping for a summer 2009 internship; I did the same at Streamtech and Jane Street. In each case, I got form letters of thanks and not much else. With another year of school under my belt, I applied at the same three places last fall for summer 2010. By that point, my application was apparently strong enough that all three of them wanted to talk to me, and I received offers from GrammaTech and Streamtech. To me, this is clear evidence that for me, grad school works, and that coming to grad school to study PL was the right thing for me to do. I wanted to have a shot at doing things like this, and it looks like I'm getting it. I'm very excited.