Zynga Principal Software Engineer Interview Questions & Reviews
Getting an Interview
- Popular Job Titles:
- Software Engineer (51)
- Product Manager (21)
- Software Engineer New Grad (15)
- Software Engineer Intern (10)
- Senior Software Engineer (6)
- Data Analyst (5)
- Engineering (4)
- Game Designer (4)
- Software Engineering Intern (3)
- Producer (3)
- Software Developer (3)
- Director (2)
- Principal Software Engineer (2)
- Project Manager (2)
- Marketing Manager (2)
- Associate Software Engineer (2)
- Intern (2)
- Analyst, Player Advocacy and Service (2)
- QA Engineer II (2)
- Product Management Intern (2)
- Customer Care (1)
- Customer Service Manager (1)
- Corporate Counsel-International (1)
- Producer (New Grad) (1)
- QA/SEIT -≫ SE (1)
- Technical Support In the Dublin Office (1)
- Arist (1)
- Engineering Manager (1)
- QA Engineer (1)
- Customer Support (1)
Principal Software Engineer Interview (Positive Experience; Difficult Interview)
I applied through an employee referral and the process took 1+ week - interviewed at Zynga in April 2012.
Interview Details – Zynga has a great interview culture - one of the best I've ever been exposed to. Things started with a call from an internal recruiter, who had been poked by a friend of mine. He arranged a phone screen, which served as a poseur filter ("Reverse a linked list!", "DFS a tree!"), and was efficiently conducted. I was brought in just a few days later for in-person interviews, which worked through issues at the operational ("How would you handle proactive hardware provisioning for a giant web application?"), strategic ("Sketch a million-user presence system!"), and tactical ("Implement a distributed hash table!") levels. Every interviewer was on-time and showed evidence of having read my resume and thought it through. That level of preparation warmed my heart, since I had been the "tech interview guy" for years at a previous employer, and finally got a little karmic reward.
- How would you proactively provision hardware for a large LAMP application? Discuss monitoring, cost planning, and how you'd estimate the marginal value. Answer Question
- Suppose you need a chat system with 10M concurrent users, with a dense adjacency matrix. How would you implement a presence and chat system that scales to that kind of user base? Discuss tradeoffs among reliability, complexity, latency, and cost. Answer Question
- Implement a distributed hash table. Discuss how it will scale horizontally, how it might implement redundancy, and what kind of reliability guarantees it can make. Answer Question
Reason for Declining – It wasn't my best offer, in money terms, and I wound up with a more technically challenging position elsewhere, with the only company that did a better interview process.
Principal Software Engineer Interview (Positive Experience; Average Interview)
The process took a day - interviewed at Zynga in March 2011.
Interview Details – Standard stuff. prelim screening, then on-site - 4-5 1hr interviews.
You gotta be good at interviews. Wrote a hashtable implementation on the board (can you code).
Solved a few distributed systems problems - bank of webservers, tiers of caching, dealing with connection fan-in, etc (do you understand systems and networks, not just FOR loops).
Few other questions - interviewers were pretty good at it. I learned a few things to use in my own interviews.
- Huge bank of servers is pounding data layer with connections. What do we do? View Answer
- Implement a Hashtable. Chaining / Linear-probing, hash stuff. etc View Answer
Negotiation Details – I didn't need to negotiate. They hooked me up - serious efforts were taken to double my stock grant when I didn't even know what was on the line. Negotiate with what? No one else would pay me that much.
Interviews for Top Jobs at Zynga