Paper : TCS Placement Paper Pattern 2006 At Chennai (Technical)
Hi, Most of you have probably gone thru my first article where I wrote about my experience in writing the Aptitude test for TCS. This is a follow up of that. I got a mail from TCS approximately 20 days after the test asking me to attend the second and third rounds of the recruitment drive. The venue was changed and it was quite a distance from my place ( 2 hours by drive) . I was asked to be present at the venue by 12:30. Now as many of you might know, Chennai is constantly being flooded with rains and I figured it was best I left 4 hours before my reporting time. Thankfully I did reach my venue on time but apparently I had nothing to worry about.
They started the process for my batch (the last in the day ) at around 5:30 in the evening and I only got to the actual interview at around 8:30 P.M.! So folks be ready to spend your entire day at the venue and make sure you make arrangements for transportation beforehand. I reached home only at around 12:45 A.M Anyways, I had assumed that this was again going to be a written test just like the aptitude test because from the list I figured out they were processing around 800 students a day. And I assumed that they could not spare the resources or the time to interview each candidate separately.
Boy was I wrong!! They had close to 50 tech guys interview each person. And there is really no assumption that can be made as to what these guys might ask. For a few friends of mine, the questions were actually quite simple .. they were asked to introduce themselves and then talk a little about their projects and then maybe a question or two on C programming and finally ask them to write out a code for a simple program like determining if a given string is a palindrome or not, or generating the Fibonacci series etc. And for some others like me, we had a much more tougher and complex interview.
The first question I was asked was the standard "Introduce yourself". Now there is no right or wrong answer to this question but do try to limit yourself to 1 minute and make sure that you include all the important details like your project and any important awards that you won. In short .. keep it sweet and simple. They give a lot of importance to your resume so make sure you have a good resume on your hands. I overheard a poor chap being told that his resume was extremely poor with loads of spelling mistakes.
I used a program called ResumeMaker Pro V11 to make my resume. Its quite easy to use and the results are impressive. Next he asked me about my project and a few minor details about it. Next as I anticipated, he asked me about my area of interest. And I immediately answered saying that I liked Operating Systems. Now here lies the tragedy, because for the remainder of the interview he asked me questions ranging on various topics, EXCEPT operating systems.
He started off with basics of C and C++. And asked me questions like:-
What are the differences between C and C++
How is C++ better than C"
Why is type casting
What is operator overloading and function overloading
What is dynamic binding and static binding?
I had no problems in answering these questions. Next he moved on to databases and he asked me about normalization. Then he asked me to write down two queries using joins. I made it clear that I was not good at databases but I would try to write the queries for him. First was selecting data from two different tables which had the same primary key. I used join but my syntax was wrong. He corrected me. Next he asked me about self joins. I hadn't ever heard of it so I told him I couldn't recall.
He moved on and asked me to write a query which would get only unique data from a table. For eg in an employee table there might be multiple entries with the name Ravi, there could be Ravi Kiran, Ravi Kanth, Ravi Kumar etc etc. For each unique name only one record should be displayed. I tried to write the query .. but I suck at databases so needless to say I didn't do so well. I was aware of a keyword that I was supposed to use.. I thought it was UNIQUE. But I was wrong.
The keyword was DISTINCT. I told him I thought it was UNIQUE but he just smiled and corrected me. At this point of time I thought that I was going to be filtered for sure because I had given too many wrong answers. But this was my first interview ever and I figured that the worst that could happen is that I wont be selected for TCS so I could try out for another firm. And I continued as if I had nothing left to lose anymore. I am not sure if that's the right attitude but hell it worked for me. He moved on to asking me questions about .NET. I mentioned it in my resume that I had worked on .NET for my project. Now I was the only one among the people interviewed that day who was asked questions on technologies like .NET or Java. No one else had been asked questions apart from C C++ Database Data structures Algorithms Operating Systems and Networks. Anyways I been working with .NET for a really long time ( 3 years ) so whatever he asked was just to simple for me. He asked me about connecting to a database. I told him about ADO.NET and wrote down the connection string for him. Next he questioned me about COM and how COM is used and what is a component etc.
He asked me about namespaces and then how to avoid cross threading errors. Finally he asked me why I chose to work in VB.NET rather than C#. Please note that if you are not confident with Java or .NET DO NOT PUT IT ON YOUR RESUME. After this he asked me if I had any problems relocating or signing a bond for 2 years. And then he said I could go. By this time I had written myself off. The results were being declared in gaps of 15 - 20 minutes. We couldn't have the MR round on the same day because it was already late (9:30 PM when I came out) . I just waited for the first time for the results and my friend who went in along with me got thru the tech round but my name was not announced. I was expecting not to qualify so I didn't wait and I left. But 4 days later I got a phone call from TCS asking me to report for the final round yesterday (Tuesday November 7th) and I also got a confirmatory mail from them.
When I arrived on the scene there were considerably less number of people this time. Later I heard that they had screened more than 50% of the people in the tech round. Everyone I saw were holding books with questions on C and C++. Apparently lot of HR people asked technical questions too. But this time around I got lucky and I guess god decided to give me a break. I got a soft spoken guy who was quite cool. He asked me to introduce myself. Then he got interested in my project work and papers I had presented in other colleges. He was interested in the extent I had managed to implement my projects and papers. He asked me if I would have trouble adapting to a technology I didn't like. He figured out I liked .NET and hated JAVA. So he asked if I put you in JAVA development would you be able to adapt. I just said that real winners in life make the best of the opportunities given to them since in Life you cannot get everything you want. I told him that as a professional I was willing to do what was necessary. Later on he asked me, what I knew about TCS and such. Finally he asked me if I had any questions about TCS. I asked him a few questions and he said I could leave and the results will be announced on their career portal.
There really is nothing to it. Just stay calm and cool. There is nothing wrong in saying "I don't know". We are fresh out of college and we are not expected to know everything of everything. Essentially even in the technical test they were checking as to how you were able to handle stress. Confidence is the key to cracking TCS interviews. I had copied and pasted a set to technical questions from C C++ Operating Systems Algorithms Data structures and Networks into a word document file. Almost all of the questions asked during the tech interview were from the file. Its around 20 pages and contains most of the questions asked along with answers ( verified and unverified) and code snippets for important questions. I do hope everyone finds it useful.