Company: Microsoft
Date: 2013-11-24
Overall rating: 1/5
Employment status: former
Experience level: Junior

Good place to go to retire
Pros: 1. Pay and benefits are great. Not excellent, but great.

2. If you don't have great ambitions, you can maintain a good work-life balance. Once you get to the "Senior" level in the career ladder, it's easy to just relax and get lost among the cracks. Management is going to assume that you "plateaued", and let you stay where you are.

3. Company pays a lot of importance to ethics and being a good world citizen. Pays generously to charities and has a great charity donation matching program.
Cons: 1. The company is too big and too slow. I don't know what exactly the reason for this is, but everything in the company just seems to happen so slowly, even down to minor everyday tasks such as getting a single bug fixed.

2. People in the company are nowhere near as smart as some people think, particularly the new hires. In a market where companies like Google, Facebook, etc. are soaking up the cream of the crop, Microsoft has certainly lowered their standards and is settling for those who cannot make it into such companies. The really smart people are those that have been around for a decade or so, from back when Microsoft could attract those kind of people. The rest are probably still better than your average code-monkey, but nowhere near as good as they need to be to turn this company around. On rare occasions you come across some surprisingly incompetent people.

3. Performance system is broken:

- Rewards are tied to how much visibility the work you do has, i.e., the more the number of people who know what you are doing, the better your chances of a favorable performance rating. This may seem justified on paper, because the higher the "visibility" of your work, the more important it is. However, what ends up happening is that it basically becomes a popularity contest. You may be working on something that might be the most important thing for your immediate team, but since no one outside your team knows that, it is very unlikely you will be rewarded for your work. The "new" review system that was announced recently doesn't change any of this.

- No matter what they tell you, there is definitely a minimum time period you need to be in each level before you get promoted to the next, no matter how good you are.

- It's all about being in the right place at the right time. Good opportunities are hard to come by, and they keep moving around the company. Currently it looks like all the good opportunities are in the Windows Phone group. People there are getting promoted like crazy. Whereas in Windows, there is a huge dearth of good opportunities. And since the average seniority of employees in Windows in much higher, the few good opportunities go to the senior folks, leaving the junior folks with very little, making it hard to progress up the career ladder.

4. Lack of good vision from leadership: Given the mess we are in right now, we need a Steve Jobs to turn us around.

5. Ancient engineering practices: When I left school, I was eager to get into some actual software engineering and learn cool things like TDD, unit-testing, UML, etc. I am saddened to say that my co-workers and I are still writing code like it is for a class project. I think Microsoft relies more on a strategy wherein junior developers are just not given much important and complicated work until after they have gained a few years of experience. That's no way to do software engineering in today's world. While SDETs churn out huge, complicated, and heavy test frameworks for testing products, the reality is that these tests usually never catch any bugs, and most bugs are found in production.

6. You better be prepared to spend the rest of your life working with Microsoft technologies: They avoid OSS and non-Microsoft solutions like the plague, which, to be fair, might be justified because of the potential for legal troubles. But if you are coming to work here, be prepared to say goodbye to the rest of the technology world.