The interview started with an intro call with HR. She described a fairly standard interview process at the company: one screening phone interview and five interviews for a virtual on-site.
The on-site interview did not include a system design component. It consisted of five coding challenges and one behavioral interview.
I had an interview with the hiring manager, but I failed one of the on-site interview challenges. Consequently, the hiring committee denied my application.
Although I did not receive an offer from Google, I have received one from another large company. I strongly recommend the following video for your preparation: "Dynamic Programming - Learn to Solve Algorithmic Problems & Coding Challenges."
Screening question:
Write a recursiveDescription function for a UIView that prints out a subview tree in the following example:
|
A similar example could be a recursive iteration through folders/files or a tree.
Onsite 1:
A question is similar to "canConstruct". Write a function that takes a string and an array of strings as input and returns a boolean if you can construct the string using substrings from the array. Alternatively, you might need to return an array of substrings.
Write a function that takes an array of floats (or doubles) as a parameter and returns the longest subsequence of floats where all elements have differences not more than 1 between each other.
For example, input:
[4.2, 5.3, 4.6, 9.8, 1.5, 5.2, 4.7]
Output:
[4.2, 4.6, 5.2, 4.7]
Explanation: If you find the difference between any pair of elements in the output, it would be less than or equal to one.
A challenge to merge pairs. For example, find free time between two calendars.
Recursive folder traversal in a file system. This is very similar to the first screening phone interview question. You get a folder-like data structure as input and return a string describing its tree structure. As an alternative, each subfolder might contain files, and you need to return a count of files contained in the folder and its subfolders.
The following metrics were computed from 4 interview experiences for the Google iOS Engineer role in New York, New York.
Google's interview process for their iOS 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 iOS Engineer interview process in New York, New York.