Microsoft has great benefits. We haven't paid a nickel in medical out of our own pocket in over 10 years.
There is reasonable 401k matching.
I earn an excellent salary when all benefits, salary, and stock are taken into account.
I have had occasional opportunities to do excellent work, but mostly my work is somewhat pedestrian and straightforward. You can make a difference here, but it's frequently hard to force a significant change in direction even when you know it's right.
You work around extremely intelligent and motivated people. Even the hobbies people pursue are done with excellence. This is truly amazing.
MS has put a real premium on my personal growth. Working in such a large, intertwined environment has forced me to "grow up" in a variety of ways, and this has improved me both personally and professionally. The company spends precious time each year helping me focus on this. Sometimes the training seems lame, but it always forces you to think about how to improve yourself. This might be my favorite result of working here.
No customer contact if you're a developer -- MS is just too big.
Development at MS is much more time-based than quality-based. It's unfortunate, but that's probably the way I would do things if I were in charge anyway, as it makes good business sense. But it's frequently not very exciting.
MS doesn't seem to be a place you retire from. There is constant pressure to improve or leave. Let's face it, we all have our limitations; we can't all be CEO. So you're eventually likely to be forced out in one way or another as you get older and get close to your potential. While the constant improvement is great for you, it's only great to a point. Then you start to have trouble changing jobs within the company as your reviews level out.
Dump Ballmer. Force the divisions to work together more effectively. We're starting to see some of this, but it's very slow to develop. It may be too late to develop the synergy we all know we're capable of.
The first round was a phone interview that covered basic questions about my experience and a logic question. The second and final round of interviews was on-site, consisting of four one-hour interviews with a short break in between. These interview
Four virtual calls were spread over two business days. Each call had three hours in between, so there was plenty of time to relax and recharge for upcoming rounds. Interviewers provided valuable feedback after each round.
They focus on problem-solving skills. Ask open-ended questions and expect you to scope down the problem and solve it. Speak out loud; your thinking process is important, even.
The first round was a phone interview that covered basic questions about my experience and a logic question. The second and final round of interviews was on-site, consisting of four one-hour interviews with a short break in between. These interview
Four virtual calls were spread over two business days. Each call had three hours in between, so there was plenty of time to relax and recharge for upcoming rounds. Interviewers provided valuable feedback after each round.
They focus on problem-solving skills. Ask open-ended questions and expect you to scope down the problem and solve it. Speak out loud; your thinking process is important, even.