I would like to thank the GeeksForGeeks community for the amazing help and support.
It is My first time writing for an interview experience. Hope it helps. Also, it is my first offer letter. :-)
I am from a Tier-III college, 2024 pass-out.
Applied to TCS free NQT 2024 test from here(https://www.tcs.com/careers/india/tcs-fresher-hiring-nqt-2024). TCS hires freshers for undergraduates through NQT for these roles. Post-graduates may vary:
Ninja - 3.36 LPA
Digital - 7 LPA
Prime - 9 LPA
NQT Test (190 mins, no break, sectional time cut-off, can visit previous questions).
Round I: Foundational Section:
Numerical -> Difficulty: Hard
Reasoning -> Difficulty: Medium
Verbal -> Difficulty: Medium
Round II: Advance Section:
Advance Quants -> Difficulty: Medium
Coding Question I -> Question: Sum of Fibonacci Series up to N terms (catch is that the sum can be very large which will cause overflow, using long type will pass all hidden TC) | Difficulty: Easy
Coding Question II -> Question: Given an array, find the sum of all distinct XOR subarray | Difficulty: Hard
After 1 month, Got mail for Prime Interview. I have solved all questions from the coding round passing all hidden TCs. In Apti section, from my own perspective, advanced quants section went very well, foundational section was quite decent. So the interview was scheduled in TCS office campus, Gitanjali Park, Kolkata. It was a face to face interview. All 3 rounds (TR + MR + HR) was done on the same day. To be honest, my panel members was very friendly as i panicked a bit at start, but they allow me to be comfort and the discussion overall went very healthily.
Technical Round (30-40 mins):
After giving my intro, he gave me 3 coding questions which i have been asked to write the pseudocode of it with brief explanation. I wrote the pseudocode and gave a brief explanation of my approach, also had to dry run the code with an input and explained the possible edge cases. Communication is the key, the interviewer will not read out the entire problem statement like in leetcode fashion, you need to communicate with them to know about the problem, constraints etc. The interviewer was satisfied with my approach for all 3 questions.
Coding Question I: Merge Two Sorted Linked List in O(1) space | Difficulty: Medium
Coding Question II: Valid Palindrome | Difficulty: Easy
Coding Question III: Binary Tree Maximum Path Sum | Difficulty: Medium-Hard
Managerial Round (5-10 mins): He asked normal situation based questions, project based questions from my resume. The interview was quick.
HR Round (5-10 mins):
He checked my documents very strictly including Class X, XII, all semester results, Gov-ID, College-ID. He told me about the upcoming processes for TCS after if i get any offer and he asked basic HR questions like relocation etc.
Verdict: After 15 days, i got my first Offer Letter from TCS for Prime role as a C1 System Engineer.
Overall time taken from the day of registration for NQT to offer letter generation was approximately 3 months.
My Preparation:
- I prepared aptitude for approximately 3 months from R.S. Aggarwal book and from Youtube.
- Solved Striver A-Z DSA Sheet, Leetcode (75, Top interview 150, Top 100 Liked), GFG (SDE Sheet, Top 50 of each topic sheet) Coding Ninjas TCS Coding Sheet thoroughly. Practice SQL (inc. all advances topics like join, window function etc) from Leetcode. It will be enough. Give Contest in GFG & Leetcode (not required that much but it will be helpful if hard question are asked in interview).
- I have done my final year team project based on Machine Learning, Data Analysis and Web Dev together. Explain it using STAR approach.
- Also it will be better if you have your own set of projects with advanced technologies.
- Prepare CS fundamentals from Love Babbar Cheat Sheet:
- OS
- DBMS
- Networking
- OOPS
- Also learned about Machine Learning, Deep Learning, How Chat GPT works, CNN working function, Cloud Computing Basics, Software Engineering (Waterfall, Agile, SDLC).
- Better to have more than 1 programming language expertise.
Knowledge has an incredible maths logic. It multiplies by dividing among others. So, never stop learning and grinding. Cheers :)
Upvote, if it helps.