Why working at Microsoft is better than Google
There are many things about Google that are not great, and merit improvement. There are plenty of silly politics, underperformance, inefficiencies and ineffectiveness, and things that are plain stupid. I will not write about these things here because they are immaterial. I did not leave because of them. No company has achieved the status of the perfect workplace, and no one ever will.
I left because Microsoft turned out to be the right place for me.
Google software business is divided between producing the “eye candy” – web properties that are designed to amuse and attract people – and the infrastructure required to support them. Some of the web properties are useful (some extremely useful – search), but most of them primarily help people waste time online (blogger, youtube, orkut, etc)
This orientation towards cool, but not necessarilly useful or essential software really affects the way the software engineering is done. Everything is pretty much run by the engineering – PMs and testers are conspicuously absent from the process. While they do exist in theory, there are too few of them to matter.