CDC Internship Process 2020 - Cisco
This is an account of my experience of the CDC internship process 2020-21. Undergraduate students at IIT KGP need to complete an internship at the end of their pre-final year. Career Development Cell (CDC) manages the process for the same.
Disclaimer (for people who tend to generalize):
I was shortlisted for only one company (Cisco) and I got an internship offer from that company itself. So whatever advice/information that follows is probably not all-encompassing and fully informed. While I have tried to maintain a balanced view, it is impossible to be absolutely objective. Please read with a healthy dose of skepticism!
Around mid-August, there was tension and excitement surrounding the much anticipated CDC internship process. I was in the final days of a remote internship at a startup and I feared that I was woefully unprepared to take on the CDC tests. Suddenly, a pandemic seemed to be dwarfed in comparison to the approaching battle. Slowly the companies began with their presentations and then their shortlisting tests, and the stress only increased exponentially. The process was completely remote for the first time. The invaluable support system of batchmates and seniors on campus was missing, which made keeping myself motivated quite difficult.
I was pretty sure that I was going to go for a software development profile from the beginning since I had been interested in programming since my first year and had worked on open-source projects. The problem was that all software companies conducted DSA tests for their screening process, which is usually learned via competitive programming. I have never been a fan of CP and had mostly worked on personal projects and contributed to projects on GitHub (the hate for CP and love for open-source is something for another blog post). I had also not taken the Algorithms-I course in my 4th semester (pure laziness). Predictably, I severely lacked the knowledge of Data Structures and Algorithms.
Around mid-June, I began by solving problems on InterviewBit since it was what my seniors had recommended for people who are short on time. I started solving two or three problems from each topic and reading Geeks For Geeks whenever required. I had to learn some concepts of C++, but that was not tough since I already knew C. I also interacted with a few of my batchies to learn the tricks in C++ to make problem-solving faster. I tried to cover important concepts like Greedy Algorithms, Dynamic Programming, and Graphs that were asked frequently in tests. In the end, I had run out of time to cover Graph problems, so I just solved important problems on GFG. The coding tests began and I was soon confronted by the dismal level of my preparation.
Finally in September, after a gruelling series of presentations, shortlisting tests, and interviews, I received an internship offer from Cisco. Honestly, I was more relieved than elated.
Myths about CDC:
It is super super important
Like many of my peers, I fell for the trap of assigning extremely high importance to the CDC internship process. This leads to an unnecessarily high levels of stress and anxiety. I consulted some alums and seniors in MetaKGP regarding the entire process and all of them agreed that it was not worth getting so worked up about. It is merely the start of a long and hopefully fulfilling career. Sure, it is a great platform to get an internship at some excellent companies, possibly the best you can get in terms of stipends and PPOs. But is it worth pulling your hair frantically and frustratedly in front of the keyboard at 3 AM, stressed out of your mind? I will go out on a limb here and say.. Maybe not.
Good companies only come on Day 1 and Day 2.
I feel that there is a lot of unnecessary hype surrounding Day 1 and Day 2 internship offers. To stop myself from going into a rant, I’ll only say this: I think this hype is only made up by social media posts with hashtags and there are great companies that come on the following days too. While I have no qualms about such social media posts (I am guilty of being on both ends of this silly practice), I would any CDC aspirant to stay away from social media during this time.
Now, let’s get down to business.
Shortlisting:
As I was aiming for an internship in software development, I participated in the coding rounds of nearly all companies that were offering software internships. These included Google, Microsoft, Oracle, Adobe, Honeywell, Uber, Sprinklr, Cisco, Amazon, Mastercard. The initial days went by and I wasn’t shortlisted in even a single company. This was really disappointing and depressing to me. I began doubting the worth of all the work I had done so far, which included self-learning, open-source projects, hackathons, internships, etc. To say the least, it was a rough few weeks.
I was finally shortlisted for Cisco, which was one of the better tests I had given. The first part of the test had MCQs which had basic questions related to computer networks (IP addresses, OSI model, etc). I performed well in this half as I had explored computer networks on my own a few months back (a great resource). The second part had coding questions. Since I am writing this two months after the tests, I don’t remember the exact problems asked (besides, I forget nearly everything about any test within 5 minutes of its completion :P). As far as I can remember, one question was related to greedy algorithms and another was related to checking the validity of IP addresses. I think I performed well in the test overall.
Interviews:
Round 1
The first interview round was taken by a software developer at Cisco. In the beginning, he looked over my CV. On seeing open source projects in the CV, he asked me to share my GitHub profile. There were a few questions about recent projects, favorite programming language, etc. After the initial discussion, he asked me to open any code editor on my computer for live coding. The first problem was an easy one, related to hashing. The interviewer did not mention this explicitly, I had to figure it out myself after thinking over it for a while. After I had solved the problem satisfactorily, we had a discussion about hashing algorithms and their space-time complexity. The second question he asked was about regular expressions, where I had to develop a program to eliminate the names of people that matched a certain pattern. The regular expression approach did not strike me initially in the heat of the interview, so I resorted to working out other methods. The interviewer conceded that my methods worked in a sort of hacky manner, but the proper way to do it was through regex. The interview ended with the interviewer asking me questions about the work I was interested in doing in the future. After leaving the interview, I was pretty satisfied but still had doubts about the answers I had given.
Round 2
The second round was the manager round. The interviewer was quite warm and friendly and the tone of the conversation was light. He started with some questions about my CV. He asked about my most recent project that I had mentioned in my CV (LTTKGP). This gave me a confidence boost since I was able to speak about something I was passionate about. He then asked about my mentoring experience in Kharagpur Winter of Code. Then, there were some questions regarding teamwork and how I would approach certain problems while being a part of a team. At the end of it, I was pretty sure I had done well in this round. It also dispelled all the doubts I was having regarding my previous work in OSS and internships since it had definitely helped in this round.
Round 3
The third round was the HR round and it was the shortest interview I have sat through. The interviewer asked me basic details about availability, preference of office location, and certain questions about why I wished to work at Cisco. After this round was completed in the evening, I nervously waited for the results. The result came in the evening through MFTP and after seeing my name at nearly the end of the list, the feeling of relief was incredible. It wasn’t just the relief of getting an internship, but also of finally getting through this strenuous and tiring process.
Conclusion
Looking back on that entire ordeal 2 months later, it seems rather foolish that I had got myself so worked up. I feel like I would have fared better without all that tension. A few general and specific things I learned through this process:
- The hardest thing to do in pressured situations is to maintain objectivity and the sense of calm that comes along with it. An effort must be made consciously to be objective and to maintain a certain level of aloofness towards everything. This would probably produce a competitive edge.
- Peer pressure should be harnessed to fuel motivation. Too much can affect you negatively.
- Biases do exist everywhere and for whatever reasons, the world isn’t a fair place for everyone. The key lies in saving the energy spent on complaining and focusing on the things you can control.
- Branch matters more than people assume (this is a hard truth). CG matters, but less than what people assume (a 7.5+ CGPA is a safe place to be for most cases).
- Competitive programming is helpful, but not an absolute necessity for interviews. People often forget that it is primarily a mental sport. While some companies ask for ratings and links to CF profiles, others are only interested in your knowledge of DSA and problem-solving skills. You only need to know enough to clear the interviews. If you, like me, are not really into CP, I would recommend InterviewBit and Geeks For Geeks.
- DSA is not the scary thing that people perceive it to be. It is very much achievable through regular and systematic practice.
Reiterating what I said in the disclaimer, I learned this while being shortlisted for a single company and only going through the process till Day3. Hence, the above points might not give you the entire picture.
Surviving this process would have been impossible without the timely support of many people around me- my family at home and my family in IIT KGP. This support might have been in the form of discussing problems and interview experiences or simply participating in stress-relieving rants together. To name a few people who were there throughout - Sarthak (also my co-intern, yay!), Swarnim, Alok, Laksh, Ashish, Mukul, Shubham (his CDC blog post), Utkarsh, and Sambodhi. Thanks to Naresh for being the ‘wise old man’ with great advice :P. I am grateful to Hrutvij Chore and Tushar Singla, who gave me the guidance I needed at the right time. Also, props to the people at Career Development Cell for conducting the process smoothly despite the unforeseen circumstances.
Thanks for reading!
Update: Find my internship experience blog here.