I had a very interesting conversation with someone from Microsoft last week. It was not interesting because of the technologies discussed (they were hardly mentioned) or because of the insights I gained about software development (once again, not discussed). The person I talked to was not a PM or dev on any of the wildly exciting projects that are on their way from Redmond. What impressed me was the smarts, the commitment and the passion. This guy was working in an important but probably fairly un-glamorous role, and yet I could really feel the intense commitment to what he was doing. Although he claimed to be an under-achiever like me I kept getting the feeling that he was a smart guy (without really being able to put my finger on any specifics). The conversation could have easily been a fairly short one, but instead at the end he took the time to give me some great feedback on where I seemed to be going as a developer, how I was going about it and what I should do to keep going forward. In the end I was left with the very strong impression that Microsoft must be a great place to work at if you are constantly dealing with very smart, committed people like this fellow was. I also could not help but think that it is no wonder Microsoft is so successful if it has smart committed people like that at all levels of the organization. I don't think I'm the only one who has had thoughts like this either.
On the downside (and of course there is always a downside) I think I probably sounded like a bit of an idiot. I kept saying things and then thinking almost as I was saying them “but of course he would already know that because he just mentioned X before”. Lessons Learned: Try to be more attentive to what people have said in the past and try not to waste their time telling them things they already know. Assume MSFT employees are fairly smart on average.
On a technical note I found the rosetta stone of language keywords for all the major .NET languages. Very useful if you're constantly swapping between different ones. I'll have to have some fun and see how unmaintainable I can make VB.NET look using the REM keyword.