Pros
those who are just starting their career (<2 years of experience) can get a good exposure of product development and latest ms technologies. If you have more than 2 years of experience, you can definitely get a better option that gives you the above exposure plus other things.
Cons
* if you are an engineer, you are just a paid worker to be squeezed. working late nights and working over weekends is expected...and all this because manager's cannot realistically estimate the efforts and will commit for crazy schedules... * middle management is full of people who have added years to their resume without learning how to handle projects or people ( some are exception and good ones) ...their bad management will reflect in your day to day work life * lot of regional/state favoritism in hikes, promotions etc. The name of the company starts with "T" So you are better off only if you come from a state whose name starts with "T" ( appreciate the pun intended but this a reality :) ..and this reality can only be experienced ) * the philosophy of the company is work comes before life ...but unfortunately this is applicable for only engineers..the top management can be seen having fun during work hours * no frills or benefits or perks.....the only benefit you get is free tea and coffee * forget promotion and except minimum salary hike