Pros
You really need to work hard to get where you want to. There are some smart and dynamic people you will meet along the way -- but man, don't expect them to reward you on time. The word, "on time" is key here. Promotions are important to retain talent and motivate employees. MS fails to understand that. Designations are important for any employee but you are always told by the senior management that "it is a multi year process to get to the next level". Pros: 1. If you are good worker, you will be recognized (but NOT rewarded). 2. Flexibility for long distance commuters to work from home as needed. In fact their WFH policy is very good 3. Some of the managers are very caring. Be careful which team you get into 4. A lot of the software development happens in house so depending upon the team and team size, you will get to learn a lot of good technologies (Flex, Sencha, Big data tools etc.)
Cons
Cons: 1. In my experience, the Senior management is very partial towards the US and UK employees when they award promotion and rewards. Indian center is seen more as a BPO center. 2. Managers only want to grow the team brlow them. Some of your peers will not even have half the experience as you do in same designation as you but perform one level lower 3. You are recognized by the number of people who report to you. Senior management should focus on not just hiring, but hiring good talent. 4. Projects should be tracked by managers as well as the upper management. Managers should own up for their team. Finger pointing is not the best way to tackle your subordinates. 5. Senior managements regards proximity as the only barometer for measuring performance. 6. Long working hours for India teams while US teams leave at 5 pm EST. 7. They don't recognize your value till you put down your papers. Exit interview by HR is a joke. 8. Rewards come to those who either don't work OR are not smart enough but lucky OR are intelligent enough to work AND have an obsequious eagerness to please the upper management