Please indicate the source: http://blog.csdn.net/gaoxiangnumber1
Welcome to my github: https://github.com/gaoxiangnumber1
- Once you are selected for an interview, you usually go through a screening interview. This is typically conducted over the phone. College candidates who attend top schools may have these interviews in-person.
- Don’t let the name fool you; the “screening” interview often involves coding and algorithms questions, and the bar can be just as high as it is for in-person interviews. If you’re unsure whether or not the interview will be technical, ask your recruiting coordinator what position your interviewer holds (or what the interview might cover). An engineer will usually perform a technical interview.
- Many companies have taken advantage of online synchronized document editors, but others will expect you to write code on paper and read it back over the phone. Some interviewers may even give you “homework”to solve after you hang up the phone or just ask you to email them the code you wrote.
- You typically do one or two screening interviewers before being brought on-site. In an on-site interview round, you usually have 3 to 6 in-person interviews.
- One of these is often over lunch. The lunch interview is usually not technical, and the interviewer may not even submit feedback. This is a good person to discuss your interests with and to ask about the company culture. Your other interviews will be mostly technical and will involve a combination of coding, algorithm, design/architecture, and behavioral/experience questions.
- After your interview, your interviewers will provide feedback in some form. In some companies, your interviewers meet together to discuss your performance and come to a decision. In other companies, interviewers submit a recommendation to a hiring manager or hiring committee to make a final decision. In some companies, interviewers don’t even make the decision; their feedback goes to a hiring committee to make a decision.
- Most companies get back after about a week with next steps (offer, rejection, further interviews, or just an update on the process).
- If you have waited more than a week, you should follow up with your recruiter. If your recruiter does not respond, this does not mean that you are rejected (at least not at any major tech company, and almost any other company). Let me repeat that again: not responding indicates nothing about your status. The intention is that all recruiters should tell candidates once a final decision is made. Delays can and do happen. Follow up with your recruiter if you expect a delay, but be respectful when you do. Recruiters are just like you. They get busy and forgetful too.
The Microsoft Interview
- Microsoft wants smart people. Geeks. People who are passionate about technology. You probably won’t be tested on the ins and outs of C ++ APls, but you will be expected to write code on the board.
- You’ll have a short interview with a recruiter who will give you a sample question. Your recruiter is usually there to prep you, not to grill you on technical questions. If you get asked some basic technical questions, it may be because your recruiter wants to ease you into the interview so that you’re less nervous when the “real” interview starts.
- Be nice to your recruiter. Your recruiter can be your biggest advocate, even pushing to re-interview you if you stumbled on your first interview. They can fight for you to be hired-or not!
- When you complete your interviews with a team, you might speak with a hiring manager (often called the “as app’; short for “as appropriate”). If so, that’s a great sign! It likely means that you passed the interviews with a particular team. It’s now down to the hiring manager’s decision.
- You might get a decision that day, or it might be a week. After one week of no word from HR, send a friendly email asking for a status update. If your recruiter isn’t very responsive, it’s because she’s busy, not because you’re being silently rejected.
Definitely Prepare:
- “Why do you want to work for Microsoft?”
Microsoft wants to see that you’re passionate about technology. A great answer might be, “I’ve been using Microsoft software as long as I can remember, and I’m really impressed at how Microsoft manages to create a product that is universally excellent. For example, I’ve been using Visual Studio recently to learn game programming, and its APls are excellent:’ Note how this shows a passion for technology!
What’s Unique:
- You’ll only reach the hiring manager if you’ve done well, so if you do, that’s a great sign! Additionally, Microsoft tends to give teams more individual control, and the product set is diverse. Experiences can vary substantially across Microsoft since different teams look for different things.
The Amazon Interview
- Amazon’s recruiting process typically begins with a phone screen in which a candidate interviews with a specific team. A small portion of the time, a candidate may have two or more interviews, which can indicate either that one of their interviewers wasn’t convinced or that they are being considered for a different team or profile. In more unusual cases, such as when a candidate is local or has recently interviewed for a different position, a candidate may only do one phone screen.
- The engineer who interviews you will usually ask you to write simple code via a shared document editor. They will also often ask a broad set of questions to explore what areas of technology you’re familiar with.
- Next, you fly to Seattle (or whichever office you’re interviewing for) for four or five interviews with one or two teams that have selected you based on your resume and phone interviews. You will have to code on a whiteboard, and some interviewers will stress other skills. Interviewers are each assigned a specific area to probe and may seem very different from each other. They cannot see the other feedback until they have submitted their own, and they are discouraged from discussing it until the hiring meeting.
- The “bar raiser” interviewer is charged with keeping the interview bar high. They attend special training and will interview candidates outside their group in order to balance out the group itself. If one interview seems significantly harder and different, that’s most likely the bar raiser. This person has both significant experience with interviews and veto power in the hiring decision. Remember, though: just because you seem to be struggling more in this interview doesn’t mean you’re actually doing worse. Your performance is judged relative to other candidates; it’s not evaluated on a simple “percent correct” basis.
- Once your interviewers have entered their feedback, they will meet to discuss it. They will be the people making the hiring decision.
Definitely Prepare:
- Amazon cares a lot about scale. Make sure you prepare for scalability questions. You don’t need a background in distributed systems to answer these questions. See our recommendations in the System Design and Scalability chapter.
- Additionally, Amazon tends to ask a lot of questions about object-oriented design. Check out the Object Oriented Design chapter for sample questions and suggestions.
What’s Unique:
- The Bar Raiser is brought in from a different team to keep the bar high. You need to impress both this person and the hiring manager. Amazon tends to experiment more with its hiring process than other companies do. The process described here is the typical experience, but due to Amazon’s experimentation, it’s not necessarily universal.
The Google Interview
- A Google engineer performs the first phone screen, so expect tough technical questions. These questions may involve coding, sometimes via a shared document. Candidates are typically held to the same standard and are asked similar questions on phone screens as in on-site interviews.
- On your on-site interview, you’ll interview with four to six people, one of whom will be a lunch interviewer.
- Interviewer feedback is kept confidential from the other interviewers, so you can be assured that you enter each interview with blank slate. Your lunch interviewer doesn’t submit feedback, so this is a great opportunity to ask honest questions.
- Interviewers are typically not given specific focuses, and there is no “structure” or “system” as to what you’re asked when. Each interviewer can conduct the interview however she would like.
- Written feedback is submitted to a hiring committee (HC) of engineers and managers to make a hire or no-hire recommendation. Feedback is typically broken down into four categories (Analytical Ability, Coding, Experience, and Communication) and you are given an overall score from 1.0 to 4.0. The HC usually does not include any of your interviewers. If it does, it was purely by random chance.
- You do not necessarily need to excel in every interview, and your phone screen performance is usually not a strong factor in the final decision.
- If the hiring committee recommends an offer, your packet will go to a compensation committee and then to the executive management committee. Returning a decision can take several weeks because there are so many stages and committees.
Definitely Prepare:
- As a web-based company, Google cares about how to design a scalable system. So, make sure you prepare for questions from System Design and Scalability. Google puts a strong focus on analytical (algorithm) skills, regardless of experience. You should be very well prepared for these questions, even if you think your prior experience should count for more.
What’s Different:
- Your interviewers do not make the hiring decision. Rather, they enter feedback which is passed to a hiring committee. The hiring committee recommends a decision which can be-though rarely is-rejected by Google executives.
The Apple Interview
- Apple’s interview process has minimal bureaucracy. The interviewers will be looking for excellent technical skills, but a passion for the position and the company is also very important.
- While it’s not a prerequisite to be a Mac user, you should at least be familiar with the system.
- The interview process usually begins with a recruiter phone screen to get a basic sense of your skills, followed up by a series of technical phone screens with team members.
- Once you’re invited on campus, you’ll typically be greeted by the recruiter who provides an overview of the process. You will then have 6-8 interviews with members of the team with which you’re interviewing, as well as key people with whom your team works.
- You can expect a mix of one-on-one and two-on-one interviews. Be ready to code on a whiteboard and make sure all of your thoughts are clearly communicated. Lunch is with your potential future manager and appears more casual, but it is still an interview. Each interviewer usually focuses on a different area and is discouraged from sharing feedback with other interviewers unless there’s something they want subsequent interviewers to drill into.
- Towards the end of the day, your interviewers will compare notes. If everyone still feels you’re a viable candidate, you will have an interview with the director and the VP of the organization to which you’re applying.
- While this decision is rather informal, it’s a very good sign if you make it. This decision also happens behind the scenes, and if you don’t pass, you’ll simply be escorted out of the building without ever having been the wiser (until now).
- If you made it to the director and VP interviews, all of your interviewers will gather in a conference room to give an official thumbs up or thumbs down. The VP typically won’t be present but can still veto the hire if they weren’t impressed. Your recruiter will usually follow up a few days later, but feel free to ping him or her for updates.
Definitely Prepare:
- If you know what team you’re interviewing with, make sure you read up on that product. What do you like about it? What would you improve? Offering specific recommendations can show your passion for the job.
What’s Unique:
- Apple does two-on-one interviews often, but don’t get stressed out about them-it’s the same as a one-on - one interview! Also, Apple employees are huge Apple fans. You should show this same passion in your interview.
The Facebook Interview
- Once selected for an interview, candidates will generally do one or two phone screens. Phone screens will be technical and will involve coding, usually an online document editor.
- After the phone interview(s), you might be asked to do a homework assignment that will include a mix of coding and algorithms. Pay attention to your coding style here. If you’ve never worked in an environment which had thorough code reviews, it may be a good idea to get someone who has to review your code.
- During your on-site interview, you will interview primarily with other software engineers, but hiring managers are also involved whenever they are available. All interviewers have gone through comprehensive interview training, and who you interview with has no bearing on your odds of getting an offer.
- Each interviewer is given a “role” during the on-site interviews, which helps ensure that there are no repetitive questions and that they get a holistic picture of a candidate. These roles are:
- Behavioral (“Jedi”): This interview assesses your ability to be successful in Facebook’s environment. Would you fit well with the culture and values? What are you excited about? How do you tackle challenges? Be prepared to talk about your interest in Facebook as well. Facebook wants passionate people. You might also be asked some coding questions in this interview.
- Coding and Algorithms (“Ninja”): These are your standard coding and algorithms questions, much like what you’ll find in this book. These questions are designed to be challenging. You can use any programming language you want.
- Design/Architecture (“Pirate”): For a back-end software engineer, you might be asked system design questions. Front-end or other specialties will be asked design questions related to that discipline. You should openly discuss different solutions and their tradeoffs.
- You can typically expect two “ninja” interviews and one “jedi” interview. Experienced candidates will also usually get a “pirate” interview.
- After your interview, interviewers submit written feedback, prior to discussing your performance with each other. This ensures that your performance in one interview will not bias another interviewer’s feedback.
- Once everyone’s feedback is submitted, your interviewing team and a hiring manager get together to collaborate on a final decision. They come to a consensus decision and submit a final hire recommendation to the hiring committee.
Definitely Prepare:
- The youngest of the “elite” tech companies, Facebook wants developers with an entrepreneurial spirit. In your interviews, you should show that you love to build stuff fast. They want to know you can hack together an elegant and scalable solution using any language of choice. Knowing PHP is not especially important, particularly given that Facebook also does a lot of backend work in C++, Python, Erlang, and other languages.
What’s Unique:
- Facebook interviews developers for the company “in general;’ not for a specific team. If you are hired, you will go through a six-week “boot-camp” which will help ramp you up in the massive code base. You’ll get mentor-ship from senior devs, learn best practices, and, ultimately, get a greater flexibility in choosing a project than if you were assigned to a project in your interview.
The Palantir Interview
- Unlike some companies which do “pooled” interviews (where you interview with the company as a whole, not with a specific team), Palantir interviews for a specific team. Occasionally, your application might be re-routed to another team where there is a better fit.
- The Palantir interview process typically starts with two phone interviews. These interviews are about 30 to 45 minutes and will be primarily technical. Expect to cover a bit about your prior experience, with a heavy focus on algorithm questions.
- You might also be sent a HackerRank coding assessment, which will evaluate your ability to write optimal algorithms and correct code. Less experienced candidates, such as those in college, are particularly likely to get such a test.
- After this, successful candidates are invited to campus and will interview with up to five people. Onsite interviews cover your prior experience, relevant domain knowledge, data structures and algorithms, and design.
- You may also likely get a demo of Palantir’s products. Ask good questions and demonstrate your passion for the company.
- After the interview, the interviewers meet to discuss your feedback with the hiring manager.
Definitely Prepare:
- Palantir values hiring brilliant engineers. Many candidates report that Palantir’s questions were harder than those they saw at Google and other top companies. This doesn’t necessarily mean it’s harder to get an offer (although it certainly can); it just means interviewers prefer more challenging questions. If you’re interviewing with Palantir, you should learn your core data structures and algorithms inside and out. Then, focus on preparing with the hardest algorithm questions.
- Brush up on system design too if you’re interviewing for a backend role. This is an important part of the process.
What’s Unique:
- A coding challenge is a common part of Palantir’s process. Although you’ll be at your computer and can look up material as needed, don’t walk into this unprepared. The questions can be extremely challenging and the efficiency of your algorithm will be evaluated. Thorough interview preparation will help you here. You can also practice coding challenges online at HackerRank.com.
Please indicate the source: http://blog.csdn.net/gaoxiangnumber1
Welcome to my github: https://github.com/gaoxiangnumber1