Health benefits, various perks here and there.
Excellent job security, especially compared to other companies in the same industry.
Very flexible work hours; you don't actually have to work very hard if you don't really want to get back much.
Generally speaking, you are surrounded with intelligent people, which is not necessarily true at other companies.
If you want to, it's possible to learn and grow well, at the lower levels at any rate (entry level to minorly senior levels).
My guess is the downsides are similar to working at many other large corporate companies. Slow processes, a very slow climb up the career ladder generally speaking. Pay also grows in a generally slow and steady manner; don't expect sudden jumps in pay and level as is possible in smaller environments.
Bureaucracy and processes abound, as well as politics, as close as even 1 or 2 levels away from entry-level. Generally speaking, Microsoft isn't the best place to be if you want to be a superstar, quickly advance in your career, or just plain have a lot of energy. Not if you want to get well-rewarded at any rate.
How senior are you talking? I think your average second-line manager is as powerless as your average IC.
Beyond that, who really cares. Real change has to come from the top, meaning VPs and up.
It's clear that Microsoft struggles to be innovative these days, and that it has grown fat and lazy from all the cash it has made from past achievements like Windows.
Seriously, can you think of other companies where a major project (e.g., Windows) can slip by years?
There's a seriously messed-up attitude problem, and I guess it comes from the top. There's also a big lack of innovative talent.
Compare products with competitors' products, e.g., iPhone or iPod with Windows Mobile or Zune (what a joke!).
I don't know how, but the company really needs to attract or grow creative talent fast.
Lots of brain puzzles and escalating interviews with different people on the team. Read the books on brain puzzles asked at MS interviews. They're not wrong. Most people interview with multiple teams. However, if all your interviews are with one te
The interview process was good. The interview was mainly based on coding. There were no specific testing questions. The interview covered: * A question on arrays. * A question on Linked Lists, specifically how to insert a node. * A question o
Initially, I was contacted by a recruiter. I had a quick phone screening and then was called for an onsite interview. The onsite interview was horrible because one of the interviewers was jumping randomly between questions. I believe the interviewer
Lots of brain puzzles and escalating interviews with different people on the team. Read the books on brain puzzles asked at MS interviews. They're not wrong. Most people interview with multiple teams. However, if all your interviews are with one te
The interview process was good. The interview was mainly based on coding. There were no specific testing questions. The interview covered: * A question on arrays. * A question on Linked Lists, specifically how to insert a node. * A question o
Initially, I was contacted by a recruiter. I had a quick phone screening and then was called for an onsite interview. The onsite interview was horrible because one of the interviewers was jumping randomly between questions. I believe the interviewer