Although there is high competition to get hired at these places, this should never discourage you from trying. In this article, I will summarize the most common way I have seen candidates get hired at these tech firms straight out of college.
Step 1) Go to a Hiring Event
Google, Amazon, and Facebook regularly hold hiring events on university campuses so keep your eyes peeled for these events. If you are out of college or have recently graduated, find a recruiter on LinkedIn.
When I went to these events, I made sure to stay after everyone has left and once they did, I handed in my resume so that it would be on top. It also helps to have work experience for other companies, and if you do, they may overlook bad grades. I know this to be true since my GPA was 2.89…
Step 2) Prepare for the Interview
There are usually 2 or 3 rounds of interviews which may consist of 1-2 screening interviews followed by a full day interview.
Screening interviews may be done in-person, over the phone. There are typically 2 roles you can prepare for, Software Engineer or Product Manager. There are two books I highly recommend by Gayle Laakmann McDowell, Cracking the Coding Interview for Software Engineers and Cracking the PM Interview for Product Managers.
For the software engineer interview, practice as many problems from Cracking the Coding Interview as you can. Do all of the coding problems related to algorithms and data structures. And for the PM Interview, go through the exercises related to design. It helps to have a friend to go through a practice interview with.
Step 3) The Interview
The screening interviews may be anywhere from 15 mins to 45 mins. You generally have to save one or more coding or PM problems. Be sure to verbalize all of your thoughts and pretend the interviewer is a colleague that you are working with to solve a problem.
The full day round of interviews consists of 4-5 hour long interviews with potential team members, you potential manager and their manager. If you practiced the problems from the book, you should be in good shape for this part. Remember to always communicate your thoughts and avoid dead silence.
Step 4) Do an Internship
The internship is the best way to get your foot in the door. And if you are hardworking and fairly competent, you will get the job after completing one. You should request to do this if you are still in school as they may set a higher bar for hiring directly into full time (although this is not always the case).
You will typically be given 1-2 projects to work on for 3 months. Make no mistake, this is a try-out for a job. If you complete your project and you complete it well, you will get the job. Around 80% of interns receive full time offers.
Step 5) Negotiating the Offer
Find out what the going rate of your position at your level is. You can search salaries on Glassdoor.com. You should always request the going rate and you can always demand a higher starting salary if you have competing offers.
Salaries for entry level positions at these big tech companies can start at $108,000 per year and signing bonuses can be anywhere from $100,000 to $150,000 in stock (vested over 4 years) so be sure to negotiate what you are worth!