Summary
I attended a hiring drive at Moonfrog Labs for an SDE2 role, which involved four rounds: cultural fit, LLD for Snake and Ladder, LLD for LFU Cache, and an HM round with Chess LLD and resume deep dive. I was ultimately selected.
Full Experience
Recently I attended a hiring drive in Moonfrog Labs for an SDE2 role. Here's my experience of the F2F interviews:
Round 1: Cultural fit round (~15 mins)
- A simple and informal discussion on my past experience, what does Moonfrog do. I was told to ask questions about the company if any.
- Just a discussion round
- Was asked why a switch from different domain to a Gaming company.
Round 2: LLD (>2 hrs)
- Was asked to build simple Snake and Ladder. The code has to be extensible and according to design principles.
- There were several follow-ups, e.g., limiting no. of chances if 6 comes, reducing the probability of getting high numbers on die as the player reaches near to finishing point.
- The interview was >2 hrs long. The interviewer was very helpful and supportive. Overall a good discussion
- Assumption: A working code is expected
Round 3: LLD + Problem solving (1 hr)
- Was asked to design a LFU cache
- Discussion of class diagrams, behaviors, and relations was done.
- Was told to implement one functionality end-to-end
- Interviewer was helpful
- Assumption: Typical LLD interview format
Round 4: HM Round (Resume deep dive + LLD) (1 hr):
- Was asked to optimize design solution in Round 3.
- There was a very deep discussion on my Resume and past projects.
- Was asked LLD of Chess.
- 2 Interviewers were there (One shadower). Both were quite supportive.
Verdict: Selected
Hope this helps!
Interview Questions (4)
Discuss your past experience and provide reasons for switching from a different domain to a Gaming company.
Design a simple Snake and Ladder game. The code must be extensible and follow design principles. Follow-up questions included limiting the number of chances if a '6' is rolled, and reducing the probability of getting high numbers on the die as the player approaches the finishing point.
Design an LFU (Least Frequently Used) cache. This involved a discussion of class diagrams, behaviors, and relations. I was asked to implement one functionality end-to-end. In a subsequent round, I was asked to optimize this design solution.
Design a Chess game using Low-Level Design (LLD) principles.
Summary
I received a call from a recruiter and proceeded to a DSA round. I was presented with two specific data structures and algorithms questions. Despite clarifying questions, the experience concluded with being ghosted.
Full Experience
I got a call from a recruiter.
let's keep it simple and straight-forward.
Round-1 : DSA
Some HLD questions related to DB & features i developed.
i was asked 2 questions -
- You’re building a dashboard for a ride-sharing service. Drivers submit ride logs throughout the day. Each log entry includes a driverId who picked up a passenger.
The operations team wants to identify the smallest number of drivers who together accounted for at least k total pickups in the day.
Your task is to return the minimum number of unique drivers required to reach at least k rides. The same driver may appear multiple times in the log (each time they picked someone up).
- You’re building a backend service for a video streaming platform. Each server in your system can support a maximum bitrate capacity (measured in Mbps). Given a list of available servers and their capacities, you want to allocate at most k servers to serve a user in a way that guarantees at least a certain total bitrate.
Your task is to find the minimum number of servers required to meet or exceed the target total bitrate.
"for both the questions i asked multiple clarity questions, and asked for some examples to help me clearly understand"
***got ghosted***.
***So please upvote this and help others if you find it useful***

Interview Questions (2)
You’re building a dashboard for a ride-sharing service. Drivers submit ride logs throughout the day. Each log entry includes a driverId who picked up a passenger.
The operations team wants to identify the smallest number of drivers who together accounted for at least k total pickups in the day.
Your task is to return the minimum number of unique drivers required to reach at least k rides. The same driver may appear multiple times in the log (each time they picked someone up).
You’re building a backend service for a video streaming platform. Each server in your system can support a maximum bitrate capacity (measured in Mbps). Given a list of available servers and their capacities, you want to allocate at most k servers to serve a user in a way that guarantees at least a certain total bitrate.
Your task is to find the minimum number of servers required to meet or exceed the target total bitrate.