Citrix Interview Experience for R&D Engineer (On-Campus)
Interview experiences on GeeksforGeeks have been a boon for me while preparing for my on-campus placements. Thanks a lot and now that I am placed at Citrix R&D, Bangalore. I thought why not help others with my interview experience. So here I have jotted down my interview experience for other aspiring students who use GeeksforGeeks for preparation.
Citrix R&D, Bangalore visited our campus from 28th to 29th August. The entire process of selection comprised of an online test and 3 interview rounds F2F(virtual). The company made the process eligible for CS, IT, CC, EC, EE branches. Around 350 people applied for the online test.
Round 1 (Online Test): The online test was conducted on Hackerrank. The total duration was 2 hours. There were 2 coding questions
- Given an array of length n containing the cost of moves. The starting position is index 0. You can either take one step or a prime number step ending with 3. The task is to calculate the maximum score(addition of costs) to reach the last (n-1)th index.
- Given an array of positive integers (may contain duplicates), the task is to find the number of triplets whose product is equal to a given number t.
40 MCQs: The MCQs were from popular CS subjects like Database Systems, Computer Networks, Operating Systems, theoretical concepts of digital electronics, basic aptitude, and C- programming outputs.
29 people were shortlisted for interview rounds.
Round 2(Technical): The interviewer had 10 years of experience at Citrix. The interview was conducted on codepair(Hackerrank). The total duration was 45-50 mins. The questions were asked on OS concepts like thrashing, multithreading, and process scheduling. Then a programming question with 6 test cases to pass was asked.
- They are 3 inputs a-first element of AP, d- common difference of AP, n- nth Prime number of the AP series. I was required to return the nth Prime number of the arithmetic progression. If the values of a and d weren’t coprime then 0 had to be returned. Fairly simple but further I was asked to reduce its time complexity of the code.
Then some CV-based questions were asked related to my projects. While I was coding, the interviewer asked about my interests and the technologies I knew.
20 people were shortlisted for Round 2.
Round 2(Technical): This round was oriented more towards CS-subjects, conducted on codepair. The total duration of the round was 2 hours. The questions asked were:
- Explain deadlock through real-life examples
- Explain how deadlock can be prevented in that situation
- Explain how the deadlock can be avoided
- What is the concept of context switch in the process?
- What are system calls?
- How is fork() and exec() calls different from each other?
- How do client and server processes communicate in a distributed system?
- What is the importance of having parent and child processes in a distributed system?
- Where are the processes stored during the context switch?
- What is virtual memory? What is its size?
- Explain the paging concept.
- What are different page fault algorithms?
- Name all the layers of the OSI model.
- What is the work of the Presentation layer?
- What are the different encoding techniques in networking?
- What are routers? At which layer are they used?
- How are routers, bridges, and switches different?
- What are the different types of Joins in DBS?
- What is normalisation?
- Explain all the conditions for Normalisation.
He asked me about the concept of Overloading. I was asked to write all possible functions for a given function to implement overloading. How do typecasting works? What is overriding? Code some examples and explain them.
After this discussion, the interviewer asked me a puzzle, 100 Doors Puzzle and this discussion continued for about 30 minutes. Then some questions like my plans on higher studies and what role would I be comfortable with at the company.
12 people were shortlisted for Round 3.
Round 3(Managerial): This was the last round taken by a networking engineer at the company on codepair. The total duration of the round was 30 mins.
- I was asked to explain my most recent project. Why did I go for flutter instead of Java/Kotlin for the app? What was the target audience of the app? Can the app be scaled?
- Then he asked me what all apps do I use in my daily life. He asked me to point out some flaws in those apps like Whatsapp, Facebook, etc.
- Then I was asked to rate myself in C++, Python. He asked me all the technologies that I knew apart from my curriculum.
- Then he asked me to implement a queue data structure using stack. The approach was asked wherein he pointed out that the time complexity was high. So I was asked to optimize it, and finally, code it. Then he asked me my previous rounds experience.
Result: 4 students were selected for the Full-Time Employee + Internship offer and 3 students were selected for the Internship offer. I secured FTE+Internship.
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. Google , E-Litmus and Microsoft Test Serieses.