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.

 



Round 1: 

  • 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 ls.

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.

Round 2: 

  • 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 DFS to store all the predictions.

  • System design for web server(eg apache, nginx)

System design is a highly subjective topic and also I have never worked with 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.

Round 3: 

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 new->malloc, mmap(), brk(), sbrk().

 

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.

 

Write your Interview Experience or mail it to contribute@geeksforgeeks.org



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

1


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.