How Chinese programmers get Facebook offers

How Chinese programmers get Facebook offers

Preface

In October 2014, I was fortunate enough to pass Facebook's phone interview, participated in the on-site interview in Palo Alto, and finally successfully got the offer. During this period, there were many things I wanted to record as a memo. At the same time, when I was preparing, I found that there were very few materials and sharing about Facebook interview experiences in China. Therefore, I also want to share my experience with everyone in the form of records, so that more Chinese can become a member of Facebook! The entire record will be divided into three parts: interview process, interview questions, onboarding process and life preparation. In order to avoid misleading the students, I will describe the first two parts as objectively as possible, and reduce subjective understanding unless it is particularly necessary.

Since the position I applied for is MySQL Database Administrator, which is relatively unpopular, in order to reach a wider audience, I try to focus on the experiences that can be generally used by programmers and other IT positions in interviews. If you can't stand the blogger's rambling narrative style, you can jump directly to the last section to get a brief pass. :)

Basic Requirements

Let's take a look at what it takes to be a potential candidate for Facebook. The requirements are much simpler than you think:

After getting the offer, you need to show your undergraduate transcript when applying for a work visa, so a bachelor's degree is the minimum requirement.

There is no strict requirement for English, and IELTS or TOEFL scores are not required. I personally think that if you can understand the technical sharing on YouTube without any obstacles, and know some basic daily grammar and related professional vocabulary, you can complete the phone interview and the face-to-face interview relatively smoothly.

There are no rigid certification requirements for professional experience in related fields. Of course, if you don’t have an internal referral channel, having a few certificates can increase your chances of passing the resume filter.

Whether you have the technical experience to maintain and design systems at the scale of Facebook servers is an important consideration. Of course, you are not required to have such a large scale of experience (after all, there are not many companies like this).

Family "One person's offer, the whole family benefits" is my summary of Facebook Relocation. After receiving the offer, Facebook will take your family (spouse and children) into consideration as a whole. So as long as your family supports you, family will not be a hindrance to joining the company.

Before joining Facebook, the blogger of overseas life experience had never been abroad except for a self-guided honeymoon tour. This also proves that there is no hard and fast requirement in this regard. I personally think that life is like learning to swim. Once you are thrown into the water, you will learn everything after a few splashes.

I can climb over the wall...

After reading so much, do you think you are also a qualified FB candidate? Quickly enter the online application stage.

Phase 0: Online Application

Actually, I had planned to go to San Francisco at the end of September 2014. So I tried it out and saved money on air tickets if I had to do an on-site interview. I found several Silicon Valley companies that were recruiting MySQL DBA positions through Linkedin. I selected several giants and sent my resume, including Google, EA, Apple, Linkedin, Twitter, and Facebook (FB). Unfortunately, only FB passed the resume screening and received an email reply. Later, I learned from friends who have worked in these companies that sending resumes to many companies is indeed a relatively inefficient way. It is very likely that you will lose the opportunity for a subsequent interview because the keywords in your resume do not match successfully. Therefore, it is not surprising that the first round pass rate is so tragic. They strongly recommend that if you want to stand out from the resume screening of Silicon Valley companies, you should try to find company employees to do internal referrals. {: style=”color: red”}

However, compared to domestic companies, Silicon Valley giants do a better job in that they will email you the result within two days, regardless of whether your resume is accepted or not. Therefore, it is recommended that you check the email address you leave when applying online once a day. The following is one of my many tragic (rejection) letters:

Thank you for your interest in a role at Twitter. We have reviewed your experience in regards to this open position, and unfortunately do not see a strong match for you at this time. We will also keep your resume on file should a future match become available. We realize it is a time commitment to engage any company in the application process and we sincerely appreciate your efforts.

For detailed information about positions, each giant has its own recruitment homepage. You can also search through Linkedin. FB's detailed information about positions can be found at: https://www.facebook.com/careers?_rdr. What? Blogger! This link cannot be opened! Well, circumventing the firewall is an "interview question" for mainland applicants.

In addition, make sure you are ready before going through the entire application and interview process. Because FB is very efficient, the shortest time from online application to the first phone interview is only two or three days. Once you fail, you need at least half a year to cool down before the next application.

Stage 1: Phone Interview

After exchanging several emails with the HR, we agreed on a time for the phone interview. Due to the time difference, the interview was scheduled at 1 a.m. Beijing time. Facebook's working hours are from 9 a.m. to 6 p.m. local time, which corresponds to 1 a.m. to 10 a.m. the next day in Beijing time. If it is US daylight saving time, the time difference is reduced from 16 hours to 15 hours. Therefore, there are two options for mainland applicants for the interview time: one is to stay up until the early morning, and the other is to get up early for the interview. Since the blogger was still working in the previous company at the time, it was not a very safe choice to interview at the company at 10 a.m. Therefore, the time for several phone interviews was set at home in the early morning.

If everything goes well, there will be 3-4 phone interviews in total (I had 3, the specific number depends on the job requirements and the quality of the interview). Phone interviews use a direct elimination system. The results of the phone interview directly determine whether you can enter the next round (not the average of multiple interviews). Therefore, you should pay special attention to each round of phone interviews. Each phone interview time is controlled within 45 minutes. Regardless of whether the questions are completed, the technical phone interview will take the full 45 minutes. The phone interview method can be a phone call (from the interviewer's landline) or Skype. The blogger recommends using a mobile phone, as the call quality of Skype is not very stable. During my phone interview, I used both. In comparison, the phone experience is better because you can record the call content and review it later. Before each phone call, I would stay in a quiet room half an hour in advance and do some simple interview exercises to warm up. Then make sure the phone is unobstructed, the headset volume is OK, and Skype is online. Generally speaking, the interviewer's call time is very punctual. The time of my three phone interviews was no more than 5 minutes away from the agreed time! This is also part of FB's rigorous recruitment style. The phone interview is conducted in English throughout. At the beginning of each phone interview, the interviewer will briefly introduce himself and give a detailed 5-minute introduction to the time and content of the phone interview. This part is a great opportunity for you to adapt to the interviewer's accent. I was lucky that all the phone interviews were conducted by native English speakers. If you have a poor tolerance for Indian accents, it is recommended that you search for some technical sharing videos of Indian guys on YouTube to study them.

The above is the common content of each phone interview. The following is a detailed introduction of each round of phone interviews:

Note: This article only introduces the process, all technical questions will be shared in subsequent articles

1.1 First phone interview

The first phone interview was conducted by the Recruiter (commonly known as HR in China). In the entire recruitment process, from the phone interview to the onboarding, he is your only contact person except for the technical examiner. So leaving a good impression on him is of course the first step to success. After a brief introduction to the process, I was asked to introduce myself. Then, several specific non-technical questions were asked based on my work experience related to the position I was applying for. After that, there was a Q&A session on objective basic questions. The so-called objective basic questions are questions with a single standard answer. For example: What is the port on HTTP on Linux? There are 20 questions on MySQL and Linux basics. During the question-answering period, the recruiter will not tell you whether you are correct or not. Therefore, you can correct the previous answer before the end of the question-answering period. I corrected it once. After answering all 40 questions, the interviewer will tell you how many questions you answered incorrectly. I got one question wrong at the time, and the interviewer hinted that the score should be enough for me to enter the next round of interviews (I don’t know the specific passing score). After answering the questions, there was a Q&A session. Two routine questions prepared in advance were asked, one about the position itself and the other about the company culture. Finally, thank each other and wait for the interviewer to hang up the phone first.

1.2 Second phone interview

The second phone interview is a coding technical interview, which will be hosted by the future team members. The format of the coding technical interview is that within 45 minutes, the interviewer will give 4 technical questions and ask the interviewee to answer them on Stypi. Stypi is an online collaborative code editing website, which means that your real-time code writing and modification will be displayed on the interviewer's side (it can be understood as a web version of the remote desktop). Each question will be posted in the editing area through Stypi, and then the interviewee will do the coding on the spot in the editing area. After each question is asked, if you feel that the question is not clearly stated or there is ambiguity, you can ask the interviewer immediately. After each question is answered, if the interviewer decides that there are obvious bugs or low efficiency, he will point them out and ask the interviewee to modify them or orally state the improvement plan (depending on the time schedule).

Here is a screenshot of the Stypi interface:

1.3 Third phone interview

Since I was applying for the position of MySQL Database Administrator, I had to do a technical interview on MySQL. The third interview was with another future colleague. This round of interview was in the form of questions and answers, so no computer was used. The questions were from the simplest to the most complex, and all tested some basic knowledge of MySQL. At the same time, they would also ask in-depth questions based on the self-introduction and project experience on the resume.

1.4 Fourth phone interview

In the first phone interview, the recruiter mentioned that there would be four rounds of phone interviews, and the fourth round would be a troubleshooting exercise. Maybe it was due to the schedule (because there was only a week before I left for San Francisco), or maybe the previous inspection had achieved its purpose. The recruiter emailed me to inform me that I would go directly to the Palo Alto headquarters for an interview. Bravo!

[[155795]]

Stage 2 On-site Interview

2.0 Before the Interview

After confirming the qualification for the on-site interview, the interviewer will confirm the specific interview time. At the same time, the candidate will be asked to apply for an entry visa. Since I already had a B1/B2 visa due to my previous plan to go abroad, I skipped this step. Generally speaking, the US visa cycle is more than two weeks, including material preparation, submission, embassy interview, passport express delivery, etc. According to later experience, all these processes will be tracked and assisted by FB's designated agent BAL. Therefore, the whole process will be very worry-free and very user-friendly!

Due to my personal arrangement, I arranged my own air tickets and accommodation. In fact, according to FB's policy, all round-trip air tickets and accommodation for interviews are all-inclusive. According to later experience, the air tickets will be ordered by FB's designated agent CWT, with business class standards. The hotel is a five-star hotel, and the time is generally up to three days, namely: the night before the interview, the day of the interview, and the adjustment day after the interview. Both parts of the money are paid by FB. In addition, FB allows reimbursement of living expenses incurred during the interview, $150 per day. Including: round-trip taxi tickets to the hotel and airport, food expenses and basic daily necessities. This part of the fee will be paid to the interviewee by uploading the invoice (Receipt) through the system within one month after the interview. So it is best to have a bank card from a bank that supports international remittances (with SWIFT CODE) in advance.

2.1 Interview Day

The interview was scheduled to be held at 9:45am at the Hacker Way Site. I took the direct bus provided by the hotel and arrived at the FB headquarters early. I registered as a visitor at the front desk and waited for about 10 minutes before my interface recruiter came to pick me up. Since I arrived early, he first took me on a general tour of the campus, and of course he couldn't help showing me the dozen or so restaurants that FB is proud of. Afterwards, I quickly grabbed a cup of coffee in a lounge and went to the interview room. The so-called interview room is a meeting room that is pre-booked for a day, and the candidate's interview for the entire day will be conducted here.

There are 5 rounds of on-site interviews in total, each round is strictly controlled within 45 minutes (if you can't finish answering, it will end, and if there is time, continue to chat), and there is one interviewer in each round. According to my situation at the time and previous interview experiences, the division of labor in the 5 rounds is relatively clear, namely: coding, practical experience, future manager, future teamate, and future brother team member. Since we are mainly talking about the process today, I will roughly go over the interview questions tendencies of each person here. The specific interview questions will be shared in subsequent blog posts.

Coding part: It is similar to the previous interview questions, but the format has changed to FB's famous white-board coding, that is, writing code on a large whiteboard. In other words: no highlighting! No auto-completion! Those who rely heavily on IDE may find it a bit difficult if they are not prepared.

Practical experience part: Since I was interviewing for MYSQL DBA, the content was closely related to the internal principles of MySQL. According to the recruiter, they would ask questions until you don’t know the answer (find the boundary of knowledge). Generally, this part would be conducted by technical experts. The form was Q&A + pseudo code on whiteboard.

Future manager part: 0.5 humanities + 0.5 technology. Mainly examine teamwork ability, and the difficulties encountered in some past projects and how to solve them. If you don’t lie on your resume and have rich practical experience, this stage will be very easy.

Future teamate: full technology, the depth of this part will not be as deep as the technical expert interview. Personally, I guess this part is not only a double check of technical ability, but also to ensure that the candidate can communicate well with future colleagues.

Future team members: This part mainly examines the extent of surrounding knowledge. For example, as a MySQL DBA, it is necessary to understand Linux-related knowledge; for a programmer, it is also necessary to understand some product design principles or front-end knowledge, etc. In addition, the ability to communicate across teams is also examined.

Since the interview started in the morning, there was a one-hour lunch break after the first two rounds. Of course, this time was the time to enjoy the luxurious meals on FB and adjust my state. The recruiter told me at the time that the most annoying time of the day was lunch time, because "which canteen to go to and what to eat" was the most difficult problem. For this reason, they also have an internal APP to display the menu of meals provided by each canteen on the day, ORZ...

After the full-day interview is completed, if there is no special arrangement, the Recruiter will ask if you want to continue to visit. Otherwise, you will be accompanied to leave the park and complete the interview for the day.

2.2 Results after the interview

There will be a candidate PK meeting around Friday of the week of the interview, and each interviewer will express his or her opinion. At this meeting, a conclusion will be drawn as to whether a candidate has passed or not. I received the employment result about 5 days after the interview. After that, the recruiter will draft the offer, negotiate the salary (I will not tell you the specific salary, if you want to know a rough industry standard, you can go to Glassdoor), confirm by email, and go through the process. After the offer is finalized, the relocation project will be initiated. FB has designated agents to help you with all the relocation-related issues you can think of, which is very thoughtful! For example: visas, moving shipping, temporary accommodation, air tickets, etc. I will also update the part about Chinese relocation and life abroad in future blog posts.

Tips

If you are going to or are preparing to participate in a FB phone interview, here are some points that I personally think you should pay attention to.

Do not write knowledge that you have not done or are not clear about in your resume. Any information may be examined in the phone interview.

The email address you provided when applying should be kept accessible and available. It is recommended that you check for new emails every day.

The telephone interview environment is recommended to be quiet, with a suitable temperature and good telephone signal.

Prepare a pair of headphones with a microphone for the phone interview (a regular mobile phone headset will do).

Make sure your phone is fully charged

You must read Wang Huai's "Building Facebook". Most of my questions about the interview process were answered in the book (PS: I'm really not an agent of the publishing house! If you think I'm an agent, you can read the PDF. PPS: Don't hit me, publishing house)

Before the coding interview, it is recommended to practice some simple algorithm questions through stypi

Where to find whiteboard questions: LeetcodeTopCoder, Codeforces, Project Euler are all good choices

Regarding the salary range, you can refer to the standards given on Glassdoor, which are basically accurate.

About Family

Income: With Facebook's salary, it is basically not a problem for one person to support a family of three, and there will be a little surplus.

Visa: Facebook's designated agent will help a family of three to handle everything (but not the applicant's parents)

<<:  What is WebWorker?

>>:  A simple and crude front-end and back-end separation solution

Recommend

Tu Ma "Hot Copywriting" Hard-core Special Forces Incubation Camp

The course comes from the popular copywriting har...

Beware! AI is beginning to undermine human safety training...

With the rapid development of artificial intellig...

It's time to change your chopsticks!

Chopsticks, as one of the necessary tableware on ...

The fish you eat most often are actually the nightmare of Americans? !

Speaking of carp, you may forget what it tastes l...

Decrypting “User Uninstall”! 3 data points worth paying attention to!

Do you want users to use your app for a long time...

If we don’t speak the same language, will our thinking also be different?

If we don’t speak the same language, will our thi...