I'm closing in on a month now at Microsoft. OK, not really, because with the holidays and a week out for a pre-hired trip, I'm obviously still in a bit of a ramp up mode. Although I checked in some code last week, which is very exciting.
In any case, I've taken my share of cheap shots about the Borg, evil empire, M$ and the other predictable nonsense. Now I just find it sad that people spend that much time and energy on hating a company. I get it, some folks think the company is evil. Whatever.
The thing that I've noticed about Microsoft, from an internal view, is that it's an enormous company. I find diversity in teams, groups, divisions, top to bottom. In orientation and training, this diversity is reinforced in every aspect, from the way people develop product to the way they interact with each other.
Externally, you may also notice diversity. There are epic success stories, like the Xbox edging out the established players or Silverlight quickly iterating and gaining market share. On the other hand, you have things like Vista (which might have been more of a critical failure than financial, in my non-expert opinion) and Windows Mobile, which fails to make any traction.
Do you see what I'm getting at? You can't make generalizations about the culture of Microsoft. When I tell friends that I work in an agile team, in a room together, delivering value regularly, don't get bogged down in e-mail or specs that people never read, they think I'm lying. Are there "old school" teams around the company? I'm sure there are. Maybe there are even business reasons for it. But to suggest that Microsoft on the whole is incapable of doing amazing things in a very forward and progressive way is to suggest that a huge company operates in exactly the same way, from end to end. That's just silly.
I might drink some of the Kool-Aid®, but I'm not naive enough to believe that Microsoft doesn't deserve much of the criticism it gets. That said, the press and the average fashion hater are not credible when they paint the company with one broad brush. You don't need to work there to see that the different parts of the company roll in different ways. There are thousands of very different, and very real, people in this organization.