Pros
There is a lot of freedom to explore new growth opportunities both as an individual as well as the company. There are quite a few initiatives I have led here, at a very young age, which I wouldn't have been entrusted with in other companies. Similarly, the internal job opportunities are vast, and you can have as many jobs as you want here. The work culture is good (at least in my area), very satisfying and stimulating. I also find that there is very little discrimination here against linguistic, religious, and ethnic minorities. Many people will disagree with me, but that's the truth, if you look at it objectively. I have been denied something as basic as a personal loan on the basis of my caste (in the outside world) but never been denied any such opportunity for any assignment in TCS. Appraisal is as fair as your boss is.
Cons
Pay sucks. That's the only complaint I really have. I have tried to get employed elswhere but people take a look at my resume (and the things I have done) and refuse to believe my salary slip. I even have had a potential employer telling me that I was faking it - apparently the initiatives I led were managed by VP level folks there. The other crib is the leadership. They are neither expressive, nor do they attempt to look sincere. Good news is that the CEO is changing.