Microsoft treats developers very well. From offices, to hardware, to free gym memberships and health care coverage, to the idea that you're generally not expected to work more than 40 hours a week, it's all great. But that can't and doesn't replace the need for healthy corporate culture and good, intelligent, pragmatic leadership, a lot of which has increasingly been lacking at MS. You'll have a quad core desktop with 8 gigs of RAM, but that hardly helps you play the game of office politics that is often required to get bonuses or promotions (when the company bothers to provide them). It also doesn't help a corporate culture that is becoming increasingly bureaucratic and process oriented rather than results oriented.
A lot of talent is and has been evaporating up and out of Microsoft for just these reasons.
I was at Microsoft for two internships and two fulltime years. I never once had an office to myself, I always had to share. In fact, the new Studios buildings are almost entirely "6 packs" of cubicles.
As for hardware, if you really needed it we were able to get it, but there was a fair bit of scavenging for spare parts to power build/test machines. There was also a shortage of Xbox and especially Win Phone dev kits.
My day to day coding experience varied wildly by task. Some stuff had a 2 minute turnaround, most stuff 2 hours, and some stuff several days.
The politics, infighting, and Redmond isolationism are all very real, and very painful.
That said, the company is huge, so experiences differ broadly across the various orgs.
Dude... That is still better than work environment I had to endure - 50 developers in a single open area. If that weren't enough - someone decided to sit support for an entire team in the middle of this space, rationale being "that they would like to be close".
6-10 people in a room as long as they are developers is still awesome and productive environment.
Edit: I don't work for Microsoft - but wouldn't mind to :)
A lot of talent is and has been evaporating up and out of Microsoft for just these reasons.