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.
Hey geek! It’s time to become a success story instead of reading them. Check out our most renowned DSA Self Paced Course, now at a student-friendly price and become industry ready. And if you are looking for a more complete interview preparation resource, check out Complete Interview Preparation Course that will prepare you for the SDE role of your dreams!
Feeling prepared enough for your interview? Test your skills with our Test Series that will help you prepare for top companies like Amazon, Microsoft, TCS, Wipro, Google and many more!