This is super important. Don't take it personally at all. They're using the randomness as a flow control. They are always attracting more talent than they actually need purposely to keep the reservoir full and just running the extra through the spill gates.
Just taking a ride over the chute is proof positive that you've got marketable talent.
Of course "not getting a job" is a "signal regarding your quality as an engineer". We need to keep this toxic mindset out of tech and silicon valley. The idea that everyone is smart, special, and deserves a job at Google, is completely false. There are people here on HN that will never get a "top" software/machine learning/design job simply because they are bad at it. Telling them "it's not you, it's the company" will only doom their future even further as they will lose motivation to improve themselves because: "Hey, HN said I'm smart and a talented engineer."
To drive the point home to viewers reading this, some of you may have applied to Google via their website. You did not get a reply. After reading this original post and the GP, please do tell me how smart you are and why your 10x programmer skills didn't catch the eye of Google recruiters (or Facebook, Apple, or any hot startup).
Saying that the hiring process is flawed isn't the same thing as saying everyone is special and deserves a job there.
From my anecdotal experience, I felt that they focus too much on algorithms and give the same interview to every candidate regardless of their experience or desired job. I made it very clear I wanted to work in embedded systems and write code for microcontrollers and they asked me questions about graph theory. Algorithms are not everything, especially for a company with such diversified technology opportunities. If I'm working on search, then sure. But embedded software? Can't they take the time to focus the interview even the slightest bit?
Not a big deal though. I know they have an endless supply of candidates and thankfully we as software engineers have a pretty good selection of places to work.
I'm not a Googler, but from what I hear, moving between teams within Google takes less effort than most places, so that might explain why Google tends to interview for a generic "Google developer" rather than a "Embedded developer" position. Who knows, you might progress from initially working on the Google home firmware, then move on to optimizing the search client code and then possibly the search backend for Home itself.
I'm sure there are a lot of specialists at Google, but I suspect those are fewer than generalists with a solid handle on data structures and algorithms.
Therefore it should not be a signal. Not getting a job because of an interview does not mean that you are not a qualified engineer.
It may mean that though. But it's not as if it's a 100m sprint where you can very easily measure results between Olympian and couch potato.
> https://www.amazon.com/The-Drunkards-Walk-Randomness-Rules/d...
Not that I'd want to work for Google anyway, I don't like them very much as a company.
It amazes me how they rejected so many people on this test over the years (seems to be over 90% rejections), when they can't keep it straight themselves. Granted they were always busy on other things, but still. Even I barely passed the test.
That being said, they left you alone for two hours while you work on it, sitting in the same environment where other devs are working, which I found much better than some other interviews, the worst of which was coding a full project on a laptop for a platform I haven't worked on professionally in over a year and was a bit rusty on, while one person stared at me from across a desk and a second person stood behind me and looked down at the screen over my shoulder.
How many rounds of interviews before they eliminated most of their staff?
1. That we can clearly and precisely define intelligence 2. That successful interviewing correlates with intelligence 3. That hiring people who can clear this gauntlet will generate more value for the company in the form of better products 4. That there is only one "bar" for quality
As far as I am aware, current research indicates intelligence is multi-variable and by extension there are multiple "bars" for quality one could measure. It also seems likely a team will be more successful if it includes people who are capable across multiple dimensions.
We're still in the very early days of Software Engineering. Why do we insist that the Landscape Architect must be familiar with the intricate details of HVAC Engineering?
This is where I call bullshit. This person prepared for six months. You can't tell someone to not take something personally if he or she took six months of their life to study up, only to hit a dead end because your company didn't find it within themselves to take control of the things they could have.
This is where it falls apart for me, though. Based on my experience, you really do need to be extremely sharp on data structures and algorithms, and you need to be able to do it at the whiteboard.
I have my own opinion on this, like everyone. Personally, I'm completely ok with requiring a data structures and algorithms "entrance exam" for many software development positions. I see it as similar to the vector calculus and linear algebra exam required of actuaries.
My problem is with the implementation. Actuaries take a well vetted exam, with a clear study path, and when they pass it, they get a lasting credential respected in their industry. In short, taking and passing this exam means they don't have to submit to potentially random and capricious (and unpredictable) exam based interviews (really, after 6 hours at the whiteboard doing programming problems why do we call this an interview? It's an exam, pure and simple).
Here's the thing - I'd do this for a lasting credential. I'd accept that this is a test I have to take, and properly study for. I'd take my 6 months, and I'd put in the time. What I'm not willing to do is take this test over and over and over, every time I interview at a new company. I just don't walk around with this stuff loaded into short term memory. I don't walk around ready to take my undergraduate data structures and algorithms test. And I think I've taken it for the last time.
Same for vector calc and linear algebra. I did well in these classes in college, and if I were interested in being an actuary, I'd study up and get back to that level I was at just before I took my exams in college. But no, I'm not interested in allowing a random person at a company to put me through the exams again.
This is why I'm pretty much done with technical interviewing and tests. I'll find some other way to participate in this field, or leave it altogether if that turns out not to be possible.
I do wish tech leaders, who so constantly bray about a shortage in our field, would recognize the extent to which their behavior and practices drive talented people out of programming and into other fields. They didn't stumble upon this shortage, they created it. And every crutch we give them just allows them to continue with business as usual.
But 1. i extended my knowledge 2. i came closer to working for google than ever 3. if you really wanna work for google / <company> you will try again and even optimize those superficial 'issues'
I truly enjoyed them bringing me out for the weekend before my interview so that I wasn't rushed and to give me an opportunity to see the area. I also enjoyed the interview process itself (well, right up until the point one of my interviewers introduced me to some math I had no chance of solving). One of my interviewers even stayed in touch with me after the process, checking in occasionally and helping me make some new contacts.
Today, when I interview people, I keep my Google experience in mind and try to provide candidates a similar impression of my firm.
I'd be happy to take a chance on a Google interview. What I'm not going to do is take 3 or 4 days of my very limited vacation time to jump through Google's hoops, along with spending weeks of time reviewing obscure algorithms I haven't touched since college, and will probably never use again.
Honestly, I think if the H1B and other loopholes these companies use were tightened up, the interview process for engineers would quickly approach the respectful negotiations common with other professional industries (law, medicine, finance, etc).
The OP did get hired -- he mentioned that in his first paragraph.
The OP was hired by Amazon, "we" refers to Google in this case.
They optimize to reduce false positives. They're completely fine with false negatives. They don't have any shortage of talented engineers willing to interview there.
That last bit is why I think it's quite silly for smaller/unknown startups to be copying Google's interview process, as seems to be the trend.
Getting too many false negatives is a very sure way of getting a lot of false positives.
>>They don't have any shortage of talented engineers willing to interview there.
You might be wrong there. Apart from huge money opportunities, there are little incentives for any body to waste their best years in large company political middle levels.
Why ? IMO if you reduce the False Acceptance Rate, you will up the False Reject Rate. Good chart at https://www.tractica.com/biometrics/in-biometrics-which-erro...
It's...amusing that you brush that off like it's nothing.
Not to mention things like job security(people have families ya know?) and that having Google on your resume is still a powerful boost for future opportunities. That might not be true someday, but for now it is.
It's the same with manufacturing. It's better to provide 96% reliability with warranty than to struggle with providing 99.9% reliability.
The tendency for engineering types to believe in "objective" processes for damned near anything that isn't measured with calipers is one of the bigger weaknesses in this field.
There's a decent amount that you can do to prepare for one of these things, but there's also an incredible amount you don't have control over. If you don't get the job, it's not a signal regarding your quality as an engineer and you shouldn't interpret it as such (however tempting it may be to do so). Remember, there are many great places to work right now, and your skillset is in demand. If we didn't get lucky enough to hire you, someone else will quite soon.