Pros
Salary is credited on time. Regular events are organized on festivals like Holi, Diwali, and Christmas. Outdoor activities and team lunches are done for a couple of times a year. Work wise, you can learn how to handle pressure-cooker situations very well, because the deadline for all tasks (no matter how complex) is always tight. If you can survive here, you can survive in pretty much any other company. One can also learn tremendously, regardless of the technology stack that one focuses on. This is especially good for freshers, who learn at an accelerated pace soon after joining.
Cons
One word describes most employees here: Insecurity. From the technical architects down to the fresher, everyone always works with a gun pointed to their heads. The work atmosphere is not pleasant or cordial, though the top management thinks otherwise. Favoritism is common, especially if you're a (good looking) girl or an old-timer. No questions are asked from them, and they're given ample chances. For all others, you either meet the deadline or face harsh criticism. You can also be humiliated at meetings in front of everyone for minor mistakes. Some people in senior management use street-like language (though no bad words) to yell and mock people at the top of their voices. This is especially true of one female manager. This creates a lot of fear mongering, resentment and an overall poor work ethic. No processes are followed in software development lifecycles. In the name of client satisfaction, any and all kinds of messy stuff is introduced in the code. When that blows up at a later date, even more messy stuff is done, which becomes difficult to maintain. Merely slogging long hours is not sufficient, as everyone does it. You also have to boot lick your seniors somewhat to survive here. No medical insurance is provided.