Recruiter contacted me via a referral.
Had a phone screen with one of the engineers 2 days later. The phone screen involved the engineer talking about some of the projects he is currently working on, some of the past projects i did, my particular contributions to open source projects and some technical questions with regards to PHP, MySQL, and frontend scripting.
Waited about 1 day before being informed of an onsite interview. Onsite involved 6 rounds of interview with 2 backend engineers, 1 frontend engineer, 1 project manager, CTO and CEO. There were coding questions on data structure, algorithms, SQL queries and OO design. The CTO were very open on sharing engineering details and had clear idea what my role will be able to learn in the company. CEO asked about my backgrounds and questions on whether i have donated to a cause, how do i think GFM is different from conventional donation channels etc.
I like that interviewers are open about the pro/cons of working in the company and everyone of them are passionate about the company's vision.
Was given an offer 3 days later. I had competing offers so I negotiated abit on what i think is fair. They accepted my request.