Placement Experience - Saranya Satyavolu (Arista Networks)

Those having internships always find it hard to manage time for placement preparation. This always puts them in the dilemma, whether they should focus on internship so that they could bag the PPO or prepare for the worst. The same had occurred with one of our batchmates Saranya. So lets read about her story of preparing along with the internship and getting placed in Arista Networks, the networking giant.



I had an internship at Fidelity Investments. Managing time was the main challenge for me during the two months before the placement session. Students having internships need to focus to make most of the time available apart from their work schedules. I tried to utilize the free time I had after completing my project work, the time I was not at the office and especially weekends. The main suggestion I would give for those going for internships is not to panic comparing the time you have with those preparing at their homes. Everything is possible if you are determined. If you had the ability to bag an opportunity before, then you do have the ability to do it once again with proper preparation. Those who don't have internships, you can definitely make it if you effectively utilize all the time available without being pessimistic.

My Preparation Strategy

Coding

  1. Plan your day and set a target for the number of coding questions to be solved. Also, make a plan of the topic(s) to be covered. ( Interviewbit, GFG, Leetcode)
  2. After the topic-wise preparation, try to solve random questions.  This tests your ability to apply different data structures and algorithms and produce multiple solutions analyzing their time and space complexity without knowing their topic specification.
  3. Most of us make the mistake of not focusing on the speed of solving the problems. Participate in contests or mock tests frequently. This is really very important. Analyze your mistakes during the test, in managing time and start working to fix them. You have to be clear with all the standard algorithms.  A speedy application of the algorithms you've already learned and implemented before for the present problem will definitely stand as an advantage in managing time. If you plan to think and analyze in a new way for such questions during the test, it's not going to help and may leave you less time for other questions which require quite a lot of thought.
  4. Make a habit of writing pseudo-codes on paper clearly for at least a few questions you are solving (This helps in interviews). 

Core Subjects

  1. Invest some time say 30 to 45 min daily in brushing up your concepts of OS, DBMS, Networking and Object-Oriented Programming.
  2. If you are a CS/IT guy, you will have studied these topics by then. It's better to study from notes you might have made up before rather than going through the entire book prescribed. 
  3. Though you need to be clear with all the concepts of the different subjects, it's better to have a strong point. Have at least one of the above-mentioned areas as your strengths.
  4. GFG has different articles and interview questions for these subjects. Test your concepts with these questions.
  5. Make sure you have practical knowledge of these topics rather than just mugging up things. Check into some practical applications of these subjects. For example, during my internship session in a company's interview, I was asked to state the examples of abstraction (OOP) from the things around me in the interview room. 
  6. Last but not least most of the company's go for questions on the topic of system design. I used to follow a few youtube channels for some example questions on system design, also interview bit and GFG have a few sections on this topic. Also, there is a paid course on the website (educative.io), you can have a free preview of some examples or get an idea of the topics to be learned.

Communication skills

  1. You may be strong in coding and also have the required or maybe vast knowledge in the core subjects, but the inability of expressing what you are thinking may land you in serious trouble. This is something that is to be learned gradually and comes with confidence. Be confident but not overconfident with the interviewer. 
  2. Either take mock interviews or maybe just ask some senior or friend for the same. 
You need to be prepared for the questions that will be raised on the projects and internships mentioned in the resume. Make sure you don't mention anything you are not confident on. Sometimes having too many things on your resume puts you in trouble.

Interview Experience

Round 1: Online Test

There were three coding questions.
  1. N-ary tree. Search for an element in the N-ary tree.
  2. It was a question similar to implementing a one-dimensional Candy Crush.
  3. I don't remember this question.
Generally, Arista Networks does not allow languages other than C in the online test. During the internship test, only C lang allowed, however, this time they had allowed C, C++, Java, and Python.
I had solved two questions complete and one partial problem and was shortlisted for the interview rounds.

Round 2: Interview (Technical)

  1. A short discussion about my project and internship ( mostly related to machine learning and data analytics)
  2. Comparison of different programming languages say C++, Python. Why one should be used above the other in certain situations?
  3. Implementation of dynamic data typing, as done in python, using C++.
  4. The interviewer asked me to write the pseudo-codes for the above implementation.
  5. A few questions on Trie data structure (didn't ask any pseudo code for this)
  6. He asked me about the concept of fragmentation when the maximum transmission unit changes( packets being transferred between networks of different MTUS). How the fragmentation takes place and what is the method used for reassembling?  A solution and a pseudo-code for implementing the same in C++. ( the most optimal data structure and algorithm that can be used).

Round 3: (HR + Technical)

This round was the telephonic one. The interviewer asked me about debugging. He asked me to explain how and where I've used debugging in my coding experience so far. He expected me to give answers from an abstract level pushing up to a detailed level. I explained manual debugging as well as several debugging software implementations, one of them being GNU debugger.
He asked me about my internship experience and my areas of interest. One important suggestion here would be when you apply for a company or appear for an interview you need to know about the areas it is focusing on and you need to match your interests with the company's interest at least to some extent. Don't speak much about the area the company isn't focusing on or least focusing on ( even if you have them in your projects). This can be a major disadvantage for you. Lastly, he asked me whether I would make major decisions consulting my family. I said I would definitely consult them and take their opinion but would not completely depend on these opinions, I will definitely take my stand in the situation.

After this round, I was very nervous as I for no other candidate the telephonic round was taken. I was the only one left whose result was about to come and this made me more anxious. I had answered all the questions satisfactorily but still, the fear of rejection was there.

Finally, after half an hour a TPR came to me and told me that I have made it to the company. I was very happy. After the results, we had a dinner with the company representatives.

Some Tips

If you don't have things going your way in the early days of the session, just don't give up, keep trying. If you give up all the preparation would definitely go in vain. Discuss the questions you couldn't solve or made a mistake in with your friends who solved it and make sure you don't make the same mistake again and again. Never start with something new or complex just before an interview. This will lead you to unnecessary panic. Just try to divert your mind from the situation and continue later on with a fresh mind. I used to pause the preparation for a while, think about the positives and talk to friends or family to calm down. 

Comments