Zynga | SSE | Bengaluru/Remote | July '22 [Reject]
Anonymous User
685

YoE: ~5

Screening: Got a call from recruiter after resume screening

Round 1 (1.5 hr)

  1. Basic questions regarding current project, experience etc.

  2. Generic questions on load balancer, authentication vs authorization, DNS, what happens when one enters a URL in browser etc.

  3. Given a MxN integer matrix, you need to convert all negative numbers to positive numbers in minimum number of passes.
    In each pass, for a given positive number at (i, j) => negative numbers at location (i-1, j), (i+1, j), (i, j-1), (i, j+1) can be converted to positive number.

Approach: Gave a BFS based working solution.

Round 2 (1 hr)

Was informed that this would be a problem solving/LLD round but turned out to be a design round.

  1. Design real time notification system for an app like Cricbuzz.
    Requirement: User should receive live notification for any current match (4s/6s hit, maiden over, milestones reached etc.). System should be scalable for millions of users

Approach: Gave an HLD on how the components should look like. Discussion moved to handling of requests at client side vs server side. Interviewer was looking at a solution around observer pattern. Wasn't able to make much progress here.

  1. Design a system to open & close windows. Following operations need to be performed:
    i) openWindow(windowName) -> should open a new window on top of already existing windows
    ii) closeWindow(windowName) -> close a given window
    iii) getTopWindow() -> retrieve most recently opened window

Approach: Proposed a stack based solution first. As the closeWindow operation would have needed O(N) time, so proposed an optimised solution using doubly linked list + Map. This would have ensured all the operations in O(1) time. The interviewer didn't seem too pleased with the added space complexity for the second solution.

Verdict: Rejected after Round 2. Overall a good experience.

Comments (1)