I applied through a recruiter. The process took 4 weeks. I interviewed at Meta (Palo Alto, CA) in Jun 2010
Interview
Was originally contact by a recruiter over LinkedIn.
I had a phone interview, followed by a visit to a Facebook recruiting event where I met with an engineer in-person, followed by another phone screen, followed by an on-site in Palo Alto with 4 members of the engineering staff.
The whole process seemed somewhat disorganized, I was informed after my recruiting event visit that I would be getting an on-site as the next step, but was informed a couple of days later that I'd have to do another phone screen first.
The questions in the screens and the onsite seemed reasonable enough. I'll admit to having somewhat of an off-day at the on-site. I completely fumbled the "are there any bugs in your code" question with at least one of the interviewers; I said there wasn't, but there was a pretty obvious bug once he described the failure mode to me.
There was a scheduling mix-up with at least one of my interviewers, which caused my time with him to be cut short. I'm sure that didn't help with him getting a good feel for me for the sake of his interview feedback.
The culture seems a bit more corporatey than the recruiting buzz might put forward; it seems geared toward people who want to have one foot in the startup pond while having the other firmly planted on the dry land of large, relatively safe organization. There are a lot of small teams, and the reflection I got is that there is a non-negligible amount of bureaucracy weighing on the organization. I guess when you get to 1000 people, that will happen.
The office space is a mostly open floor plan, and the gear the developers are provided to work on is really good stuff.
But that's an initial impression, and things are not always as they appear.
So yeah, weirdness in the interview scheduling and such dragged down my impression, but I'd probably give the dice another roll if the chance comes up again. If nothing else, it will allow me a second glimpse to either bolster or contradict my first impressions.
Unexpectedly, the first question in the technical round felt familiar. It was about finding a subset of strings with unique character concatenation — same problem I had worked through on PracHub a few days earlier. The interview included a recruiter screen followed by a rigorous pair of technical interviews where I tackled data structures and algorithms alongside system design concepts. After successfully answering a few more challenging DSA questions, I received an offer. The entire experience was intense but ultimately rewarding, and I happily accepted the position.
Interview questions [1]
Question 1
Given an array of strings, pick a subset whose concatenation contains no duplicate characters, and return the maximum possible length of that concatenation.
Standard cookie cutter interview with a coding interview, a system design interview and culture interview. The coding part is basically leetcode. The system design is what you can find on many youtube videos. The culture one is more tricky as they want to see that you fit Meta's culture, not that you were doing great at your existing company. So skills like dealing with conflict without calling in managers is sought after.
Interview questions [1]
Question 1
coding: I forgot, sorry
system design: design ticketmaster
culture: talk about past project; when you disagreed with a peer; how I resolved dissagreements, etc.
The interview felt more straightforward than I anticipated for a well-known tech giant. After a recruiter screen, I faced a technical round that included a DSA question about finding the lowest common ancestor in a binary tree. I was pleasantly surprised when I realized the exact problem had popped up in the algorithm practice section on PracHub during my prep. Ultimately, the experience was decent, but I chose to decline the offer as it didn’t align with my current goals.
Interview questions [1]
Question 1
Given a binary tree, find the lowest common ancestor of two given nodes in the tree.