Although I was initially unsure about the career path that I was going to pursue, coding has been a passion for me since my schooldays. In my first year, I developed a keen interest in Competitive Programming (CP) and continued to explore other areas of computer science like machine learning in my second year. I also found my core subjects interesting, and I was able to maintain a good CGPA. These were a few of my efforts that helped me land an internship with a reputed company on-campus.
I am Balaganesh Manikandan, a 4th year student of B.Tech, Engineering Physics, and I had the privilege of joining Cisco as an undergraduate intern in software development during the summer of 2022.
After sending in our resumes, the first stage of the selection process was an online test. The test featured a few coding questions along with MCQs from topics such as networking and operating systems. I believe my performance in the coding questions and the information on my resume helped me reach the next stage, the interviews.
There were three interview rounds that were conducted. The first two rounds were mainly focused on my resume (skills, projects, internships etc.), along with a few simple questions related to data structures and networking. After clearing these rounds, the third round was a short HR round in which we discussed things like preferred work location and the department in which I would like to work. In the end, I was excited to find out that I was one of the five people who were selected for the internship.
A good CGPA is important for getting selected for internships/placements – some companies even have CGPA cutoffs. So, ensure that you devote enough attention to your coursework right from your first semester.
It is good to have projects on your resume but ensure that you do projects under a professor in IITR or a campus group – this is the only way that you can get them verified for your resume. Projects may help shift the interview conversation away from DSA (Data Structures & Algorithms). Also, ensure that you know the fundamentals of all the projects you add to your resume (the interviewers will ask about them).
For coding practice, solve problems on GeeksForGeeks and InterviewBit (and Codechef/Codeforces if possible), covering all the major topics in DSA. Participate in coding contests for timed practice (this will be a key in the tests and interviews).
Before the interview (or better still, even before applying to the company), it is a good idea to go over the job/internship description to see your roles and responsibilities, necessary/preferred skills etc. Based on these details, try to convince the interviewer that you will be a good fit for the company. At the end of the interview, you could ask relevant questions to the interviewer (when prompted, of course) about the company to show that you really want to work with them.
While some smaller companies were opening their offices, my internship with Cisco (in Bangalore) was completely online. Our onboarding was done on the first day, involving the introduction of all the interns as well as some members of Cisco Bangalore. After our laptops were set up, we were separated into teams, and I was working with five other interns on the “Collaboration” team. As the name suggests, we were working on the software used by Cisco to collaborate with other companies/organizations for various purposes.
The internship was eight weeks long, and the first week mainly involved getting familiar with all the technologies and concepts needed in our internship. After that, we got to pick from 3 projects given by our manager. As it turned out, we picked the projects such that there were 2 interns working under each project, subdividing us into smaller teams. My project involved exploring a mechanism to refresh an MS Teams tab application and track user presence changes in MS Teams (these were likely to be used in the Webex Meetings app for Microsoft Teams). Our code was written mainly in Node JS (along with some HTML, CSS and JS as well).
The project was more of a research-oriented task, and it was not known beforehand whether a solution to our problem existed or not. Instead, our mentors encouraged us to explore as much as possible to see how close we could get to our desired goal. The major limitation we encountered was that Microsoft Teams tabs immediately get destroyed when the user navigates to another tab within Teams. When the tab is loaded again, the web page (which is embedded in the tab) also reloads from scratch, and this type of behaviour was not desirable in our project. Although we could not overcome this issue completely, we found out that it is possible to use a WebSocket connection on the tab to update its contents remotely (as long as the Teams user does not navigate to another tab).
Our mentors were approachable, and we could ask them for help if required. We also had weekly meetings with our mentors where we needed to give demos/presentations showing what we had done each week. This helped improve our presentation skills, and it kept our mentors informed about how much progress we had made (so that they could decide on what was to be done in the next week). Being an online internship, the work timings were quite flexible and could be adjusted according to our convenience (up to some extent).
There were many online events that were held during our internship period, such as the Intern Happy Hour and Fun Friday. The Intern Happy Hour was an event in which each intern got a chance to talk to other Cisco interns from across the globe, while the Fun Friday event mainly involved us playing online games with Cisco employees on select Fridays. Cisco also offered swag items to those who were interested (you needed to collect points from other events to purchase the items, though). These events ensured that all the interns would have a memorable experience at Cisco despite the internship being online.
Despite working from home, my internship was a valuable learning experience. It taught me more about the field of software development and a few of the technologies used, and how to collaborate with team members and mentors to accomplish a goal. In addition, I was exposed to the Cisco work culture and noticed how different work life is from school/college life. It was a pleasure to work with Cisco for eight weeks, and I hope to make the most of my experience for my further pursuits.