jueves, mayo 18, 2006

Jim Gray interviews Werner Vogels (CTO of Amazon)

(vía digg.com->acm-queue) Jim Gray, inventor of the transaction abstraction, ACM Turing Award, currently a researcher at Microsoft Reseach, interviews Werner Vogels (current CTO of Amazon and previously researcher at Cornell University, working with Ken Birman's group). Below you can find the 2 latest questions of the interview:

JG You spent time at universities. What do you think about what they're doing now?

WV Different groups at Amazon interact with academia. Often a service needs to develop new revolutionary technology from scratch, and they will look at who in the research world worked on these topics before and who can help out.

As an example, at the infrastructure level we are building several systems that are a synthesis of some of the very exciting decentralized computing work that has rocked the operating systems and distributed systems world in the past few years. But we are finding that much of the academic technology is just not complete enough to be applied in real-life systems, as incomplete assumptions were often made. This may have been OK in an academic setting as it allowed for technology evaluation in isolation, but it just doesn't work in real-world engineering. The limitations of the physical world mean you have to work under certain constraints, regardless of how you would like it to be.

This requires us to do a lot of advanced development to fill in the gaps that these research technologies left behind. As a reward for this extra effort, we do end up with technologies that are extremely robust and are simple to deploy and manage.

JG Can people in academia help Amazon? What would you say about the current university situation?

WV I realize that it's hard in academia to do research at the scale of operation that Amazon requires. So we don't look to academia to solve those challenges for us. We're building data sets here at Amazon, however, to provide to academics so that we can get interactions going on some of the issues where they can contribute.

We have a number of internships and sabbatical positions where Ph.D. candidates, as well as professors, can spend some time in a very high-tech production environment. I really urge students to take at least one internship in a nonresearch environment, so that they can start to understand what it means to be effective inventors and how to develop technologies that can be used to build production systems. Doing your research at a research lab is certainly fascinating, but I find that the students who have come to Amazon for an internship find it extremely gratifying to be in the loop of building something real.

I have recently seen a few papers of students detailing experiences with building and operating distributed systems in a planet-lab environment. When analyzing the experiences in these papers, the main point appears to be that engineering distributed systems is an art that Ph.D. students in general do not yet possess. And I don't mean reasoning about hardcore complex technologies—students are very good at that—but building production-style distributed services requires a whole set of different skills that you will never encounter in a lab. These are skills your professor can't teach you because he or she never worked outside the lab either. If you really want to learn about building complex robust distributed services, an internship at Amazon will definitely give you that.

The same goes for the few professors who have spent some of their sabbaticals at Amazon. It has been eye-opening for them, and we welcome more of them.

No hay comentarios: