Pros
Job security. They give considerable time on bench to change your technology and find new project before firing. Free snacks and dinner. Good workplace. Free gym. Most of the people are friendly. Better company than most IT service based companies like Congnizant, TCS.
Cons
Slow technical growth. Most of the projects demand old technology and you are bound to work on old technology. If you are extremely lucky then you might work on newer technology. Bad salary. Bad hikes. Earlier increments were nice but now below average. If you belong to the top tier college (IITs), don't join. Market is offering much better package. Bad project managers. Project managers themselves don't have any idea of the business requirements and flow of the project. Their job is just to pressurize the developer and make him complete things before time without knowing the complexity of the task. Company is not an MNC. Your growth is very much dependent on your manager. You have to tell them every time that you are working very hard. They can't see your work by themselves. Anytime in the year, company may change its policies and cut your increments on the basis of the new policies even if those policies were applicable at the end of the year.