Status: 7+ years of experience, currently working in Bengaluru for a mid-sized company.
Position: Software Engineer 3 at Cisco.
Location: Bengaluru, KA.
Interview Date: Nov 2020.
I applied directly through the Cisco portal, and after a month, a recruiter contacted me. He requested a brief introduction about myself, my expected compensation, and all other basic information. Then he shared the OA link with them and asked them to finish it. That wasn’t necessary, in my opinion, because he scheduled the first technical round at the same time.
Virtual On-Site Interviews:
Round 1: The interview began late, and the interviewer appeared to be preoccupied with a production issue. So, after a brief introduction, jump right into the question. He asked two questions, one medium and one easy.
- Minimum steps to reach the target by a Knight. https://www.geeksforgeeks.org/minimum-steps-reach-target-knight/. We had a lengthy discussion about strategy and code. Then he asked me to write pseudo code. I was missing one optimization, but he was fine by the end, and then he inquired the second question.
- Search element in the sorted matrix. https://www.geeksforgeeks.org/search-in-row-wise-and-column-wise-sorted-matrix/. I solved it with a simple while loop, and at the end, I mentioned additional optimization that could be done to achieve in log (n).
Overall, even though I answered the above questions in a timely manner, I felt there was a disconnect between what he expected and my solution. I had the impression that he had another plan in mind. Anyway, I got a call 4-5 days later for the next two rounds.
Round 2: He was a very experienced individual who stated that he had been with Cisco for the previous 15 years (more than my entire IT career :D). Anyway, he was friendly and encouraging, and he asked a simple question about a reverse linked list.
- Reverse a linked list. https://www.geeksforgeeks.org/reverse-a-linked-list/
- Then he moved on to a Java question, then to multi-threading, and finally to writing the famous ODD-EVEN question using two threads. I wrote pseudo-code for this and explained it, and I also discussed object lock behavior. Then, for the next 10 minutes, we talked about multi-threading, and he kept digging into my knowledge of multi-threading. Overall, it was a positive experience.
Round 3: This was the most straightforward round I’ve ever played :D. He never asked me to introduce myself (you had already two rounds, no point in asking you again the same question to tell about yourself :D). He asked me to write a zig-zag binary tree traversal algorithm.
- ZigZag Tree Traversal. https://www.geeksforgeeks.org/zigzag-tree-traversal/
He anticipated running code that covered all edge cases. Later, he asked me to change the code, so that traversal could be controlled by a Boolean. Assume that if the user passes true to your method, the traversal should begin from left to right; otherwise, it should begin from right to left. I made a minor change, and the code was now operational. He was overjoyed and asked if I had any questions. So, as part of this job, I inquired about culture and work/responsibility.
Round 4: Following a discussion with the manager, this was the fitment round. There were numerous inquiries. They appear to be very concerned with fitment round. It took about an hour. The entire interview process took about 15-20 days, and we received confirmation that they will initiate an offer.
I hope this helps someone prepare for a job at Cisco or another similar company. Good luck to everyone who is getting ready for interviews! I hope I didn’t leave anything out.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course. In case you are prepared, test your skills using TCS, Wipro, Amazon and Microsoft Test Serieses.