Meta onsite experience, blr india
Summary
My Meta onsite interview experience in Bangalore, India, involved four rounds: AI-enabled coding, DSA, behavioral, and product architecture design. A key takeaway was the importance of clarifying ambiguous problem statements throughout the process.
Full Experience
I went through a comprehensive onsite interview experience at Meta in Bangalore, India, which consisted of four rounds. The order of these rounds was flexible and depended entirely on panel availability.
Round 1: AI-Enabled Coding Interview (60 minutes)
This round was quite unique. I was given an existing codebase, complete with .h and .cpp files, along with test files. The goal was to assess my problem-solving, code development and understanding, verification and debugging, and technical communication skills. It wasn't about using AI as a crutch, but rather as a tool to demonstrate my coding proficiency more efficiently and in a job-relevant manner. I had to run and execute code using existing data files and/or codebases to work through a coding problem. It felt very different from the standard coding interview format.
Round 2: DSA Round (45 minutes) This round presented two problems. The first problem involved determining if two given rectangles, specified by their coordinates, intersect. If they did, I was asked to return all points of intersection. This problem seemed straightforward initially, but I ended up wasting a significant amount of time on it. The second problem was quite vague and related to graph DFS. The interviewer initially asked me to implement two functions, but after I pressed for a lot of clarifying questions, he revealed that those functions were already implemented, and I only needed to implement a third function. By this point, only 7-8 minutes were left. He asked me to code whatever solution I could, and I managed to code the entire solution to his satisfaction. I realized how crucial it is in Meta interviews to proactively clarify the problem statement myself.
Round 3: Behavioral Round In this round, the interviewer focused on understanding how my skills and experience would benefit Meta and how I approach unfamiliar problems. Key areas of discussion included resolving conflict and embracing ambiguity. No specific coding or design problems were posed here.
Round 4: Product Architecture Round This round, which shouldn't be confused with a typical system design interview, challenged me to design privacy level settings for a user within the Facebook app. The settings included options like "Me," "Public," "Friends," and "Friends of Friends." I had to ask numerous clarifying questions to fully grasp the problem statement. I'm uncertain about my performance in this round, but I attempted to list all functional and non-functional requirements, sketch a high-level architecture diagram, identify key entities, and discuss API aspects. The interviewer rigorously questioned me on the database schema and entity relationships, particularly focusing on the "Friends of Friends" case and potential optimization techniques.
Overall, I found that the questions across all interview rounds were often presented in a very vague and open-ended manner, and candidates are clearly expected to proactively clarify them.
Interview Questions (2)
Given the coordinates of two rectangles, determine if they intersect. If they do, return all the points of intersection.
Design privacy level settings for a particular user for the Facebook app, covering options like 'Me', 'Public', 'Friends', and 'Friends of Friends'.