I was referred by an employee and applied to three positions through Google's job site. A couple of weeks later, a recruiter approached me.
When the recruiter detailed the interview process, she asked me which programming language I felt most comfortable being interviewed with. I answered JavaScript. However, they told me JavaScript is not a programming language and that "it has to be at least Python." (Although I know a friend who interviewed for the same position and asked for JavaScript, and they were granted it.)
So, I chose Python, as that's my second-most-comfortable language. I could select any time to have the interview, but I wanted a near date. With my experience with Google, if you don't use the momentum of an opportunity, it could fade away on their end due to multiple unplanned reasons.
I received a long email from the recruiter with many resources to learn. The not-fun part was a list of books in that email, but I didn't even have time to order them from Amazon to have enough time to use them for learning before the interview. I ended up preparing online using LeetCode, HackerRank, and more.
The first interview is a rough filtering of candidates. They call it a "Phone Screen" but tell you to come on-site, and then the interview is face-to-face, which is unusual.
I also didn't appreciate the very first sentence the interviewer told me: "Other than technically testing you, we don't talk in this interview. No need to explain, because it could be a waste of time." Even if it's a reasonable approach, it's not the way to present it to an interviewee.
I had a good interview, but I didn't make it this time around. Honestly, it was objectively doable. My feedback was that "it was a good interview, but not good enough, mainly because it was a bit slow," they said. It's a matter of practicing more and having your brain ready for neuron-teasing questions. They are not necessarily hard but are tricky and require an open mind.
Code an update(num) function and a sum() function for a 2D matrix with integers.
Then, find a way to improve sum() time complexity and then improve its memory complexity.
The following metrics were computed from 25 interview experiences for the Google Software Engineer role in Tel Aviv-Yafo.
Google's interview process for their Software Engineer roles in Tel Aviv-Yafo is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Google's Software Engineer interview process in Tel Aviv-Yafo.