Pros
Since I was coming right out of college, I was put in a 6 week training course to give me a simulation of working on a project. I learned a ton over those 6 weeks and was glad they provided the training for me. Health benefits are pretty good and their 401K is really nice because it's a Roth 401K. I was fine with my salary considering I was right out of college. That seems to be about average for entry level computer science jobs. I was able to get on a project I liked for about 3 months. I learned a ton on that project and I'm glad I got to experience it.
Cons
From the initial interview process I was given red flags but ignored them. One being that I absolutely TANKED my technical interview. I froze up, couldn't think of anything and didn't answer a single technical question correctly. Yet I still received a job offer. I found it a little fishy but accepted anyways thinking maybe they somehow saw some potential in me despite coming off horribly unqualified. I soon learned the real reason why I received the offer. It was because TCS is an Indian based company with a lot of foreign Indian workers. The U.S. requires a certain percentage of employees to be American or TCS receives massive fines. So essentially I was hired because I was American and had a bachelors in Computer Science. Not for experience, not for skillset, not for anything a normal job would look for. I was hired simply because I was born in this country and would save them money. Once I was hired and went through the training process, I soon realized TCS is horribly overstaffed with American workers who can't be allocated to projects. I was on the bench (meaning not on a client project) for MONTHS. I was given internal projects (busy work) until I lucked out and was able to get on a client's project. Meanwhile I left a lab full of a dozen Americans, some of which were there for over a year without seeing a project. My first client project was great and I learned a ton through it. Once that project ended, I was put on a different project in an area I did not have a lot of experience in. I attempted to help but my team was full of experienced employees who had spent years on the project and didn't really have time to get the new guy up to speed. So this led to me sitting around pretending to look busy for 4+ months. I would go to work, turn on my laptop, and kill time 8 hours a day, 5 days a week. At first it was nice not having responsibilities but soon it turned miserable as I counted down the minutes each day until 5:00PM. The dynamic at work was extremely uncomfortable as the American workers pretty much sat around and did nothing since we had no responsibilities and the Indian workers handled 95% of the client work. I would have loved to have helped but the opportunities were hard to come. I craved to have any responsibility and a role in this company but they don't make it easy. So much so that of the 12 people I considered my lunch group, more than half (including me) have already found new jobs elsewhere within a year of joining TCS.