The CDC Chapter

Somay Chopra
8 min readNov 29, 2020

Hi! I am Somay Chopra, a 3rd-year B.Tech student from the Department of Computer Science and Engineering at IIT Kharagpur. I will be interning at Goldman Sachs in summer 2021. Through this blog, I have tried to share the highlights of my CDC journey.

Pre-Covid Times

A little bit about myself, I had no coding background, my freshman year was mostly focused on academics in the 1st semester, and in the 2nd semester, I got to know what were the fields one could choose in Computer Science. I did a little bit of competitive programming (CP) on Codechef and started an online course to get a flavor of everything. I spent my first summer vacation focusing on learning where I audited some courses online.

In the 3rd semester, the courses like Algorithm-I were quite interesting and important, in which I got to learn a lot about various algorithms and data structures. The Algorithm-I lab helped me strengthen my programming skills. I started CP along with the courses, though it was just limited to solving some ad hoc problems on Codeforces.

In winter break I started practicing more CP and getting comfortable with STL in C++, essentially utilizing the winters to practice the basics and getting more proficient in C++. After the winters I would participate in contests on Codeforces sometimes but I could not see any growth and eventually lost track. I was unsure what I was going to opt for in my 3rd year, whether an intern or focusing on research.

Preparation in Summer

Returning home in the middle of the semester (these are the ‘Corona Times’, my friend) was definitely not what I had planned for the summers. At the very start of the stay at home I had to make a decision, to choose between an intern or research as there was a lot of time now and the intern semester was up next, finally I decided to sit for CDC internship.

I started doing CP seriously, started with ladders on A2OJ, and gradually increased the rating of the practice questions. Alongside I started reading various algorithms that are often useful in CP and also started to brush up on the algorithms that I had learned earlier in the Algo-I course.

As soon as the news was out (about a month before) that the CDC process was going to be held at the same time as last year I directed my preparation towards the shortlisting tests and interview. Regularly started practicing on InterviewBit, looking up on Geekforgeeks and similar sites for general topics and standard problems. I also practiced some puzzles here and there. I advise that you skim through the Probability and Statistics concepts as well, as some companies look for holistic profiles while others ask for specific skills such as programming.

Shortlisting Rounds

All the coding rounds were online this year. I took tests for almost all the companies coming on Day 1 and Day 2. I was shortlisted for Goldman Sachs, Microsoft, Sprinklr and American Express for Day 1.

  • Goldman Sachs: The online test was lengthy (2.5 hours long) and covered various topics. It had 5 sections, first section had two coding questions to be done in 30 minutes, one question was easy and the other one was a bit difficult, I was able to solve one completely and the other partially. Second section consisted of MCQs in Prob-Stats and Quantitative Analysis, third section also had MCQs, they were about programming and CS concepts. The fourth section had a coding problem which was to be solved in 45 minutes, the question was on graphs and was tough, I was able to solve it partially. Then there was the last section in which we were asked to write two short essays on the question asked. As the test was lengthy, time management was crucial here.
  • Microsoft (Software): There were three coding questions randomly given from a set to everyone. The questions were not difficult, first question was a dice throw problem (dynamic programming), second question was on finding the longest common palindromic subsequence in two strings (DP) and the third question was also on DP. Many students solved all three questions so CGPA was also considered for the shortlisting.
  • Sprinklr: There were three coding questions to be solved in 1.5 hours, each with increasing marks and difficulty. First question was an easy ad hoc problem, second question required a greedy approach and the third question was on DP. I was able to solve 2 of them and the third partially. Two and a partial was enough for getting shortlisted for the interviews.
  • American Express: There were MCQs related to aptitude, Verbal, code output and debugging, SQL queries, and a final question on a case study.

Interview Rounds

The interviews started early in the morning. I got ready for the interviews at 6 am. My first interview started around 7:30 am and the last interview of the day ended at 5:00 pm. Deciding the priority order for the companies is extremely important if you have interviews for more than two companies in a day. Be in touch with the PlaceCom members and ensure you go for the interviews you had prioritized, they might be flexible if you are stuck.

  • Goldman Sachs: There were 3 rounds. In the first round, the interviewer asked me whether I was up for questions on probability and statistics, I answered positively although I wanted the interview to be more coding oriented. He started with a question on Expectations, I related the question to dynamic programming and started deriving the results but he wanted me to use a different approach, he gave me a hint and I started working on it, I was explaining every little thing that I was doing in each step which helped him to understand me well, finally, I was able to get the expected result. He then ended the interview with a simple coding question. Second round started with questions on prob-stats followed by coding questions, he shared the questions with me on hackerrank and wanted me to write the code, one of the questions was on DP, I answered all the questions so the interviewer was quite satisfied with my performance which helped me to interact with him more. Third round was intense, the interviewer bombarded me with a lot of questions in those 45 minutes. This round too started with questions on prob-stats, included some puzzles, and ended with 5 coding questions, the majority of them were on DP. I answered them all so the interviewer decided to add the HRs in the same meeting. They asked me general questions like why I wanted to work with GS etc. I was positive that I was going to be selected though the results were not to be out until midnight.
  • Microsoft: I had 3 rounds of interviews. The first one was a coding round. I was asked a question on trees and was asked to write the code which I did. Writing a clean code is important in interviews, especially for Microsoft. The interviewer for my second round was very understanding and interactive, starting with a coding question, the interview revolved around various approaches to the problem and further optimization of time and space, at last he tested me on some basics of code testing. He then moved on to OS concepts but they were not a part of my course, neither had I studied them myself so I told him the same and he was understanding. Third round started with questions on my CV, asked to explain a project that I had mentioned. Then I was asked a question on backtracking, I first solved it using stack and then was asked to code using recursion but the interviewer was not fully satisfied by the solution.
  • Sprinklr: Due to my priorities for GS and Microsoft the first round of the interview started late around 4 pm, by the time many of the students had completed all the rounds. I was asked a question on hashing, it was a tough question and the whole hour of the interview was based on the different approaches for optimization and the data structures to be used. I was also asked to write the code for the same and at last the time and space complexity were discussed.
  • American Express: Although it was not the profile I was aiming for but I sat for the interview round. The interview started with an introduction and questions on my CV, asking about the projects. The interviewer then gave me a case study, then asked and discussed the probable solutions. The interview then went on to some puzzles and ended up with general chit chat.

Major Takeaways

From the day the shortlisting tests start the tension starts and it escalates pretty quickly, from 1 test per week to 4 tests per day. It is a long process and it is important that you maintain your composure throughout the period. I will try to mention some of the major points that played a crucial role in handling the process.

  • On the Interview Day: As the interviews start early in the morning a good night's sleep is extremely important to stay focused throughout the day. Keep eating fruits, nuts, etc. between the interviews and stay hydrated. After six rounds of interviews from companies, I was completely exhausted in the 4 pm interview for Sprinklr. Get your priorities right, communicate with the PlaceCom members and sit for the companies you had prioritized or you think there are fair chances in an interview. In case of multiple shortlisting on a single day, you do not want to miss out due to mismanaged timings. Where almost everyone was done with their Sprinklr interviews I was still appearing for the first round. And I could pretty much sense my low chances there as they practically had already selected candidates. Although I had put it in a lower priority than GS and Microsoft, this could have proved fatal if I was not selected for any other company.
    Proper interaction with the interviewer always helps, continuously explaining each and every step you go through while solving a problem, the interviewer will be able to guide you if you are going in the wrong direction. If you are stuck in between, ask for the hints, interviewers are happy to help.
  • Rejections will become a part of the process in this phase and you should deal with them boldly, failure in one test or an interview round should not affect your performance in others.
  • You definitely don’t want to be alone in the process, be in regular touch with your friends who are in the same boat, help each other out. This will also help you gauge your preparation level.
  • There is enough time to get your CV prepared before the process so try to prepare your CV honestly. You should be able to answer confidently any questions asked based on it.
  • You have to remind yourself from time to time to believe in yourself or else you will start losing confidence (happens frequently) which isn’t going to lead you anywhere.

Nonetheless facing the interviews in itself is an experience one should definitely come across and it surely helps to learn a lot. I cannot thank my family and friends enough for supporting me throughout the process and CDC IIT Kharagpur for the smooth management, especially when everything shifted online due to Covid. My best wishes to whoever needs this blog. Feel free to reach out for any help, I am just a message away.

No matter what the circumstances are, Keep Going!

--

--

Somay Chopra

3rd year Undergraduate at Department of Computer Science and Engineering, IIT Kharagpur