I find quite interesting the trend of "preparing for an interview at company X". I think that, ideally, interviewing should be discovering if there's a match, not set up a challenge for someone to achieve.
Technical interviews should be more about doing due diligence over someone having the knowledge they say they have... not some sort of game people write books on how to train for it...
> Technical interviews should be more about doing due diligence over someone having the knowledge they say they have... not some sort of game people write books on how to train for it...
Yet they aren't, technical interviews are mostly bullshit CS questions which you barely use in day-to-day programming. And it isn't like CS knowledge is all you need to be a good programmer. Technical interviews are exactly what you say they are, a game.
And every game has rules that can be exploited. This guy's mistake was to try and completely break the game, which would have left Google with no alternative but to invent a different game.
I despise these games and people that pass them get all sorts of confirmation bias when they pass the tests.
I remember going through this process for internships and wondering how I was supposed to figure out all of these weird puzzles on the spot. Then I made a few friends and we all just traded questions with each other. We'd spend weeks on the problem and pretended we just figured it out.
I interview engineering candidates at Google, and the process we have is pretty good at letting us (interviewers) see how the candidate thinks, as well as assess their knowledge about algorithms, data structures, and distributed systems, and their programming hygiene, and software design skills. So I'm pretty happy about it.
Also the interviewers are separate from the people making the hiring decision, which I think is a good thing.
I'm not 100% acquainted with the questions Google asks, but in general "knowledge about algorithms, data structures" favours memorisation strongly. In fact, sometimes it is the only option. I think it would be quite a high bar to expect someone to come up with a complex algorithm from scratch in a 60 minute interview for which researchers have needed decades. (Edit: not to mention way harder and more unreliable that just learning it off by heart).
My programming hygiene and software design skills? You can see that more reliably from my Github work, but then recruiters and interviewers almost never take the time to look at that. Instead, we're stuck relying on a shitty test, not years and years of hard work and data, because it's easier for you to evaluate. Good job everybody.
Who has the time to look at you and other millions of candidates' Github repos? Recruiters wouldn't understand them anyway and engineers have more important work to do.
If you provide comprehensive information on the Google interviewing process, I would be very happy to respond with more certainty. I am only one person who may or may not have gone through the Google process at some stage. But I have (also?) interviewed at other companies, so I was generalising - which I pointed out.
You have quite elegantly avoided saying which parts I got right and which parts I got wrong. In fact, you haven't said anything specific, probably because you aren't allowed to?
I can see that...it's almost like corporate stalking. Personally, I don't get the company worship thing...there's plenty of interesting jobs outside of Google, Facebook, etc.
Perhaps Google doesn't want to encourage this sort of behavior.
The interview's supposed to, in theory, hint at future performance as an employee - too many intensive study guides used by too many candidates, and it'll just end up reflecting how much cramming the candidate did for the interview.
I'm sorry for him, but I can't overlook the poetic justice of him losing a silly game (the Google interview system) that he was inadvertently enabling.
They get an absolutely insane amount of applicants on the few positions they are hiring for, so they don't have the resources to give everyone a fair chance. They need to eliminate a lot of people without spending too much time on them.
An applicant who is an expert on gaming their system is probably scary to allow into the system.
Kind of reinforces how much luck plays a part in recruitment at a scale such as Googles. Makes the "I don't hire unlucky people" trope a bit more relevant.
"You can hear me talk about my journey to become a web developer, how I'm working on a career change, and what you need to know to interview at Google." [1]
"This is my multi-month study plan for going from web developer (self-taught, no CS degree) to Google software engineer." [2]
The author presents two conflicting pieces of information. In [1], it seems like he has accomplished this goal of being hired. In [2], he is working towards it and has not clue if anything presented will work.
After poking around a bit more, I see why I incorrectly came to that conclusion. Visiting the About page [1] provides this quote: "I'm publishing this blog to chronicle my long journey to becoming a Google engineer."
Without reading this quote, each post makes it seem like he knows everything about how to get hired. With the quote, each post reads very differently.
Technical interviews should be more about doing due diligence over someone having the knowledge they say they have... not some sort of game people write books on how to train for it...