
Why I Don’t Talk to Google Recruiters - kesor
http://www.yegor256.com/2017/02/21/say-no-to-google-recruiters.html
======
ryandrake
Unlike most of HN (it seems), I like hearing from recruiters, because despite
the very low signal-to-noise ratio, there's always that remote chance that one
of them could be able to set me up with a "dream job". It's zero cost to me to
politely reply to a recruiter and ask for more info, and I try to at least
respond to everyone. What I've found is that they must have a lot of
candidates they're juggling because falling out of the funnel is surprisingly
easy!

It's amazing how often "Hey, thanks for reaching out, I'm interested. Can you
tell me more about the role?" results in the conversation ending right away.
Probably over 50% recruiters that contact me do not reply back after that very
polite and neutral response.

Many who do keep the conversation going have not read my profile or resume
carefully, so I'll give them a summary of the types of work I'm actually
interested in, which is never what they contact me for, and politely decline
to move forward with the (usually way too junior) role they are looking to
fill. That will almost always end the engagement.

Sure, it's a lot of noise, but filtering is very cheap: the time it takes to
reply back. My actual success rate with recruiters probably pretty average. Of
the eight or so jobs I've had in my ~20 year career, about three were obtained
through recruiters, two times through in-house staff, once through an external
recruiter.

~~~
lwhalen
I take it one step further: the email address on my resume is a black hole.
Its only purpose is to feed an autoresponder who kicks back a warm, generic,
email thanking the recruiter for their time, acknowledging they have a
difficult job, and lays out my requirements for any position: what I am and am
not interested in doing, my salary/hourly/per-project requirements, my
location requirements (100% remote), etc. At the bottom, there's _another_
email alias along the lines of
'yesireallydidreadthisgiganticemail2017@mydomain.com' that goes straight to
me. I ask the recruiters to not email that address unless they've read the
whole thing, and their position matches my requirements. I get 200+ emails to
the catch-all autoresponder a month, and maybe 1 (qualified!) reply to the
'its really me' alias every six months. About once a month, I get an email to
the 'its really me' alias from a recruiter expressing joy, amusement, and
thanks for spelling out what I'm looking for so early in the process. All in
all, it's a far more pleasant way to go about passively searching for The Next
Big Role(tm).

~~~
27182818284
I think you're right to thank them for their difficult job. I seriously got
bored just reading the description of your setup. What percent get through to
the second email? Is it like 10%? 50%?

~~~
lazyasciiart
They said 200 emails/month to the general and one every six months to the
second email, so that's well under 1%

------
stcredzero
_There is no point in giving me binary-tree-traversing questions; I don 't
know those answers and will never be interested in learning them._

Let's presume this is out of preference and not ability. It's a pretty basic
concept. If your _preference_ stops you from learning something as basic as
this as a programmer, then it doesn't seem likely that you will be motivated
to keep up with even more abstruse concepts.

Nearly every programmer nowadays knows that naive string concatenation is
inefficient, and so they should use a stream or something like that. I'd
rather hire someone who knows exactly why it's O(n^2) and why adding to the
end of an array that doubles when it expands is O(n) amortized. Why? Because a
different but analogous situation might well come up in a programming job, and
the person who likes to think about such things is more likely to spot the
potential problem and avoid it altogether! The fact that the op would actually
feature the above sentences as a large text excerpt sets off the "Dunning-
Kruger" alarm for me.

That said, the op still has a good point. There is considerable organizational
disconnect being displayed here. Those big companies would do well to have
developers or a puzzle website do the initial filtering, rather than waste
people's time by alternatively telling them they're supposedly wonderful, then
supposedly horrible.

~~~
sidlls
Conjecture: the majority (by far, probably on the order of 75%-80% or more) of
programming and engineering problems to be solved in a typical company or
typical application will not see significant differences in performance by
selecting a naive implementation.

For example, in your string concatenation example, the naive solution is good
enough _except_ in situations where large numbers of strings are to be
concatenated in a given run, or the strings are huge, etc., _relative to the
compute environment._ Does it really matter if one uses an O(n^2) solution
when a few dozen (or even a few hundred) such operations are applied on "small
enough" strings in a given execution on modern computer hardware? No, it just
doesn't.

Select candidates who are keenly interested in and knowledgeable about
algorithms for positions where it's important (i.e. part of the regular course
of development), not because of that slight chance there is one edge case
where one adjustment to a more efficient algorithm might possibly be useful at
some indeterminate point in the future.

~~~
sbpayne
Sure. But at the scale of e.g. Google, Amazon, etc. how often do you think
they are performing these lower level computations?

From my experience: very frequently.

So it's useful at these corporations for all engineers to have this
understanding, I think.

~~~
jboggan
From my admittedly limited experience at Google, given the size of the input
data even a "small" project deals with those little algorithmic inefficiencies
really add up quickly. You have to do a lot of optimizing and using clever
data structures to make something work at all.

------
roguecoder
The reason I won't work at Google is because Google is incapable of hiring the
engineers I want to work with. It's not a matter of whether I could pass that
interview; it is whether I want to work with the code of people who can pass
that interview. Whether I want to get code reviews from people who can pass
that interview. Whether I want to rely on the code of people who can pass the
interview not to break down in interesting and novel ways.

I have seen the worst apps written by "Very Smart People" who obviously had
never built an Android application before. It doesn't matter how smart you
are, the first time you do something it _will_ suck. I have had catastrophic
failures caused by premature optimization, because locking a tool into a fancy
algorithm before you know where the actual bottleneck is is a recipe for
disaster. I have seen so many problems caused because people couldn't take
feedback or didn't ask for help, because they were so wrapped up in being The
Kind Of Person Who Knows The Answers.

Frankly, passing algorithm questions is a great way to signal that I probably
don't want to have to deal with your code.

Personally, I love working with people coming out of the good agencies because
building 15 or 30 applications from scratch in an environment with strong
mentorship and rapid feedback is, in my experience, more likely to produce a
good programmer than all the smarts in the world.

~~~
lettersdigits
> The reason I won't work at Google is because Google is incapable of hiring
> the engineers I want to work with

That's a very bold (even arrogant, sorry) statement about 57,000+ (googled it)
employees.

So 57,000 are worse devs then you ? This is what i hear from your statement,
correct me if I am wrong ..

Many extremely talented people want to work for Google. They will take the
tests, even if they don't agree with the hiring system at all .

Maybe they want to work at Google despite its incapability (according to you)
in the hiring and testing process.

> it is whether I want to work with the code of people who can pass that
> interview

Have you found any correlation between poor code and being able to pass
Google's interview ?

(edit: new lines)

~~~
DonHopkins
Since Google is an advertising company that even hires their own chefs, I
would not expect 100% of their employees to be software developers.

It's more on the order of 20k developers, not 57k.

[https://www.quora.com/How-many-software-engineers-does-
Googl...](https://www.quora.com/How-many-software-engineers-does-Google-have)

>Have you found any correlation between poor code and being able to pass
Google's interview ?

 _cough_ _cough_ Angular 2

~~~
walshemj
Back in the day I worked for a company that had in a single division more
engineers that google has employees :-)

~~~
elliotec
Who? IBM?

~~~
walshemj
BT Systems Engineering division effectively the heir to Tommy Flowers

------
noonespecial
Its the London Cabbie(1) method. They're not looking to fill any particular
role. They're just looking for smart people (for the value of smart that fits
their biases).

They just need as many warm bodies as possible to ram through their test so
that a few trickle out the bottom of the funnel to keep the ranks from
shrinking. If too many started getting hired, they'd add competitive basket
weaving to the skillset if that's what it took to balance it.

(1)[http://news.nationalgeographic.com/news/special-
features/201...](http://news.nationalgeographic.com/news/special-
features/2014/08/140808-london-cabbies-knowledge-cabs-hansom-uber-hippocampus-
livery/)

~~~
ryandrake
> They're not looking to fill any particular role. They're just looking for
> smart people

I've found this to be decidedly not true, from many recruiter contacts. They
have a role in mind they're trying to fill and if you point out that it's far
more junior than what you're looking for, the conversation's over.

Think about how must companies hire. The hiring manager fights internally and
finally gets a req for a very specific role. They have to fill that role.
Having a generally smart person would be great but they have this immediate
need and they can only hire one person. And once that req is filled, no more
hiring until you get another req.

I'd love to see a company literally just looking to snap up smart people and
then have them come in and kind of define their own role, one where they can
add the most value. Nobody does this!

~~~
nolemurs
> I'd love to see a company literally just looking to snap up smart people and
> then have them come in and kind of define their own role, one where they can
> add the most value. Nobody does this!

I don't know about letting people "define their own role", but a lot of the
biggest companies are constantly hiring without a specific role in mind. If
you've got thousands of employees then your best strategy is just hire the
smartest people you can find, and figure out how to use them effectively - you
have enough roles available that you'll find something for anyone to do, and
while not every role you need filled is someone's dream job, a combination of
internal mobility between teams and great benefits and pay will attract a lot
of good candidates.

~~~
vonmoltke
The problem, from my perspective, is that I (as a candidate) have certain
things I want to work on. You might have something I _can_ do, but is it
something I _want_ to do? I don't want to be hired into a general pool; I want
to be hired for one of the specialties I am interested in.

~~~
fixermark
The problem is that what interests you now may not be economically valuable
next year. They want you there past one project, because the future is too
murky to guarantee your current role will continue to be needed.

Google et. al. are hiring generalists because they want people of a mindset
such that when the entire special-purpose they hired them for dissolves,
they're willing and eager to ramp up on a new project and new challenges
instead of saying "Well, the foo project is closing down and foo's pretty much
what I wanted to do, so I guess I'm going to quit (and take all the knowledge
and skills Google spent time and money to train me up on with me)."

~~~
vonmoltke
You are taking a much too narrow view of "specialization". If project foo is
really the only project at Google that uses the skills I like and know best, I
am probably not going to apply there.

I get that there are people who don't care (much) what kind of code they are
working on. If those are the people Google exclusively wants, that's fine. I
just won't have a place there. I do _not_ think this is a generally-advisable
strategy, though, as the GGP I was responding to indicated. In fact, I'd argue
that well-crafted teams of specialists are superior to, but harder to staff
than, teams of generalists.

~~~
marssaxman
The funny part is that for all the work Google has done building a hiring
process that searches for talented generalists, the actual work they have to
offer is really boringly specialized. Most of what's going on in there is just
stacks upon stacks of web-service middleware, endlessly slinging RPCs back and
forth at each other. If that's your bag, then yay, Google is a great place to
work! - but for me it was really discouraging to realize, four months in, that
no more than ten per cent of Google was doing anything I was ever likely to
care about. I didn't last long, and wouldn't go back (not that they'd be
likely to want me).

------
40acres
There is no standard way to interview a software engineer. Whenever one of
these threads come up we see multiple posters explaining their process, and
while each process has it's upsides and downsides, no two are exactly the
same.

For a company the size of Google, with the amount of applicants they receive,
I would assume that an interview standard is absolutely necessary. It's not
perfect, but for 95% of developers out there you know EXACTLY what you're
going to get when you interview Google. I think there is something to be said
about that. Google recruiters tell you what the interview will be like, they
give you study materials, and are pretty gracious with scheduling. If you
don't like the process, that's fine, but I think Google in particular has done
a good job of standardizing their process. It may not work for individual
cases, but I would assume it works well for the company.

~~~
metaphorm
the problem with the way Google interviews is that, despite it being heavily
standardized, it is not sensitive to non-algorithmic skills and talents that
interviewees have. It will _only_ pass candidates who are unusually good at
algorithm puzzles, on whiteboards, under time pressure.

~~~
munificent
> it is not sensitive to non-algorithmic skills and talents that interviewees
> have.

I work at Google and do interviews (though I don't enjoy them). We do ask
questions around domain expertise, software design, etc. It's not all just
coding and algorithms.

A good question:

1\. Has a low enough floor that a poor candidate can still make _some_
progress and not feel like they are doing poorly and get stressed out.

2\. Has a high enough ceiling that a strong candidate doesn't blow through it
in five minutes.

3\. Has a smooth ramp between those points.

4\. Doesn't rely on too much domain-specific knowledge so that a candidate who
happens to have a random gap in their background that leaves them totally
hosed.

5\. Is concrete enough that the interviewer can capture that feedback in a way
that the hiring committee can easily understand.

6\. Isn't well-known outside of Google as stock interview question so that
candidates can game us by just learning the answer.

7\. Isn't asked by any of the other interviewers the candidates sees.

8\. Can be explained and worked through in about twenty minutes.

In case it isn't obvious, it is _really really hard_ to find good questions
that pass that gauntlet. Questions do tend to skew towards smaller-scale
algorithm coding questions because I think those tend to survive that gauntlet
better than most other questions.

    
    
        > unusually good at algorithm puzzles
    

Interviewers are trained to not ask "puzzle" or "trick" questions. Not only
are trick questions a shitty experience for the candidate, they are a shitty
experience for the interviewer too. My job in an interview is to get as much
data as I can about a candidate in order to provide information to the hiring
committee. If I ask you a trick question, I get about one bit—in the binary
sense—of data from you: did you find the trick or not?

I don't think you have to be _unusually_ good at algorithms. I basically read
some Wikipedia articles and spent a few hours in the hotel cramming Algorithms
in a Nutshell, and I managed to squeak through.

That time was incredibly well-spent. Since then, I have relied on that
algorithm knowledge way more than I expected too, and have since spent more
time learning algorithms and data structures because I can clearly see it's
made me a better programmer.

    
    
        > on whiteboards,
    

That part is hard. We allow candidates to use a laptop too, if they prefer, or
both. My experience is that candidates who use the whiteboard, at least for
the earlier "design" parts of the question tend to do better than the ones
that go straight to typing.

We need to learn how you think, and putting a screen in front of people tends
to make them clam up. If all I see is the code you write and you don't explain
your thinking behind it, I don't get much data.

    
    
        > under time pressure.
    

That part is really hard too. The reality is that interviewers _and
candidates_ have a limited amount of time they can put into this process. Keep
in mind that most candidates are currently employed and don't want their job
to know they are interviewing. Many of them travel to interview. There are
only so many hours.

~~~
sdflkd
> I don't think you have to be unusually good at algorithms. I basically read
> some Wikipedia articles and spent a few hours in the hotel cramming
> Algorithms in a Nutshell, and I managed to squeak through.

Either a lie or you are unusually good at algorithms. People work > 50 hours
on Leetcode, CTCI, etc. to try and get a job at Big 4. A couple of hours just
reading Wikipedia articles isn't even close to the amount of effort people put
into 'gaming' the system these days.

~~~
munificent
Sorry, I should have been less flippant here.

That was the only prep I did _for the interview_. I was a senior software
engineer at EA at the time, with about a decade of professional software
experience.

I don't have much of an academic background, but I had written and shipped
quite a lot of code by that point in time.

The cramming did help—several of the algorithms I read about were either new
to me or I hadn't seen in ages—and some of them did come up on the interview.
(I've also used almost everyone of them at my work at Google since, strangely
enough.)

My point was just, if you are already a good enough engineer to be successful
at Google but don't "interview well" because of whiteboard experience or
algorithms it's pretty easy to shore up those two things. You don't need to
spend a decade at a monastery meditating on Knuth.

If you're a decent coder, you've already done way harder things. Breaking down
a big messy problem into pieces you can code and test is _hard_. Shipping
applications is hard. Breadth-first search is not hard.

------
kabes
I've been working as a software engineer for quite a few years now and I'm
sure I'm a much better software engineer now then when I graduated. I now have
years of solving varying real life problems with real-life constraints
(budgets, deadlines, ...) using a big amount of different technologies,
working with a lot of different people, ...

However, I'm also pretty sure I'd have a better chance on the Google interview
right after graduation then now, when all the theoretical stuff was fresh in
my brain. So I'd have more chance while being a (in my opinion) less useful
engineer.

~~~
nolemurs
> However, I'm also pretty sure I'd have more chance on the Google interview
> right after graduation then now, when all the theoretical stuff was fresh in
> my brain. So I'd have more chance while being a (in my opinion) less useful
> engineer.

The thing to understand is that Google is more interested in not hiring
potential bad hires than in hiring every good hire. Part of the reason the
interview process works the way it does is to filter for people willing to put
in some effort. If you want a job at Google, it's not a big deal to spend 3-5
hours a week for a few months getting sharp on the basics. If you're not
willing to do that, then that's a good sign that you're not really invested,
and may not be the best hire.

Google will totally lose some good hires this way of course. But their
philosophy is explicitly that it's better to lose a good hire than make a bad
hire. I think they're probably right.

~~~
hueving
>Part of the reason the interview process works the way it does is to filter
for people willing to put in some effort

That's the sales pitch, but it's actually just because there is no other
interview approach that works at scale for the volume of candidates they get.
If they didn't have a stack of 100,000 resumes, they would throw this
ridiculous process out the window in a heartbeat and actually interview people
for the position.

~~~
nolemurs
> If they didn't have a stack of 100,000 resumes, they would throw this
> ridiculous process out the window in a heartbeat and actually interview
> people for the position.

Absolutely.

If they had far fewer resumes then they'd be much less willing to pass on
potentially good hires, and more willing to risk bad hires. You make it sound
like we're disagreeing, but this is 100% consistent with what I said.

~~~
awfgylbcxhrey
You're not saying the same thing at all. Your statement assumes the process
eliminates bad hires, while GP's point is clearly that it doesn't.

I'm not agreeing or disagreeing with either side, but you clearly aren't in
agreement.

------
zschuessler
Similar story: a few years back I was interested in applying to TopTal for
side work. As a senior engineer working with well known companies, I thought
the acceptance process wouldn't be as bad as claimed on their homepage.

Passed the first personality interview. The second was a coding challenge. I
said to the interviewer several times I have not studied algorithms, and that
if the coding challenge involves them, I would prefer to drop out and not
waste time for anyone involved. I was very happy to say that multiple times -
I know what I don't know. The interviewer goaded me into taking the challenge
anyway, saying I'll "definitely be fine and pass."

The next day I attend the timed coding challenge. Three algorithm puzzles that
are in no way insignificant. I had Google at my disposal and _still_ could not
solve a single problem - although I came close on one involving permutations
of chess pieces.

Unreal. At least Yegor had the good fortune of not being directly lied to by
the recruiters!

------
stuckagain
> There is no point in giving me binary-tree-traversing questions; I don't
> know those answers and will never be interested in learning them.

Interview process: complete success.

~~~
iainmerrick
I'd be interested in hearing from people who work at Google, and get to figure
out a cool algorithm for solving an interesting puzzle-problem more an about
once a year. I bet there aren't very many.

In my experience, the stuff you do in this kind of interview has very little
relation with the stuff you do in the actual job. (I wish it did! I love those
algorithmic puzzles.)

~~~
stuckagain
I don't know about the average but at Google I probably write a new call to
std::set::find twice an hour, and it's important to know that std::set is a
red-black tree, and how std::set::find is implemented and how much that costs
and so forth. Fluency with data structures and algorithms is not some kind of
brain candy. It's absolutely necessary to get the job done.

~~~
valuearb
I've been a developer for 30 years, helped start a half dozen companies. Since
college I've never written a single tree traversing algorithm, and would need
to Google red-black tree to know what it is.

There is a whole world of development that is OS specific, UI specific,
shipping commercial applications. Shipping quickly is always a higher priority
than performance, because adequate performance is usually trivial to implement
with hash tables/arrays/linked lists.

~~~
yomly
I'm not entirely sure _adequate performance_ is good enough when you work at
the scale of Google...

~~~
fnovd
The performance bottleneck is not always where you think it is.

~~~
perfmode
That's why Google measures.

------
rdtsc
> I learned my lesson two years ago, when Amazon tried to recruit me. I got an
> email from the company that said they were so impressed by my profile and
> couldn't wait to start working with me. They needed me, nobody else. I was
> naive, and the message did flatter me.

I learned mine with AWS as well:

Scheduled call. They forgot to call. Waited like an idiot for an hour. Ok fine
big company yadda, yadda.

Had the phone interview. Liked me, called me onsite.

Before coming onsite was sent the Leaderhips Princples and told to learn and
will be quizzed on them basically. Had 2 offers in hand already and was told
they'd get back to me at most 2 days after the interviews.

Got to the site. Future manager who was supposed to interview me not there.

Whiteboard questions, solve some algorithm puzzles. "Tell me about your worst
failure". Most people I talked to would not have even worked with. People did
not seem happy, kept warning me about how hard it is to work there and so on.
(Subconsciously perhaps telling me to stay away?)

Lunch time comes, at least think I'll eat lunch with future team. So I wait,
and wait, and nobody shows up. Ended up wondering the hallways exploring.
Hoping someone would ask me if I am supposed to be there.

Then I got a bit snarky after that and kind of gave up on the chance of
wanting to work there.

Went home. It took them 3 weeks to call me. But I wasn't surprised by that
point.

~~~
euyyn
Shitty experience of not showing up apart, I know that, at Google, the fact
that the hiring manager isn't involved in the selection process is done on
purpose, to reduce bias.

~~~
rdtsc
That makes sense then. But in my case I was definitely looking forward to
talking to him and he was supposed to be there.

------
tetraodonpuffer
I think when a company reaches a certain size it is hard to expect that there
is such a thing as "a manager looked at my github/qualifications and decided
they need me so they will tailor the interview to my skillset".

At this point it feels the interview process is becoming more of a combo
between a hazing ritual and a lottery than something actually useful to
ascertain if the person interviewed would be a good match for the position or
not.

The longer the interview is, also, the more likely one will be discarded
because one of the many interviewers is having a bad day, or because after
several hours of whiteboarding one can understandably draw a blank on a simple
question they would've waltzed through 4 hours prior and be failed because of
that. How long before interviews also contain an anti-doping panel to weed out
candidates trying to improve their odds?

It is strange though that in a country where there is at-will employment one
is basically told that hiring the "wrong person" could destroy the company or
something and so the interviewer has to make really really really really sure
that the candidate is absolutely ok.

I personally think the risk of hiring somebody and they can't cut it after
three months and you have to let them go, is worth not passing the candidate
that doesn't do well at whiteboarding but will instead prove to be great when
tasked with real business problems that take more than a few minutes to solve.

~~~
mdekkers
_It is strange though that in a country where there is at-will employment one
is basically told that hiring the "wrong person" could destroy the company or
something and so the interviewer has to make really really really really sure
that the candidate is absolutely ok._

What it does is destroy the recruiters reputation and KPI charts.

------
fecak
Being an agency recruiter in 2017 is becoming impossible in that fewer and
fewer people are even willing to talk to you, which is one reason I've
diversified into resumes and coaching. I have almost 20 years in the industry,
led a large successful users group for 15 years, have published tons of
content for tech pros (often critical of recruiters), and have a pretty solid
reputation in the industry, I write targeted and friendly approaches (no
surprise calls at your desk), and I still have difficulty getting responses
from people. I can't imagine how difficult it must be for people who don't
have my 'cred' with developers, but the signal to noise makes most people
filter out all messages.

So for the most part, I've stopped reaching out to new candidates. Outreach is
mostly futile, so my time is better spent doing other things to try and get
potential candidates to come to me instead. It goes completely against what
recruiting is built upon (always be recruiting, recruit everybody, source,
smile and dial, etc.), but when people approach me the outcomes are much more
positive.

When I got into recruiting (circa 1998), the primary skill of a recruiter was
just identifying potential candidates. There was no LinkedIn, nobody had
websites, no social media. The skill was calling into a company and finding
out who the Java developers were by navigating different people, and in my
case I did this without lying to anyone (there was rusing, but no outright
lies).

Now identifying people is ridiculously easy (identifying actual talent is a
little different), and so easy in fact that we've turned into an industry of
spammers. This model doesn't seem sustainable, and I expect agency recruiters
will continue to be replaced by better systems. Nobody seems to have gotten it
_just right_ to this point, but some are getting close.

~~~
jcadam
I used to respond to just about every recruiter email/call. Problem is, as you
noted, that so much of what I receive these days is spam that I've stopped
bothering to reply to most of them.

Now, occasionally I'll receive a well crafted email that was obviously
specifically targeted to _me_ and I'm so impressed that I have to reply :)

~~~
fecak
Most of my responses do mention that they did so because of the attention to
detail in the message. Even the ones that are well-crafted still don't get
much response. I envision that they're deleted by most people unless they are
actively looking or pretty set on doing so rather soon.

------
ChuckMcM
I don't know how it has changed since I left but when I was at Google and
interviewing folks the idea was to find smart people who could get things done
and then figure out what to do with them if they decided to join. As a result
it was literally impossible to have your "future manager" interview you,
because that person was only identified after you accepted[1].

But "recruiting" in the sense the author discusses is really more like a
lottery for people calling themselves recruiters than it is actually finding
of talent.

There are a number of these people that email hundreds or perhaps thousands of
people, while simultaneously creating a "resume" out of information they found
out about them online and submitting that to companies. Then when the company
says "we'd like to see Bob" then they go back and figure out who Bob was and
they contact Bob and try really really hard to get Bob to take an interview
with the company, and if this match works they pocket anywhere from 15 to 25%
of Bob's annual salary as a finder's fee.

So low overhead work that can be pretty easily automated with the occasional
out sized payout? That is the recipe for a fishing business and that is what
we get.

I got an email from a friend who had my "resume" cross their inbox. They
emailed me to tell me my resume skills had really plummeted, what with a bit
of my LinkedIn page, some Github repos, and snippets of broken english mashed
together. I tied the source back to one of the "recruiters" who had sent an
email saying they had companies asking for me to apply (no I didn't respond).
We speculated whether the resume mashup had been done in house or if there was
some Turker somewhere who was doing 'resume assembly from accessible data'.

Bottom line is that there is money to be made so people will come out and try
to get that money.

[1] There were some exceptions of course and certain skills or disciplines but
it was the general rule.

------
felixgallo
As a hiring manager at Amazon, I'm super excited to talk to candidates. A new
job is, after all, an incredibly important life decision on the same level as
getting married or buying a house. And as a manager, making sure I hire the
right people to build the kind of diverse, respectful, collaborative,
representative, professional, mentoring, balanced and focused team that I can
is the most important thing I can do on a daily basis.

In fact, I spend a non-trivial amount of my day personally looking for, and
reaching out to, prospective candidates, with no recruiter involved.

With that in mind, Amazon recruits so widely that I couldn't possibly talk to
every prospect; there just aren't enough hours in the day. So I think it's
important to have recruiters doing the basic screens, and am delighted to take
over from there.

Anyone who wants a job at one of the big companies should understand that
there's going to be some bureaucracy on the intake side just because the
volume is unbelievable. If you feel like you've had a bad experience with
Amazon in particular, please reach out and let me know and I'll see if there's
anything I can do about it.

~~~
gaius
That NYT expose has scared anyone you would want to hire away from your
pipeline altogether.

[https://www.nytimes.com/2015/08/16/technology/inside-
amazon-...](https://www.nytimes.com/2015/08/16/technology/inside-amazon-
wrestling-big-ideas-in-a-bruising-workplace.html?_r=0)

~~~
felixgallo
That article does get raised quite a bit. Fortunately I've never seen behavior
like that in my org. If I ever did, I would escalate it all the way up to
jeff, because working like that would be unacceptable and frankly incompetent.

------
YZF
To contrast and say something surprisingly positive about Amazon. A local
Amazon engineering manager looking to hire people sent me a note and suggested
we discuss over a coffee. While I didn't want to pursue the opportunity I
definitely left with a much better opinion of Amazon.

Also contrast with Microsoft when I had a series of technical interviews with
members of the team I would be working with. I ended up going with a different
opportunity but again I left with a good impression.

The Google hiring process sucks IMO. I've been approached a few times. I
recall one phone coding interview where the Google engineer was condescending
and trying to prove he's smarter than me. It seemed like he was in a bad mood
or something, that can happen I guess. In a later recruiting attempt a Google
recruiter called me, said he'd follow up, and then left Google to go work for
Apple without having anyone follow up with me. Yet another recruiter, when he
heard what area I'm interested in, said I've no chance because everyone in
Google wants to work there. One thing that should automatically give you pause
is a recruiter in Texas while the jobs are in California. Clearly that
recruiter doesn't interact closely with the teams he's hiring for.

Google has gotten away with this for so long because they can be picky. Every
open position has 100's of candidates. But times will change. They certainly
have a lot of good people but they also have a lot of less good people. I've
worked with some ex-Google people and they're really just like everyone else.
Conversely there are lots of very good/smart people who don't work for
Google...

------
preinheimer
This also solves another problem. Many orgs have their recruiters slot a
candidate into a particular role really early on in the process (possibly even
before the first phone screen). So you're not applying for _a_ job at FooCorp,
you're applying to be a Level 2 Engineer on the WidgetSearch team. By the time
the third interview finishes, it turns out you're a bad fit, and the process
stops. This doesn't mean there's not a great role for you inside the company,
just that the you were tagged for in their recruiting software wasn't it.

By having the future direct manager involved early, they can hopefully say "I
need a algorithm person, not an OOP person. Go talk to Carla, she's been
looking for someone like this" sooner.

~~~
jorgemf
They should ask you whether you want just to join the company in any role or
you want to be working in a specific role.

------
jfasi
Regarding his canned response:

> Thanks for your email. I'm very interested indeed. I have nothing against an
> interview. However, there is one condition: I have to be interviewed by the
> person I will be working for. By my future direct manager.

This kinda misses the point. I can't speak for any companies besides Google,
and this is all my personal sense and not the company line, but anyway:
speaking with a hiring manager who wants you is actually less useful than
speaking to a disinterested stranger. Hiring at Google is done by committee
and actually regards feedback from a hiring manager with some suspicion.
Here's why:

Google allows for a lot of mobility. Internal transfers are common, projects
are scaling up all the time, sometimes new engineers don't gel with their
teams and want out, and we _strongly_ prefer to keep people within the company
when projects scale down. Given this, hiring an employee solely on the basis
of an enthusiastic manager's word is a recipe for lowering the overall level
of engineering. Even if Yegor had the strong support of a manager who wanted
him, he'd still have to go through the same raft of interviews and be judged
by the same hiring committee.

Alright, fine, I hear you say, but if a manager likes you, surely that's still
a positive signal? Well, in the best case scenario, sure: you're talented, the
manager is wise enough to spot a good engineer when they see one, and they
express their assessment honestly. But the best case scenario involves the
manager acting as though they were a disinterested outside, so why not get the
opinion of an actual disinterested outsider? However, what if the manager is
short-staffed and just needs whatever help he can get to meet their goals?
What if the endorsement is made on some biased basis, such as going to the
same school or assessment of talent in an area unrelated to engineering?

For all their warts, whiteboard-based interviews are the state of the art in
assessing the capabilities of a large number of candidates within reasonable
time and cost. They're not foolproof, and smaller companies can afford to (and
should) use more bespoke methods. However, at the scale of Google and friends,
they're unfortunately the best thing available. But I won't lecture hacker
news on scale. We all know expectations have to be adjusted as systems grow.

~~~
linkregister
You miss the point of the article. Yegor doesn't want to be put on a team
using technology completely orthogonal to his expertise. He isn't interested
in spending 3-5 hours per week for a few months to cram on algorithms study so
he can use it once on his interview day.

Many other companies hire by role. There is no ambiguity in where a software
developer will end up working on. Facebook and Google use centralized hiring.
Yegor's point is that this uncertainty regarding team placement is a strategic
disadvantage.

Despite what you might think, Object Oriented Design isn't going away anytime
soon. There is no need for Facebook or Google to prematurely optimize away the
risk of an obsolete engineer at the expense of rejecting domain experts for an
important project.

------
volkk
Personally, my biggest issue with interviewing at large companies like these
by people whom you aren't necessarily going to be working with, is that not
everyone is in a position to interview people. I personally hate interviewing
other people and having to be responsible for their futures. I was never
trained for it, and I don't want to ever deal with it. I just want to code and
make sure the product I'm working on is coming along smoothly.

I've had countless interviews where I could immediately tell upon entering the
room that the interviewer does not want to be there at all. It's a lose lose
situation. For me, because I get demoralized instantly, and he's already got a
chip on his shoulder for having had to do this in the first place. Everything
I say going forward from that point on is an uphill battle.

I think only managers/very few people who are truly trained should interview
people as that is kind of the essence of a manager's job--making sure they
have happy, solid team. I don't even mind the technical questions. I just want
to be in a room with someone who is actually potentially excited having me
there. Not grilling me in a depressed fashion

~~~
welder
Facebook has a "shadower" who is in your room just to learn to be a better
interviewer. A shadower pairs up with the interviewer for each round.

You can't just say inexperienced interviewers can't interview, then how would
anyone ever get experience?

------
utnick
The worst part for me is how long the process takes, and how much time is
invested for an interview process where the success rate is so low.

My recent experience with AMZN was:

\- get contacted by recruiter, schedule a call with recruiter a few days later

\- take a take-home coding test a few days later

\- talk to the recruiter again a few days later to tell me I did well on the
coding test

\- talk to another recruiter a few days after that, get scheduled for an all-
day in person interview 4 weeks in the future

\- cram cracking the coding interview for 4 weeks

\- go to the interview all day, hear at the interview that I was close but
didn't pass, they recommend I should try again in 6 months.

All in all thats a pretty big time & mindshare investment

~~~
geodel
May be not for many people here on HN but for very large number of engineers
job opportunity Google/Amzn/MS/FB etc are once in a lifetime type. I have not
met people in my circles who would balk at interview process there.

~~~
valuearb
Your best opportunity as a young engineer is always with a startup with smart
leadership. You'll get to do far more and learn far more. Google/Amazon/FB/MS
etc are full of smart people and offer a more 9-5 type job, but you will find
it much harder to do interesting things.

~~~
praneshp
When I graduated, Google/Amazon/FB/MS, I _knew_ people were smart and the job
would be okay at the very least. How should I have gone about figuring out
which ones are "a startup with smart leadership". I remember being overwhelmed
by everyone, everyone came across as smart.

So I counter your advice by saying the best opportunity for a young engineer
is likely a large company that is well-known for having generally smart
people. At least I learned what I wanted and didn't in the rest of my career.

~~~
funkymike
Interviews are a two way street. For most companies you should be able to talk
to the hiring manager and other developers that you would be working with. Ask
yourself whether as a junior developer if you will be able to learn from them.
This includes technical skills, soft skills, and personality.

From my own experience I interviewed with a small company right out of school
where I would have been the second or third developer (I forget now). One
reason I did not pursue it is that I seemed to know more about development
best practices than their existing developers; for example they did not use
source control at all. While I would have had the opportunity to make a big
impact on the product, I don't believe I would have grown much.

------
iamleppert
I'd also like to add my own experience dealing with recruiters from Amazon,
Facebook, Google, Netflix.

They are liars. They most definitely will e-mail you whatever it takes to get
you into the first part of the funnel. They'll tell you its a "special
project" or try and make it seem like somehow you're exactly what they are
looking for. It's not true; I've been down the route a few times and have
easily been able to spot the deception at second phone call. I do wonder how
many brilliant people are abjectly turned off by these tactics and don't make
it into these companies. But I rather think that's a good thing, call it bio-
diversity. No one company should get too many very smart people.

And, unlike the OP, I can actually solve the bizarre algorithm questions they
ask. Although I 100% believe they tell you absolutely nothing about the person
but their ability (read: desire/motivation) to read and comprehend a basic
text on the subject. No, you don't need this knowledge (unless specifically
required) to be effective at your job despite what others here are posting on
about.

Tech companies, once they reach a certain size, become little more than meat
shops; corporate behemoths, not unlike other large companies that run the same
dog and pony shows but for different kinds of human talent and capital. This
is not to say they can't be good places to work, or have cool and creative
teams within them, but the chances of you getting hired into one have nothing
to do with the recruiting process, unless the hiring manager or manager of a
specific team reaches directly out to you. If it's a recruiter doing the
reaching, you'll be forced through the opaque funnel and likely lied to or
manipulated in some way. Its just the nature of their job.

By far the best way to find a great job is to:

If you don't already have contacts in the industry or niche you want to work
in: Go to work for a startup in the space to build your network and domain
expertise.

If you do have a contact, have this person refer you from the inside. In many
cases your interview process will be completely different. Following this I've
actually not had to deal with recruiters much at all; maybe only as a
formality.

~~~
stcredzero
_No, you don 't need this knowledge (unless specifically required) to be
effective at your job despite what others here are posting on about._

Pretty much like how the Asiana Airlines pilots didn't really need to know how
to manually land a plane.

[https://en.wikipedia.org/wiki/Asiana_Airlines_Flight_214](https://en.wikipedia.org/wiki/Asiana_Airlines_Flight_214)

~~~
pitaj
That's a ridiculous analogy.

------
uranian
A few years ago I decided to never do these algorithm, fizz buzz and whatever
tests again in order to get a job. These tests have almost nothing to do with
my daily work as a software developer.

With very much ease I can ask the interviewer/dev to solve a seemingly simple
algorithm, where I'm almost 100% sure he will fail, even if I'd gave him 6
hours to solve it.

I've seen so much horrible code in my life, there is no fizz buzz test that
can prevent you from that. I am wary of companies doing these tests as it
tells me they have no clue what my work is about.

If a company wants to hire me they can look at some of my production code and
the live results of it. If that is not good enough for them I'm not
interested.

------
malisper
> I should have told her that I didn't want to be interviewed by some
> programmers, because I would most certainly fail. There was no need to try.
> I wanted to be interviewed by the person who really needs me: my future
> boss. That person will understand my profile and won't ask pointless
> questions about algorithms, simply because he or she will know what my
> duties will be and what kind of problems I will be capable of solving, if
> they hired me.

While I agree with the author about algorithm questions being relatively
pointless, my sense is they don't know about the team matching process. After
I interviewed with Google, they presented me with a list of a eight teams who
were interested in me and asked me to rank them in order of preference. They
then had me come back a second day and meet with the managers of the top four
teams I selected. At the end of the day, I ranked the teams again. The team I
ranked the highest who also wanted to hire me was the team I would have joined
if I had accepted my offer.

I much prefer the current process where you have one day of general
interviews, and then go back a second day and just talk with the managers of
the teams you would be interested in. It would only make the process much more
of a hassle for everyone involved if you had to be interviewed by the managers
of every team for which there was mutual interest.

------
fizixer
The lesson based on your experience could be the advice you gave. But it could
also be:

Don't get your expectations too high. If you have achieved something in your
programming career already, you've done it. Something to be proud of. "Bad"
interviewing practices of top companies, and the outcomes that follow, don't
and shouldn't undermine your self-worth. Just take the whole interviewing
experience as a chance to meet new people, have a mentally stimulating
exchange, and that's it. If they hire you, great; you were able to capitalize
(in one very specific, and by far not the only, way) on your achievements. If
they don't, you go back to doing the great stuff you're already doing.

~~~
justin66
> Just take the whole interviewing experience as a chance to meet new people,
> have a mentally stimulating exchange, and that's it.

You're not wrong, but if one needs to put a premium on their time it's a
little more complicated than that. Particularly if you need to take time off
and travel for an interview, it'd be nice if the whole thing was more than a
minor social experience.

~~~
fizixer
Yeah I should've mentioned that. Well I guess I did in a way when I started by
saying either the lesson from the blog post or the lesson that I talked about.

To summarize, if you put a premium on your time then we reach the conclusion
in the blog post. If you are willing to reduce the premium, then we have the
alternative conclusion that I suggested.

------
brendangregg
At Netflix I was interviewed by the manager I'd work for (in fact, I was
interviewed by two managers, as I had the option to join one of two teams). As
part of recruiting I had many conversations with my potential manager about
what exactly I'd do, and how my skills can be best put to use. I ended up
picking Netflix, and it's been great working here. I wish more companies
interviewed in this way.

I've had the other type of experience at a major tech company, similar to what
was described in this post. Interviews that were generic and not focused on
what I'd been told by the recruiter the job was. I spent all day exercising
brain cells from University classes a decade ago, rather than my industry
experience. I remember feeling odd about it afterwards: that's the first time
I've had to recall those skills since University, yet I've been working in
this role for a decade and haven't needed to remember that doing the actual
job...

------
syntaxing
I've been thinking about it for a while to try to transition from a mechanical
engineer to a software engineer but are all the interviews as miserable as HN
makes it seem? I feel like these interview structure is a form of deterrent. I
had a quick call with one of the recruiters from Apple for a hardware engineer
position. He said the interview will take about a week and needs about a month
to prepare... I didn't call back because it doesn't even seem reasonable to
me.

I've interviewed many times (mechanical engineering positions) for big
companies (10K employees+) to small (<50 employees) and they're usually a one
day remote and one day on-site interview. There would be a couple of technical
questions and some technical discussions but nothing like, solve this Navier-
Stokes equation for creep flow from your memory. I don't think any competent
manager would even ask that to me.

~~~
funkymike
There is a big difference between computer science as taught and software
development in practice. These hiring practices are there to weed out people
just can't design applications or write code with any proficiency.

~~~
syntaxing
But can't that be said about every discipline of engineering? I could be wrong
but these hiring practices are particularly prevalent in the software roles
compared to the other major discipline of engineering. I'm more curious to
what is different about software engineering/development roles that require
these methods. The amount of applications or size of the company doesn't seem
like a logical reason since I've seen equally sized (employee-wise) companies
weed out and select specific roles pretty well (relatively).

------
xt00
Places like google give you a guide on how to prepare. So it consists of stuff
like algorithms and data structures. I do wonder sometimes how much it is
tailored to getting people who are fresh out of college rather than more
experienced. My take is that you basically have to spend time preparing and
studying so as to get past those types of questions then finally you talk one
on one with the people you likely would work with and then it's smooth sailing
for experienced people. But the entry bar can be pretty tough to get past with
zero prep.

~~~
forgotpwtomain
Why should skilled developers with extensive track-records in their field be
forced to use their free time to cram for college-style exams? Other
professions dealing with exact-sciences / engineering don't seem to have this
problem..

~~~
filoleg
While I agree with the sentiment, I wouldn't call it "college-style exams", to
be honest. Colleges would be quite different if exams were conducted one-on-
one, and instructor would have been willing to talk with you through the
problem and cared more about your thought train and approach rather than the
exact solution. In fact, I am pretty sure that if you just knew the correct
solution and the answer to the coding interview and simply wrote it down
silently on the whiteboard (which would be the best outcome on a college
exam), you would be rejected instantaneously.

~~~
FLUX-YOU
>simply wrote it down silently on the whiteboard (which would be the best
outcome on a college exam), you would be rejected instantaneously.

No, jesus. Some people need to switch to a presentation mindset and out of a
problem-solving mindset. This is completely normal in life.

I'm starting to think most interviewers are terrible only for not having a
decent amount of social interaction with strangers. Let's just admit it's 90%
hazing ritual at this point so we can get on with putting up guides to get
through it.

------
cortesoft
You aren't going to interview with your future manager because they don't know
who your future manager is. They need to hire hundreds of people, they aren't
going to try to get separate candidates for each role, and they aren't going
to have you interview with a hundred different managers.

My company is experiencing this as we grow; we have too many openings to have
each team try to recruit for their open spots. We need a more general queue of
talent to hire, so that we can interview for 10 open spots for every interview
we do.

~~~
hehheh
> You aren't going to interview with your future manager because they don't
> know who your future manager is.

I generally agree when it comes to cold resumes. However, in this case, OP is
talking about being actively recruited. In that case there ought to be a
specific manager that was looking for a specific type of person. Otherwise the
recruiter is just wasting everyone's time.

------
lngnmn
This is a classic example of what we call a blogrammer and self-serving bias.

Classic CS (Algorithms and Data Structures and basics of FP) is the must. The
questions about subtleties of C++ syntax is, perhaps, less reasonable (but
they are aimed to catch an experienced dev instead of a self-proclaimed
wizard) but ignorance of the basic CS is a major red flag.

------
jonthepirate
I get so many obnoxious unsolicited recruiter emails that I have set an email
autoresponder that triggers when the word "opportunity" comes in from someone
I don't know. Here's the template:

\-----

Hi,

I get a lot of messages like these. Since time is valuable, I promise to fully
read your original email plus any job web pages that describe the
opportunities you are hiring for for $100. You can paypal me at <your email
here>.

For $500, I'll even do a coding exercise or come in for an onsite interview.

Cheers,

<Yournamehere>

\-----

------
jondubois
The interview processes at a lot of those big companies favor fresh university
graduates - Other than that, they are completely random. I bet that if they
forced existing employees to take a slightly different variation of the test
again, most of them would fail - Someone could be an expert with graph
algorithms, but if a question popped up about decision trees and minimax
adversarial search, would that graph expert still be able to solve the problem
in time?

My personal experience with the interview process at a couple of these
companies is that even if you CAN solve the problems, you will usually run out
of time - Unless you practised that specific problem recently.

Also, they tend to favor engineers who can come up with solutions quickly as
opposed to engineers who can come up with optimal solutions.

They could look at stuff like open source projects you created/worked on, past
successful companies you've worked at, etc... But no, they don't care about
that; instead they prefer to have this random selection process which favors
experts in specific algorithms or thinking styles which often have nothing to
do with the company's core business.

------
OJFord
Another data point of ridiculousness:

I fairly often receive emails from recruiters who have 'read my profile' and
found me to be 'a great fit' for some 'senior ...' role.

Had they _actually_ read my profile, they'd have found me to be a student,
who's only relevant experience is as an intern, and has accepted an offer for
a graduate position.

Certainly not a fit for senior anything, but it makes me wonder how far it
would go if I replied OK - do companies using these recruiters get hopelessly
underqualified candidates to interview on a regular basis, and still stick
with them?

------
soheil
> There is no point in giving me binary-tree-traversing questions; I don't
> know those answers and will never be interested in learning them.

They are just looking for smart people. If you ever looked it up it's 5 lines
of code. That's the whole point they're not forcing you to learn something:

A) so esoteric you will never encounter in your programming career B) so
complicated that you'd have to spend days practicing it, etc

In my opinion a lot of these questions are disguised IQ tests wrapped in
algorithms since they can't blatantly ask "brain teaser" questions anymore.

~~~
pjmlp
You mean like the famous inverting tree whiteboard exercise that the Homebrew
author failed?

Which lead them to refuse to give a job to the guy that actually developed a
software used by those with higher IQ to come up with tree inversion
algorithms?

~~~
soheil
Yes, I completely agree with you that their recruiting system has a lot of
false positives, but I was just clarify that algorithm questions are really IQ
questions, which is as you rightly point out is a flawed proxy for predicting
how well someone will perform in their role.

------
MarkMc
> Clearly, I'm not an expert in algorithms. There is no point in giving me
> binary-tree-traversing questions; ...I'm trying to be an expert in something
> else, like object-oriented design, for example.

I've always been surprised by the focus on algorithms in interviews. Maybe I'm
an outlier but in my entire career I very rarely have to implement any
complex, low-level algorithm - usually I can just use a standard library. But
_almost every day_ I'm using object oriented design to refactor code or meet
new business requirements.

------
ajeet_dhaliwal
It's like this person was inside my head. I agree basically word for word and
do the same thing, cannot be bothered anymore, like he suggests, if they are
telling him his profile is so great and 'impressive' why must they schedule a
regular interview and on a whim reject him. Waste of time.

------
ng12
Yeah it kind of sucks, but from Google's perspective it's absolutely
necessary. So many people talk the talk, run a blog, have a neat looking
resume/website/GitHub and just cannot perform. Unless you're an undisputed
rockstar in a specific area and they're hiring exactly for your expertise you
can't expect anything else. It's a huge waste of time to custom tailor to each
candidate when 90% won't receive an offer.

> There is no point in giving me binary-tree-traversing questions; I don't
> know those answers and will never be interested in learning them.

Take an afternoon and skim Cracking the Coding Interview before applying.
There's no reason a competent engineer shouldn't be able to solve questions
like that. You know exactly what's expected of you, show some initiative.

~~~
cmrdporcupine
Disclaimer: I have interviewed-trained twice at Google but I don't like the
process for interviews. Athough I work there, My opinions have nothing to do
with Google, just my own.

I think the process selects well for new grads who have recently completed
algorithm courses.

I think the process selects well for people who are comfortable with doing
work on a whiteboard.

I think the process selects well for people who are motivated enough to work
at Google that they read and study books like you mentioned for weeks, and do
a bunch of practice self-study interviews before coming.

Whether that set of people overlaps significantly with what makes a company do
well -- I don't know. I'm not sure.

But I am pretty sure that the reverse assumption, that people who don't pass
those bars are not good canddates, is an arrogant position that only a company
of Google's standing and size can/should get away with.

What I don't get is the trend of small companies, startups, and the like,
copying this interview process. It is entirely not a match nor a way to find
the kind of motivated, culture-fitting, creative people you need in a smaller
company.

~~~
ssambros
>I think the process selects well for people who are comfortable with doing
work on a whiteboard.

If I am not mistaken, you can choose to do the exercises on a Chromebook in an
IDE instead of the whiteboard, so there's that.

------
sandGorgon
Today, I read something very interesting on the Slack engineering blog on an
older post - [https://slack.engineering/a-walkthrough-guide-to-finding-
an-...](https://slack.engineering/a-walkthrough-guide-to-finding-an-
engineering-job-at-slack-dc07dd7b0144#.yptbjwpi1)

 _Many candidates think they need to find someone currently at Slack to “get
their foot in the door.” Rest assured this is not the case; in fact most of
our hires have come from people who have applied via our careers page. We take
all applications seriously. We care deeply about diversity at Slack and when
you only hire from your current employees’ networks, you tend to get a
homogenous set of candidates._

Kind of, the opposite of how Google hires. I wonder which one is the right
approach.

------
010a
I've turned down actual offers because even some medium-sized companies won't
tell you which team you'll be working on when the offer is extended.

I get that things can be fluid, but its such a meat machine.

~~~
edgan
That is when you know they just see you as another cog.

~~~
quantumf
These perspectives are very negative. An alternative view is that there are
tons of interesting problems and projects and applications to be worked on,
and to some degree at least you get a say in which ones you work on.

------
jdhopeunique
I did a second phone interview at Amazon once. I have several years experience
and understood the algorithm for the problem fine but got tripped up on the
syntax a little. I was interviewing for a specific team and I could tell the
interviewer was just looking for an excuse not to hire me. Perhaps I dodged a
bullet in not getting on that team, but now I have to wait before I can apply
anywhere else at Amazon.

------
nsxwolf
The amount Amazon spends on airfare for these wasted trips must be staggering.
I'm in Chicago and I don't know very many people who haven't gone on this
strange pilgrimage to Seattle.

~~~
rabidrat
Amazon has free shipping with Prime.

------
jff
> some programmers who didn't know a thing about my profile asked me to invent
> some algorithms on a white board for almost four hours.

Yep. Did the phone interview after weeks of back-and-forth, told them what I
was interested in, told them I was only interested in working on such-and-
such, then they drop me in the standard "write memcpy for us" interview. The
last interview was some dude with a weirdly confrontational attitude who wrote
some assembly on the board and said "Find the bug. It took us 3 months."

If someone like David Presotto or Rob Pike want to recruit me directly, fine,
but after similar experiences with Amazon I've decided the typical mega-
startup interview process is for the birds.

~~~
thaumasiotes
> The last interview was some dude with a weirdly confrontational attitude who
> wrote some assembly on the board and said "Find the bug. It took us 3
> months."

Not great, but there is a world of difference between, on the one hand: (1)
there is a bug; (2) it's in these 30 lines of code, and on the other hand:
something's wrong, and the problem might be somewhere in your two million
lines of code.

------
dlwdlw
A thought occurred tine that maybe these types of interviews aim to filter for
specific people. An H1B from Asia will have the motivation to memorize
"Cracking the Coding Interview" as well as the pressure to stay and say yes to
everything. This creates a distortion at the IC level. At the management
level, the filters create another distortion for cultures that heavily bias
statis and grouo standing (rather than get a paycheck and do the minimum to
stay). At the final leadership level there isnt even another filter from the
managers. The candidates come through entirely other channels, usually network
related.

------
thurn
Interviewing only with your eventual manager is massively inefficient. Imagine
I'm a hiring manager with one headcount available. Let's say Google gets about
5000 applications per day and hires 50 people per day, so I need to interview
around 100 people to fill that spot. If two of those people meet my criteria,
the extra ones get rejected anyway. Even more time is wasted than with the
algorithm question approach (and honestly, stuff like tree traversal comes up
all the time, even in client application code, so you might still get asked
about it).

~~~
laurencerowe
Engineers/managers from somewhere in the organization are still needed to
phone screen and interview people that make it through the initial recruiter
bar. If people in your team were to interview applicants for jobs on your team
wouldn't it take the same amount of time on average?

------
falsedan
Part of the problem is that these companies don't know who your direct manager
will be, since they don't know where you'd best fit! Or worse, by the time you
finish your notice period, they've re-orged and another team needs engineers
more than the originally-intended team.

One of the skills they're looking for is adaptability/flexibility, to offset
the terrible resource planning.

The message I really get from this post is that they'd be happier in a more
structured, predictable environment, and there are plenty of places like that,
old+new, small+large.

------
Philipp__
Am I the only one that kinda forgets these kinds of stuff, like binary-tree-
traversing? What I mean by that is that I forget the implementation (let's say
in C) very often, and have to go back and look at text book/google/and spend
time implementing it. While conceptually I can explain and present everything,
at any time, and show you that I understand specific data structure and
algorithm, it's use cases, strengths and weaknesses, when I fire up terminal
and try to write it straight from the head it takes time. And I always feel
like I have to "relearn" the implementation and think about it in specific
way.

These questions sound pretty daunting and stressful to do, @Google, on
whiteboard, in front of strangers who's temper and mood can vary a lot. I am
student still, while working for company like Google sounds awesome, and there
is a lot of smart people and cool stuff to do, it's "scary" recruiting
techniques and that "cog in the machinery" feel is what turns my excitement
down. Especially cause I am not so good in academic sense of learning. I tend
to be one of those who work on their own, and hack with things in their free
time, where my results in curriculum aren't as great as people expect them to
be, but once it comes down to conversation/discussion/implementation people
often surprise themselves and are kinda confused.

~~~
nkassis
No you are not alone. The expectation is you've reviewed and practiced these
subjects before going in. Hopefully with a few weeks of practice you should be
able to remember them enough to write them out on a board. But yeah it can be
thought, the interviews are stressful and not good for introvert candidates or
those who struggle under pressure. (I'm in the latter group. practice helps).

It's not a great system but it's the best they have come up with so far. It's
frustrating because it's got a high false negative rate. Failing it isn't a
indication of you on the job skill.

------
base698
I like how every week one of these posts comes up.

So many posts telling the world that they don't want to be the algorithm guy--
the world doesn't care. Forgetting the Maxim: "Not everyone gets to be an
astronaut when they grow up."

[https://cdn.shopify.com/s/files/1/0535/6917/products/potenti...](https://cdn.shopify.com/s/files/1/0535/6917/products/potentialdemotivator.jpeg?v=1414017238)

~~~
nsxwolf
But an "algorithm guy" kind of IS the astronaut, no? Most work is line of
business, CRUD, wiring up web forms, etc.

------
seangrogg
Maybe he should talk to Google's contract recruiters. I got interviewed by my
manager, my interview was extremely relevant to the tasks that have since been
expected of me... it was good times.

Between the perks, the pay, and getting to work on various projects that
always have me learning new and exciting things about front-end development I
think the fifteen minute investment I made in exchanging pleasantries with a
recruiter has paid off. Though that could just be my morning coffee talking.

------
lazyant
Well, in their defense (Google/Amazon/Facebook etc), a team leader or any
other particular person cannot interview 500 applicants, so either more people
are interviewers or they are way more specific with initial resume (which can
be fake to a big extend).

I don't like algorithm questions either but at least they optimize by time,
the alternative is to have people in for a few days, or spend a day doing chat
interviews and risk getting a bullshitter.

~~~
deathanatos
> _a team leader or any other particular person cannot interview 500
> applicants_

While, yes, it often takes interview more than one, and often several people,
to find a desirable candidate — it's not that high. Given that any candidate
will see probably around 4 interviewers, I don't think asking that the manager
interview is that big a deal. I have to agree with that part of the article
(though I disagree with it on the whole): meeting your manager-to-be is
important. (And I don't think one understands this until one has a bad
manager.)

In a prior job, we would also omit the manager interview if it was certain the
candidate wasn't going to be a pass.

------
mabbo
Amazon won't hire you just for one role. The company allows free movement
between teams by SDEs. If you're an SDE, you're an SDE, and you're welcome to
change teams so long as the new manager will take you.

If you don't know algorithms, maybe that's okay for the team you're joining.
But hiring you means screwing over the team you're going to be on in 3 years.
That's why they interview that way.

~~~
hbosch
Nit: I believe you can't move more freely than once every 30 days or so. ;)

~~~
mabbo
When I joined, it was once every 12 months. All I know is that they removed
that rule recently.

------
ninjakeyboard
I think you're missing the point - those things that you don't like about the
Google interview process are meant to eliminate bias. Your hiring manager
doesn't interview you because they might make compromises. People interviewing
you don't review your profile because they might have a bias if they know
about you.

All of the things that make those interviews effective are the things that you
are complaining about.

------
jorgemf
I did an interview with Google few years ago, I still don't know the position
they wanted me for. I make pretty clear my preferences but I was interviewed
by random engineers not related with what I wanted to do in Google.

I guess they just want software engineers as workforce. They don't really care
about what you want and your skills, if you are very good at something you
will probably be good at something else.

------
OpenDrapery
I think most young engineers are surprised to find that after they've
navigated the hiring guantlet at BigCorp, they were never interviewing for a
specific position to begin with. They were interviewing to be thrown into a
pool of new hires.

When they show up for their first day of work, then they basically role the
dice to determine whether you go to team A (interesting work) or team B (shit
work).

------
TallGuyShort
That reply has a lot of worth to it. I very nearly worked for Yahoo many years
ago and was very excited about it, but it fell apart at the last minute. In
the end, what should have been my big red flag is how evasive they were every
time I asked to talk to someone specifically from my team. I was given offers
from multiple specific teams and had to choose one before I was given the
details of the offer (i.e. salary and other benefits), so I had assumed there
_was_ a specific team. In the end their turned out to be a massive disconnect
between my qualifications and what they were going to have me do. I really
didn't appreciate it, especially after I had tried so hard to do more specific
preparation from my end. Now I look at this standard reply and I think its
genius. I'll go the extra mile for my employer but if they're that impersonal
right off the bat it's probably not a good match. Sure, they're running at
scale and maybe anything more isn't practical, but clearly it's not for me.

------
SmellTheGlove
I'm up in the northeast and at a level where I'm not going to get emails from
Google/Amazon/etc for an engineering position. But I do get a ton of what I
consider recruiter spam - usually something tangentially related to my
background, and often fairly junior (I'm on the very low end of the executive
ranks nowadays).

I used to ignore it, but I've decided since that while I'm not going to be
remotely interested in the role they've proposed, I can at least clarify my
background and career level should they have something more appropriate.

And for the total form email recruiter spam, I'll sometimes reply asking their
rate range for W2 and 1099. I never get a response to those. Well, I'm lying,
I did once and it was to say "let's discuss it on a call." No thanks, that
means it's low. And being a small world up here, I knew who the client was
anyway, and what they were trying to do. I had no business getting that email.

~~~
digler999
> I never get a response to those.

Exactly. Thats what makes this such a difficult game. If you _pay enough_ ,
filling positions won't be a problem. The problem comes when you try to fill
positions while simultaneously suppressing wages to the lowest tolerable
level. Even the dumbest monkey will learn to do tricks if you offer enough
bananas.

~~~
SmellTheGlove
But nobody wants to pay enough. I hate to be a presumptive asshole, but if I
get 5 different emails from 5 different recruiters for what appears to be the
same position with the same client - all either form emails or in barely
readable messages (or incomprehensible voicemails), I'm going to presume
they're not offering anything reasonable relative to the work asked.

~~~
digler999
I had to fight for it, dealing with some really skeezy recruiters for a
contract position that advertised/expressed a rate of $x5/hr, once I passed
one of the 3 phone/skype interviews, and they realized I was a viable
candidate, they immediately tried to insinuate that they couldn't afford
anything more than $X0/hr or a fulltime salaried position at $(X-10)/hr. I
said shove it, and lo and behold, they called back and the $X5 rate was yet
again available. I complete 2 more interviews, and they get ready to draft an
offer and they tried _again_ to get me to accept $X2/hr, then $X3, for no
explicable reason. I said no, and in my offer letter they wrote $X5/hr *{rate
may change at time (sic)}. I made them re-draft it, flew to the client site,
and after a tense 2 weeks (worrying if I got paid the full amount), I finally
got paid what they advertised.

------
mydpy
The other way to respond: thanks, I'm interested. Alternatively: no thanks,
I'm not interested. Recruiters aren't monkeys or slaves. This post is arrogant
and rude.

~~~
Gigablah
THANK YOU. I'm concerned I had to scroll down this far to find a comment that
calls out the author on this point.

------
nolemurs
There's tons of information online about what the big companies' interview
processes are like. If you show up to an interview without bothering to do any
research or preparation (like the author clearly did), then it's not going to
be surprising when it doesn't go well.

Maybe I'm setting too high a bar, but I feel like it's not unreasonable to
expect someone to spend an hour or two doing research on the interview process
before flying out to Seattle. If he had, he'd have realized it was going to be
heavy on the white boarding and algorithms, and then could have chosen either
not to waste anyone's time, or to really prepare.

The recruiter totally should have let him know what to expect of course, but
it's a strange sort of entitlement that leads someone to be upset when they
don't get a job just for showing up.

~~~
hibikir
I look at it backwards: Rejecting a candidate to day doesn't mean that they
won't be exactly the kind of person I'll need to hire 3 years later, as both
my needs ad theirs have changed, and therefore, I think that a good candidate
experience is crucial. I want people that are rejected, or that leave the
process early, to remember the experience positively.

Thus, I do not expect anyone to do research on the interview process: Before
anything other than the basic recruiter chat, every candidate should receive a
pretty good picture of how the recruiting process goes: Number of interviews,
style of content, time to wait between an interview and its next steps... If a
candidate is ever surprised, It's the company that fails.

If a shop that has a couple of hundred developers can do that in a cost
effective way, so can the bigger tech companies. If they fail, it's because
their standards for how to run a company are way too low.

~~~
nolemurs
Yeah, I totally agree with this actually. Amazon totally should have done
everything you say. As it happens, I know that Google is really good at doing
the things you list.

The fact that Amazon screwed up doesn't mean that the author of the blog post
didn't also screw up though. He really _should_ have figured out what he was
getting into before getting on a plane.

My take on the blog post is that everyone involved was incompetent.

------
mbrodersen
"I do realize that these are multi-billion-dollar companies, the best in the
industry, and I'm nothing compared to them."

Making a lot of $ as a _company_ does not automatically mean that every
_individual_ working for the company is "the best in the industry". And the
more they hire, the more this will be true. I have worked with people who
ended up working for Google and they were certainly _not_ the best developers
I have worked with. They were good but not great. Also, to make a lot of $ as
a _company_ you need to have a good _business_. You don't need top developers.
Just _good enough_ developers. With a few really good ones mixed in to take
care of the core components. A great business idea with OK developers beats a
bad business idea with top developers every time.

------
LyalinDotCom
Reminds me of my own story on a much smaller scale and at a much smaller
company, but very similar experience so let me share it.

I recall my interview many years ago (10+ yrs) at a small Microsoft partner,
this was when I was still working in banking but wanted to do more interesting
work and grow my career. I was younger, ambitious and also as this post talked
about, fairly new to the interview process.

I found them through a recruiter, they setup an interview and I was very
anxious but excited, showed up ready to show them why I thought I could do the
job they needed, why I could be a great senior .NET developer.

I met that day with one person, who asked me a bunch of very very narrow
questions around some ASP.NET thing I never needed to do but could have
Googled and figured out. But on the spot, if that was the scope of the
interview, well then I was certainly not "qualified".

I then left, very confused and very demoralized. Is this what it meant to have
interviews at jobs more interesting then some random NYC bank?

A short time later Microsoft recruiters called me back in regards to a resume
I submitted 6+ months before all this started and totally thought that
Microsoft didn't want me, I mean look at the crazy experience with the
partner. But my buddy, a more senior developer told me "dude trust me, that
was a BS interview, you HAVE to go to this interview and you'll see, you have
a good chance".

The Microsoft interview was the standard Microsoft Consulting one, multiple
people plus the hiring manager. I felt welcomed, they all focused on different
technology and at a high level which made a lot of sense. I met my future
manager, she seemed to like me. I got the job and I have not looked back,
working now at Microsoft for 9 years. I was honestly very impressed with the
Microsoft interview process and have helped hire others to the team over the
years. It really works if you do it this way and the manager is included, but
yeah many companies and even many teams within Microsoft don't do it that way
and I don't get why.

------
noipv4
Usually the first question during the phone screen is "Do you know Quick Sort;
What is its time complexity?". At that point it's a quick thank you and phone
drop. I am in no mood to solve the formal equations of the time-complexity of
quicksort on my cell-phone.

------
johan_larson
I wonder how high up you have to get before the top-tier companies are willing
to make an exception to their standard interview process. Director? VP?

~~~
hocuspocus
I have a friend who would be level 7~8 at Google and he still gets generic
emails from recruiters.

Not sure they actually do hire anyone straight to this kind of engineer levels
though, I assume they'd give you the salary and responsibilities and make you
earn the title through promotions?

------
kleiba
Why _I_ don't talk to Google recruiters: they never call.

------
ammon
I don't think the problem the author is highlighting here actually has very
much to do with recruiters. The recruiting industry _is_ full of scamminess
(spam to both engineers and companies, false-flag recruiters who claim to
represent famous companies). However, as broken as the industry is, I don't
think it's behind the author's problem here. He's talking about interview
randomness. He was heavily recruited by Amazon, then failed the interview.

This is not a rare event. We have data on this from running Triplebyte. Almost
no engineers passes all their interviews. The top cohort on Triplebyte goes on
to pass about 80% of their interviews. These are strong, strong engineers
(successful startup founders, ICPC national winners, Google staff engineers),
and they still fail. Almost no one can consistently pass more than 80% of
interviews.

One reason for this is just incentives for companies. False positives (bad
hires) are far more expensive to a company than false negatives (rejecting a
good person). So companies rationally bias toward rejection. To a certain
extend we just have to accept this as rational. (Although I do think that
companies tend to assume that everyone they reject is bad, and discount the
cost of false negatives).

But I DO think the situation can be significantly improved. Interviewers vary
significantly between companies. Some companies want everyone they hire to
understand low-level systems and concurrency and thread scheduling. Others
think this is irrelevant and want everyone they hire to be very fast and
productive in modern web frameworks. Some think that CS is important, others
think that it's bookish and irrelevant.

All of this makes sense (different companies do different things). The problem
is that you can't tell from the outside what a company wants to see (oddly
what the company wants often has little to do with the type of engineering
they're doing. It seems to just be an engineering culture that develops over
time). And companies themselves often are not aware of how what they want is
different from what other companies want. Each company just says that they
want to hire "excellent engineers", and think that that means the same thing
to them as to everyone else. It's the cognitive bias where everyone thinks
that the things they are good at are the core of the discipline.

This adds noise to interviews. At Triplebtye, one of the big things we do is
measure this (by evaluating engineers already working at companies, and
updating our model with the feedback on each candidate we send). I'd love to
see this sort of approach take hold across the industry (and companies get
better at advertising honestly what skills they care about).

------
sreque
As a counterpoint, all other things being equal, if I were building a software
team I'd hire a candidate who could pass a basic algorithms interview over a
"OOP design" specialist who couldn't.

------
alistproducer2
I agree with this post. I've turned down Google interviews twice precisely
because I was immersed in personal projects and didn't want to spend the time
needed to practice algorithm writing just for a test. I could understand if
they ask you practical questions like "when and why would you use a trie?"
that seems more appropriate than "write a trie on my whiteboard or you're not
smart enough to work here." None of their engineers are writing trees by hand
and in fact are actively encouraged not to "reinvent the wheel."

------
caseysoftware
> _There was a clear mismatch between my profile and the expectations of the
> interviewers. I don 't blame them, and I don't blame her._

I think this is the underlying key point.

If you walk into an interview and there's a mismatch, you will fail. But since
"applicant tracking systems" have you now, when someone wants to bring you in
next time, the answer will be "yes, we interviewed them before.. meh" and
you're passed over.

I appreciate the author's approach. It kills the time wasting but is still
respectful.

------
benevol
Why _I_ Don’t Talk to Google Recruiters?

Because they know already _everything_ about me. And you. And all of us.

------
lowbloodsugar
See his posts How We Interview Programmers [0] and Hacker-vs-Programmer [1]
for more insight. It is ironic, then, that the author is claiming that
algorithms, and knowledge of them, are unimportant for a programmer. "There is
no point in giving me binary-tree-traversing questions; I don't know those
answers and will never be interested in learning them." He believes he is a
good programmer, and that learning algorithms is not necessary to qualify as a
good programmer.

I think the claim is based on the idea that we now have tons of memory and
disk, so programmers don't need to worry about optimization. Which seems to
have an obvious contradiction, which is that if you have huge quantities of
memory and disk then ignorance of algorithms, and, e.g. O(n^2) causes shit-
hitting-fan failures. Re: [2].

[0] [http://www.yegor256.com/2016/03/01/how-we-interview-
programm...](http://www.yegor256.com/2016/03/01/how-we-interview-
programmers.html)

[1] [http://www.yegor256.com/2014/10/26/hacker-vs-programmer-
ment...](http://www.yegor256.com/2014/10/26/hacker-vs-programmer-
mentality.html)

[2]
[http://accidentallyquadratic.tumblr.com/](http://accidentallyquadratic.tumblr.com/)

Edit: added the quote.

~~~
onion2k
_It is ironic, then, that the author is claiming that algorithms, and
knowledge of them, are unimportant for a programmer_

He didn't say that.

------
kmonsen
You can actually keep the requirement and work for a big company, I believe
this is how Apple recruits. It is my understanding you will talk to and be
interviewed by your future manager.

------
jondubois
I agree that these kinds of tests are terrible but I don't want to work for
companies that have a bad recruitment process anyway - If their talent
acquisition strategy has started to degrade then the level of talent in the
company will start to taper off as well - To me, that's a signal that the
company will stop growing soon.

Companies play the numbers game, so you have to play the numbers game too.
When looking for a job, I usually apply for like 100 positions and maybe get
like 50 calls/pitches from recruiters, then from there I pick maybe 5 to do
the technical challenge - Out of those maybe 4 or 5 have a reasonable code
challenge and I only attempt those.

Sometimes the tasks have a deadline; in these cases I will intentionally
submit my code slightly late (but I make sure it's good quality); if the
company is too upset about me missing the deadline (and ignoring the code
quality) then I will cross them off (or they cross me off; it doesn't matter);
I don't want to work for such companies.

Then I end up with maybe 2 or 3 really good offers with companies that match
all my requirements.

My point here is that the recruitment process is a two-way street; you can
test them as much as they test you. The recruitment process says a lot about
the company if you know what to look for.

------
65827
I really like this strategy, fighting back against these monolithic HR
departments and bored engineers asking terrible questions is something we need
to do more and more.

------
DataJunkie
Google left a sour taste in my mouth after my first interview there. Recruiter
was a mess. I had one phone interview with no coding questions. My resume
could not be more clear that my best language was Python. Yet, every single
question they said "use C, C++ or Java." It was very awkward and intimidating
because although I knew those languages, I wasn't confident with them and the
recruiter already knew this.

~~~
BHSPitMonkey
That's strange, none of my interviewers there had any objection to my using
Python. This was a few years back; perhaps things have changed.

~~~
tir
After I did my phone interview and study problems in Python, I was told when I
got onsite for whiteboard problems that they really preferred C++ or Java. It
was a little late for me to switch mindsets day-of, didn't get enough
recommendations to hire.

~~~
orangecat
Weird. That is definitely not standard practice, at least as of a few months
ago. Candidates provide their preferred languages and are supposed to be
matched with interviewers who are familiar with them.

------
itaysk
I liked this post do much! I totally relate to what you are saying. A friend
of mine recently interviewed to Google (true story), and told me about the
process. Hearing about the questions he was asked completely blew away my
esteem of Google, and my desire to work there. Exactly the kind of algorithm
efficiency questions you describe, which is something completely unrelated to
the job he was interviewing for. Also, some questions like "estimate the size
of area covered by all roof tops in the city" which is nonsense to me.

I wrote this article a while ago about how I hate that kind of interviews, and
actually how I personally interview. Swear to god this was before that friend
told me about his process, but they miraculously managed to exactly ask all
the questions I considered wrong in that article!

[http://blog.itaysk.com/2016/07/07/how-i-
interview](http://blog.itaysk.com/2016/07/07/how-i-interview)

------
gabrielblack
I'm sick and tired, too. Yesterday same 'retarded-monkey' style interview for
a company here in Ireland. They require 5+ years of C ++ on Linux, knowledge
of the standard library, design and implementation of high performance,
scalable, distributed and resilient systems. Questions: implement a stack,
traverse a b-tree, Caesar cipher, an example of polymorphism, etc. Honestly I
felt they stolen 2 days of my life! I'm not a noob! In the last 20 years I had
not the necessity to encrypt a socket with the Caesar cipher, nor to write a
stack from scratch! How do you suppose I could show you that I can write in
"high performance, scalable, distributed and resilient systems" ? Seriously
they think this is a interviews for seniors? One of them asked me the date of
birth "It's illegal but we need for it Security Reasons", yes, sure, take my
vocabulary and look up "junior"!

------
orange_county
"I'm sorry, recruiters, no more standard interviews for me."

This whole blog post reeks of arrogance. You write a few books, done some
presentations at a conference and suddenly you are above the standardize
hiring process? Next time, just tell the recruiters you don't do interviews
and only do consultations at X rate.

~~~
logfromblammo
Yes, someone like that is above a standardized interview process.

But that is only because we are _all_ above such a process.

There is no single standard for software professionals' _jobs_ , and that is
why it is stupid and foolish to have a single standard for hiring into those
thousands of unique jobs.

For most companies, the only skill you _need_ to have and develop is how to
shovel that company's unique and specific type of manure, or if you prefer,
how to prepare their unique and specific flavor of sweetened "ade" beverage.

------
nodivbyzero
I'm wondering what was Google interview for Guido van Rossum?

~~~
0x445442
Exactly! I'm sure Rob Pike and Guido didn't go through the typical BS.

What's curious too is that I've never heard either of them comment on their
individual interviews at Google. Maybe Google made them sign a gag order.

My hunch is Pike & Guido were approached directly by management at Google.

------
misingnoglic
The idea of speaking to your future manager is a bit absurd for this type of
job, where they're not hiring you for a specific role with a specific manager.
If they did that, the project you're hired into may not exist in a few months.
They want people who would be good at any project, under any manager.

------
sandworm101
Better than my emails from new clients:

"Head office called last week. We need X but have no idea what X means. We
asked Bill to look into it but after a day his eyes started bleeding. Help!"

( Im an attorney doing privacy and compliance work. I've never been given a
night in a 5-star by any current or potential client. )

~~~
pinewurst
As a preface for working at Amazon, that 5 star hotel is like a condemned
prisoner's choice of meal.

~~~
sandworm101
The military has put me up in some rather nice on-base hotels a few times. And
they send a driver to pick me up in the morning. Id take a free meal at the
chow hall over the breakfast buffet at most 5-stars.

------
zo7
I've stopped talking to recruiters in general. I've never had someone reach
out because I'm a good fit for the role/company, but I've had a lot where it's
obvious that I just ticked enough boxes on their hiring checklist to push me
through the pipe.

Once I got messaged by a recruiter who was very enthusiastic about meeting
"expert Rails devs" and wanted to hop on a call to see if I had any interest
in their company. I've never touched Ruby in my life though.

I also just started my first machine learning job recently. Before I was even
a month into it I started getting messages from recruiters from companies like
Microsoft who were looking for "top ML talent" like me.

Unless there's an actual genuine interest from the recruiter, I don't think
you gain any advantage by responding to them.

------
adamzerner
Asking to be interviewed by your future boss seems like a proxy for asking to
be interviewed in such a way where it's directly relevant to your job. If so,
why not directly ask for the latter? Your future boss isn't the only one who
can perform that sort of interview.

------
EnderMB
I've mentioned this a couple of times on here, but I'll say it again because
it's (somewhat) relevant.

What are you guys doing to get Google recruiters to notice you?!

I get at least 2-3 messages from recruiters every day, and it's your usual
nonsense. They have an exciting role in an unnamed company that pays a
competitive salary, the usual stuff they spout when they don't actually
represent the company they're hiring for. I can count on one hand the number
of emails I've had from big companies. Amazon have emailed a few times about
working for AWS in Ireland, and I've had an email from Microsoft that led to
nothing.

I'd consider myself a decent developer. I have a CS degree (albeit from a
crappy uni), I've done well everywhere I've worked, I've given talks at local
user groups, and I've got open-source contributions under my belt. I'm
primarily a .NET developer, but I've worked with Java, Python, and PHP before,
so I'm not limited to a certain stack. When I left uni I applied to Google and
never heard back, and over the past few years I've sent a CV in, only to be
rejected after about a week by whichever hiring manager handled my
application. I've even added a few Google recruiters on LinkedIn, and they
never have anything for me.

For me, I'd say that the interview process is one of the reasons I'd like to
interview with Google, because it's so different from everything else I've
done. Sure, as I get older the idea of jumping through all these hoops to work
for a huge company that seems to favour recent grads becomes less appealing,
but the idea of being able to pass such a grueling interview and work on hard
problems still wants me to dust off the CV and apply to Google again.

I fully appreciate the OP's point of view. Experienced developers have very
different standards of working to newer developers. The more you work, the
longer your requirements for employment becomes. However, I think the
potential positives of working for a company with the resources like Google
tends to outweigh the negatives.

------
perfmode
How is the author going to create his programming language without tree
traversal algorithms?

~~~
krzyk
He can learn them on the go, he doesn't need to prepare beforehand.

That's what most people do when they face a problem, they try to learn how to
fix it.

~~~
perfmode
He just said he has no interest in learning them ever.

------
akeck
I talked to (very nice) Google recruiters off and on for a few years, until I
mapped out enough of the SRE knowledge set to know I wouldn't make it through
the interview process. Maybe someday... ;-)

------
mpoloton
I think the recruiting process is designed to minimize type II errors (false
negatives), namely someone who passes the process but would later turn out to
be a bad recruit. Inevitably, the type I error (false positives) grows, those
who are good but rejected in the process.

I don't understand this risk averseness in the recruiting process by the
employers. Especially, in countries with favorable dismissal laws for
employers.

Glad to see that someone puts condition on the interview process and doesn't
submit to their rules.

~~~
geocar
Having someone around who the team likes, but can't code their way out of a
paper bag (type I) is still a problem.

If you have a culture that you're there to work, and to make the company money
then it's not as big of a problem as it can be if you've got a ball pit.

------
tjbiddle
Fun trick: Change your GitHub and LinkedIn profiles to have a specific
spelling or something of your name - you'll start to notice that a vast
majority are scraped and automated.

------
legohead
I find it hard to believe they simply disappeared. Recruiters will pester you
until _you_ give up or say you aren't interested. They even make promises they
can't keep, in order to get you to the interview.

The last time I was looking for a job, I talked to recruiters from Facebook
and Amazon, and the first thing I told them were my salary requirements. They
told me it "wouldn't be a problem." Then later on, I found out I was going to
be offered a lot less.

------
skolos
I sometimes agree to these kind of interviews, since I can visit my friends
and have a dinner on a company dime. Never expect anything else out of these
though.

------
mathattack
I take the recruiter's call just to get market information. Who is hiring?
What are they paying? What's the market for someone like me? Or someone I may
want to hire? Who is doing interesting work?

For better or worse, the "Mass hire smart people" is the most efficient way
for these large companies to recruit. It's very good for ensuring universal
standards of quality. But it suboptimal for specialists like the OP.

------
ghbakir
It's an unreasonable ask. Not a single engineer stays his whole career with
the same manager. Furthermore, needs change since demands and projects change.

Therefore at a big company the best strategy is to check fundamentals.

I agree that it's a BS strategy. I would love that the hiring process is a
internship or some other real work simulation. Unfortunately they do not
scale.

Maybe the author should consider a smaller company where one can predict the
future role.

------
mack73
I acctually love questions about how to best traverse a tree, binary or not.
Maybe I'm ready for an interview at least? But why is it me who should be put
through a four-hour white board coding session? I would collapse after 40
minutes. They can code. Why can't they be the ones at the white board? I can
"architect" and correct their mistakes. They would still be able to evaluate
my competence.

------
zrail
At this point in my career I typically respond by stating that I'm only
interested in remote work and asking what their budget is.

I have yet to hear back either.

------
rb2k_
At Facebook you can usually chose which team you will join after bootcamp, so
asking to be interviewed by your future manager is a bit of a problem.

~~~
perlgeek
The recruiter could just reply with such an explanation, and then explore of
if something could be done to satisfy the candidate's desired to be
interviewed by a specific person.

------
gscott
A lot of things things come up over and over again that is why I have a copy
and paste file of what I use often. 90% of the time what I need is in my file.
Everyone should be given a standard copy and paste file with the algorithms
that come up often rather then needing to be written from scratch. Also now
you can save $50,000 per employee by being able to hire from lower then the
top 1%

------
wnevets
People questioning his ability as a programmer are missing the point. He was
approached by the recruiter/amazon, not the other way around.

------
inkblot11
I've interviewed at the major software companies, including Google, Amazon,
and Microsoft. In all interviews I was interviewed by the people and managers
I would be working with. In many cases, I would also interview with members of
other teams I would be expected to interact with. I now realize I must have
taken that for granted and did not realize it was a privilege.

------
sebringj
I don't talk to them because I probably am not smart enough, am too old, went
to a crap school, only want to do remote consulting anyway and most of all, I
don't care one bit how Google does, besides my browser search working. In the
end I still make more than 1% of developers so I'm not too choked up about it.
You could say I'm stupid-happy.

------
siliconc0w
Companies who need to hire a lot of general purpose high quality engineers who
are highly desirable can design interview processes with high false negative
rates. Where his argument gets off the rails is that it's hard to really argue
a good facility with data structures and algorithms isn't at least one strong
heuristic for a software engineer.

------
rajadigopula
I stopped replying altogether. They keep saying on linkedin they liked my
profile, that's the first and last mail they send me as I never respond as I
clearly know my career path ,the kind of companies I want to work with and how
to get them interview me. I do have a separate mobile, email accounts for job
profile.

------
uladzislau
I never had any luck with incoming recruiters and often it turns out into huge
waste of time. Scheduling/re-scheduling, they don't call on time, there's a
delay, there's something else. In the end it looks like they are not really
hiring otherwise they'd treat you with more respect.

------
novel
For those who are bored with the "new opportunity" emails from Google and
maybe other companies: rather than trolling recruiters with obnoxious
responses, you can just ask them to add you to the non-contact/ignore list and
most probably they'll not bother you ever again.

------
KirinDave
I have just been through the Google process for recruiting. While I have some
minor complaints about timing, I never once was not interviewing with the team
and leadership that held the req. Heck, even their technical was respectful
and topical every time.

So I'm a bit confused by this post.

------
Grue3
I couldn't even get the part where they fly you to the HQ and pay for the
hotel. I'd make sure to ace the whiteboard interview if I got that far! But
nope, the farthest I got was talking about irrelevant non-technical stuff over
Skype and then nothing.

------
paulus_magnus2
If working for Google is such a Valhalla, why do people leave after 1.1y

[https://www.quora.com/Why-do-Google-employees-have-such-a-
lo...](https://www.quora.com/Why-do-Google-employees-have-such-a-low-average-
tenure)

~~~
nkassis
Read some of the response and it's what I expected, fast hiring rate make
tenure number artificially low. That's true at most large tech companies right
now, they've grown massively in the past 5 years.

~~~
paulus_magnus2
Can't be this. Fast hiring rate, say 15-20% y/y growth, would only push
average tenure down by 15-20%.

[https://fortunedotcom.files.wordpress.com/2016/02/4766345812...](https://fortunedotcom.files.wordpress.com/2016/02/476634581293.png)

[http://www.koozai.com/wp-content/uploads/2015/02/Google-
Empl...](http://www.koozai.com/wp-content/uploads/2015/02/Google-Employees-
Chart.png)

[https://cdn.geekwire.com//wp-
content/uploads/2015/10/amazonw...](https://cdn.geekwire.com//wp-
content/uploads/2015/10/amazonww-e1445553945718-620x394.png)

------
amzn_throwaway2
Ironically the example given (Amazon) does include the hiring manager and
engineers from the team in every interview loop.

Teams do their own hiring which has its downsides in terms of consistent
quality, but does mean you will be interviewed by the direct manager.

------
acconrad
Every email from a recruiter is a chance to secure part time consulting work
even if you're fully employed and happy at your job. Great way to build your
freelance résumé and secure more money quite easily.

------
gravyboat
I actually wrote a short field manual on this (partially as a joke) to try and
sell to recruiters that gives them tips about actually, you know understanding
the candidate they are contacting.

------
grigjd3
I've had pretty good experiences with recruiters who talk to me about the job
or department they are hiring for. I've enjoyed the process but maybe I've
been lucky.

------
utopcell
what are you guys talking about ? Some of the best minds that I know work at
Google. How is asking algorithmic questions inappropriate for a CS candidate ?

------
eatbitseveryday
[http://www.yegor256.com/testimonials.html](http://www.yegor256.com/testimonials.html)

?

------
harry8
When there is a popular article here criticising a big employer, in this case
google. People commenting should be declaring their affiliation with that
employer. We want to hear what you think, really! Criticising the article when
you have a dog in the fight you're not revealing is just plain dishonest.

A lot of comments here, not many saying "Disclosure: I (used to) work there"

------
oryades
The title should be "Why I Don't Talk to Any Recruiter"

------
tomcam
tl;dr: He sends an email to the recruiter requiring that he interview with the
manager he will eventually work for. Brilliant!

------
seanhunter
I'm not sure the OPs approach is reasonable, and I would decline any candidate
who tried to put constraints like this on the process. In particular I don't
think it's reasonable to insist on being interviewed by the direct manager and
I don't think it's reasonable to refuse to engage with algorithm and other
whiteboard questions. As a meta-point, a company should try to standardise
their interview process as much as possible in order to provide each candidate
with an equal chance to succeed. This is very important in attempting to
address inherent biases etc.

Apart from filtering out unsuitable candidates, one of the purposes of the
interview process is to determine where exactly a good candidate might best
fit. Although you get a good guess at this from their CV, oftentimes I find
myself suggesting a good candidate be routed to a particular team based on
strengths and weaknesses they have demonstrated in the interview process that
were not apparent before. There is an information asymmetry at the heart of
this that is hard to solve - I know a lot about my company, its teams and
their needs, and the candidate (hopefully) knows a lot about themselves, what
they are actually good at and want to do. What this means is that the direct
manager is not necessarily knowable ahead of the interview (and subsequent
review).

Secondly, just because someone is a team lead/manager does not necessarily
presuppose they are a particularly good interviewer. Interviewing is a skill
that not everyone has and there are good reasons to keep the interview pool to
a set of people who see a wide swathe of candidates and are able to calibrate
their interview based on experiences of lots of candidates. This means the
hiring manager (even if you know who she is) may not be on the slate for
interviewing.

Finally the "I'm not prepared to answer questions like x". Although this is
becoming a trendy thing to say on HN (most typically about
algorithm/whiteboard type questions), refusing to engage constructively with a
question is a huge red flag for me, and likely to indicate a personality type
that I don't want to hire. I would readily admit that the data shows that algo
questions often don't have as much signal as people used to think. However,
structured work exercises have been shown time and time again to be a very
good indicator of subsequent performance. I _do_ need to know that you can
actually program, and often offer a choice of an algo question or a structured
code review (where the candidate and I talk through some code on their github
or that they can provide me for the review).

There are good and bad ways to ask algo questions as there are with many
questions. It's pretty pointless to ask an experienced programmer to write the
algo for heapify; they either know it or they don't. However, if you're a
recent compSci graduate and you don't know these things I'll suspect that you
didn't really pay attention in class and mostly coasted.

One of the hardest and very best interviews I have ever had consisted of
someone deliberately re-asking one of the algo questions I had performed
poorly on at the beginning of the interview process (after I had a couple of
weeks to think about it). This proceeded into a very very tough interview that
pushed me beyond the bounds of my compsci knowledge to how I think about
solving hard problems. It wasn't about what "book knowledge" I could recall
but rather about how good I was at applying my knowledge in a tough situation.

------
johnsmith21006
Anyone find it interesting the author had a bad experience with Amazon but
titles the article with Google and he has a problem with company integrity?

------
codeonfire
In my opinion Google hiring is corrupt. They are under federal investigation
and a civil lawsuit. The reason recruiters contact a large number of people
that won't be hired is they need a lot of no-hires to make their stats balance
out and keep up appearances. Other big companies do this as well, Google just
purports to be better.

