Submitted resume online. I think it said there were so many people who apply that I could a multi-hour programming challenge online and if it was successful I'd get a phone screen call. Reviewing the sample problem, it might have been an NP-Hard problem or at least one that would require several hundred lines of mind-breaking code. I program all day for a living and even off hours for other projects. Resumes should qualify one for a phone screen. I submitted just that and got a canned rejection email a couple days later, presumably for not doing the quiz.
A couple weeks later I was contacted by a FB recruiter. We spoke approximate 30 minutes and emphasis was placed on how fun a place it is to work. They do a single 45-minute in person technical interview, and if that goes well they do 4, 45-min technical interviews in a single visit.
The single 45-min session started with about 3 minutes of initial talk about my resume and what I work on now. I don't get the sense they cared at all about experience or what I was or have worked on. After that charade was done, we jumped right to the whiteboard.
Two programming questions were asked. The first was an array reordering one that was almost trivially easy but I worked through it cleanly. He seemed quite happy with that. The second was significantly harder than the first, a complex array algorithm. I worked my way through it on the board but my solution was non-ideal in time complexity after analysis. He suggested we rework it. While I was able to and understood the logic, I relied on his feedback a bit much to come to the final solution in the last minutes.
Got rejection email the next morning from recruiter. Apparently others in their interview pool for the position had got a more optimal answer faster.
Interview questions [1]
Question 1
Max sum of non-adjacent value combination in an array.
The process is straightforward and designed to help us get to know each other. It moves through a few stages at a comfortable pace, involves conversations with several team members, and focuses on making sure it's a good mutual fit.
I applied through a recruiter. I interviewed at Meta
Interview
Had an initial recuriter call and then scheduled a coding round with 2 leetcode questions. Practicing Meta-tagged leetcode questions would help prepare for this round. Interviewers expect clear communication and code.
Software Engineer applicants have rated the interview process at Meta with 3.3 out of 5 (where 5 is the highest level of difficulty) and assessed their interview experience as 56% positive. To compare, the company-average is 56.5% positive. This is according to Glassdoor user ratings.
Candidates applying for Software Engineer roles take an average of 27 days to get hired, when considering 2,263 user submitted interviews for this role. To compare, the hiring process at Meta overall takes an average of 31 days.
Common stages of the interview process at Meta as a Software Engineer according to 2,263 Glassdoor interviews include:
Phone interview: 39%
One on one interview: 24%
Skills test: 15%
Presentation: 8%
Background check: 4%
Personality test: 3%
Group panel interview: 3%
IQ intelligence test: 2%
Drug test: 1%
Other: 1%
Here are the most commonly searched roles for interview reports -