I am ‘homeless’ right now, on the move between Microsoft Redmond to the University of Koblenz (at the Rhine and Mosel rivers, between Frankfurt and Bonn/Cologne), currently living in a hotel in Braga (Portugal) with 3 kids, my wife, 7 pieces of check-in luggage and 10 pieces of cabin luggage (still counting).
The reasons for this move are simple. My family decided not to settle forever in the US, but rather give Germany a try. I left Germany in 1999; it’s time to get back. Microsoft is a cool place to work but I have accepted an offer for a full professorship in the PL/SE areas at the University of Koblenz. Again, I am sad that I am leaving Microsoft, and I hope to stay in touch with my colleagues over there on the grounds of interns, research visits, etc. The decision to leave Microsoft and to return to Academia is really based on (complex) family considerations. Yes, it is true that I use a MacBook Pro these days, but I am running both XP and Vista via Parallels. So don’t jump to wrong conclusions.
I do look forward launching a new team in Koblenz at the Department of Computer Science. There are two open positions, typically for PhD students. If you are interested or want to have a look at the (German) description of the positions, please get in touch with me: firstname.lastname@example.org.
Mind-wise, I won’t be alone in Koblenz. For instance, Jürgen Ebert is readily working on modeling, meta-modeling, re-engineering – all topics that I like to contribute to as well. Also, Steffen Staab covers complementary subjects such as ontology, knowledge management and semantic web; he is way more prolific than me, which I thought would be very difficult. Altogether, the faculty at Koblenz counts 25 professors I believe.
I used to have detailed “research and teaching statements” at the time I was applying for positions, but they are little bit too formal and potentially outdated to post them here. In fact, I am in the process of organizing my research and teaching agenda, but anyone potentially interested in the aforementioned positions may simply think in terms of the following keywords:
1. Software transformations.
2. Manage software entropy by language engineering.
3. Deploy, integrate and improve declarative programming.
4. Process data in parallel.
5. Scrap your boilerplate.
6. Advance the separation of concerns.