Zynga Interview Experience | On-Campus
Zynga came to my campus for the software engineer position. First they conducted the Computer based test, where they asked 3 coding questions and 15 Aptitude questions. We were given 60 minutes to solve both coding and aptitude. The 3 coding questions were :
- Find first non repeating element in an array
- Pairwise swap elements of a linked list by changing links
- Zig Zag traversal of binary search tree.
21 students were shortlisted for the next interview round. In the interview round everyone were asked different questions. I was asked data structures, Linux, Algorithms, System Design. But few of my friends were asked only data structures and algorithms for all the 3 rounds.
- Implement git diff (basic implementation) efficiently
I explained about my approach to first tokenize my document and use Tries data structure for the original document, although it was efficient in terms of time complexity but not in space. So interviewer explained me about doing it with the help of hashing(using MD5). I didn’t try it but if someone knows about it, please answer it in comments section.
- What happens when you run
The interviewer wanted me to trace the system call and the process of fork, exec, terminate etc.
- Mathematical Proof for why prime number program works even if you travel only until sqrt(n)
I did it by using some variables, notations and ultimately proving the point.
- Given a dictionary of words as a text file to you, Your input is a word return all the words from the dictionary whose prefix is the given word input. The design should be efficient in terms of time complexity. Basically he wanted me to develop auto complete.
I did it using Tries and used DFS to traverse and store all the predictions.
- Design and Develop a web server(eg apache, nginx)
Design is a highly subjective topic and also I have never worked with much of design and distributed systems in my engineering. I only knew the theory part which I studied online and from books. So I guess my interviewer was not satisfied with my design of web server. I therefore was rejected after this round.
Since I was rejected, but I came to know from my friend that they asked him data structure and algorithms as well as fundamentals of C and C++. For eg What happens when you use new command, trace all the system calls.
For your reference :
He expected the answer to be about
The interviewers were very friendly and were helping us out if stuck at some small or silly things.
For any more questions please ask in the comments section.
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.