The interview process begins with a phone call from a recruiter. They will discuss the job, highlight why you might enjoy it, and inquire about your experience and interests. If there's a potential fit, they will schedule you for a phone screen with an engineer.
The technical phone screen is conducted online using a Google Doc. You will be presented with one or two basic coding questions and will write your solution in the shared document for the engineer to observe. Passing this round leads to the on-site interview.
On-site interviews comprise five separate 45-minute sessions with engineers. Each interviewer maintains a record of the topics covered and the depth of discussion, without consulting previous interviewers. This system is beneficial as it prevents interviewers from forming preconceptions. If you perform poorly in one interview, it's not detrimental; focus on excelling in the subsequent ones.
Expect challenging computer science questions focused on algorithms. These will heavily involve data structures, text parsing or searching, and algorithm performance. It's advisable to review topics you may not use daily, such as tries and graphs, as well as more common structures like binary trees and hash tables. You should be able to determine the Big-O performance of your algorithms and know how to optimize them.
Interviewers are generally very helpful and aim for you to succeed. They will offer hints and guide you through challenging sections. However, you are expected to reach a working solution. If you haven't developed a functional, high-performance solution by the end of the 45 minutes, you will likely not pass that segment.
Signed an NDA, so I can't reveal my specific questions.
My preparation focused on data structures, text parsing, and text searching – essentially, anything text-related.
It might seem like an overload on one topic, but remember, they are a search company at heart.
The following metrics were computed from 344 interview experiences for the Google Software Engineer role in New York, New York.
Google's interview process for their Software Engineer roles in New York, New York is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Google's Software Engineer interview process in New York, New York.