Live data from Hacker News

Why I Don’t Talk to Google Recruiters

yegor256.com

641–650 of 674 posts

Re: Why I Don’t Talk to Google Recruiters

#641
post #147
post #77

Earlier quoted context omitted.

I've been responding with "Sorry I'm pretty happy where I'm at right now, but can I keep your email address and let you know when I do start looking for something new". My goal is to have a giant mailing list of recruiters when I do start looking for work again.

I've found that working with multiple recruiters can be a nightmare if they are all working the same geographic market. Due to my current situation, I tend to only deal with recruiters who are local to where I live; unless the job opening allows for telecommuting, or it is a "too good to pass up" situation (I have yet to see one) - I will generally pass it up. Instead, I currently only work with a couple of local rec…

Most of the recruiters I've talked to work for one and only one company.

Re: Why I Don’t Talk to Google Recruiters

#642

Earlier quoted context omitted.

> That is, I'd conjecture that the good developers who can (or want to) memorize algorithms and regurgitate basic CS knowledge are one kind of capable dev, and the good developers who rely on tools to a greater degree are another kind of dev. Call them types A and B. I really dislike this characterization. I'm a googler. I've never tried to, or needed to, memorize algorithms. I don't know if this characterization com…

We have something interesting here, in that I'm looking at this from the perspective of someone the Google system rejected (and who later decided/rationalized/realized participating wasn't really worthwhile) and you're looking at it from the perspective of somebody it embraced. Naturally, it wouldn't boil down so easily in practice to these two types, even if they are the correct ones. Everybody is a mix of both (and…

Indeed we do.

So, I think my biggest issue with your A/B dichotomy is that I don't see it. That is, in school, in myself, in coworkers, there isn't this large group of people who are trying to do all the theory at the expense of practicality, as opposed to this group of stuff-accomplishers who aren't theoreticians.

I mean, occasionally those people exist, both the "fuck it I'm going to sit down and type until it works" people and the "I must understand this concept before I write a single line of code" people. But as you say, everybody is a mix of both, and I think most people are nearer the middle than the sides, which makes the possibility of mild bias towards one side or the other a lot less harmful than you maybe expect.

Re: Why I Don’t Talk to Google Recruiters

#643

Earlier quoted context omitted.

Maybe, or maybe they are missing out. Binary-tree traversing is a rote memory sort of thing. Somebody who can come in and play 20 questions about an algorithm and answer them perfectly shows me nothing other than they studied that algorithm and have a good memory. It does not show me any insight into how they solve problems which have not already been solved for them. It won't show me how they do under stress with a…

Binary-tree traversing is a rote memory sort of thing. But the real value is in being able to analyze an application's performance and deal with concepts like recursion. I also feel that anybody who has actually been productive on a large successful project does not have time to commit to learning things that can be looked up when needed. Some important concepts aren't the kind of thing that you "look up" then read a…

> But the real value is in being able to analyze an application's performance and deal with concepts like recursion.

Implementing a delete on a binary search tree or traversing one has nothing to do with analyzing performance. If you want to ask questions that require recursion don't make them dependent on algorithms that require rote memorization. Or at least have a alternative recursion question if the candidate says - "Sorry, I don't remember all the rules for this algorithm". Or even be ready as a interviewer to go over how said algorithm works and see if the candidate picks up quickly. If you wanted to really talk about performance then you can talk about WHEN to use a given algorithm and WHY. You don't want to ask questions that there literally is ONE (maybe two) answer that are correct. You don't want to ask questions that when asked WHY the answer "is because that is how the algorithm dictates it." You want to ask questions that are open for interpretation that you then can ask the candidate why they chose that solution. This gives you much more information.

> Some important concepts aren't the kind of thing that you "look up" then read a one paragraph blurb for 3 seconds. The pitfalls of concurrency and the pitfalls that ACID transactions are supposed to protect against are two more examples.

Let's not conflate algorithm implementation from rote memory with not wanting to answer any technical questions. You can't just come in and start talking about ACID transactions and concurrency as if that is what people have been objecting to. Those are valid topics and I doubt most people would have any qualms talking about them. As those are concepts, not rote memorization. You have to have a good understanding of the problems to know where the pitfalls are and know how to spot them. Implementing a algorithm rally covers higher level concepts other than simply regurgitating something like "traverse the left subtree of the root node, accessing the node itself, then recursively traverse the right subtree of the node ....".

I think what most people are suggesting is that there is too high of a penalty on not being exposed to a given algorithm. It is not that these people incapable understanding the algorithm or even implementing one. They simply don't remember. I think this is because a large number of people working at google are fresh out of school. They literally have no experience other than the rote memory required to pass their classes (yes, I simplified that a bit).

I will say that I did find a correlation to the age of the interviewer and the type of question asked. The older 30+ and 50+ guys that interviewed me asked practical questions not related to a specific algorithm. The youngest interviewer I had was a complete hothead and started out the interview saying "he was not your normal interviewer so he was going to ask the hard questions" Then proceeded to ask me a rote memory question about a algorithm. Either I had knew it and memorize it or not. That is not a hard question. The hard question have nothing to do with a defined algorithm. They are often open ended and leave lots of rope for you to hang yourself.

Re: Why I Don’t Talk to Google Recruiters

#644

Earlier quoted context omitted.

Have you ever actually got a job that you accepted through this method? Also, what wizardry did you use to get 200+ recruiter E-mails a month? Do you just have a highly optimized resume out there on all the job sites or something?

Yes, I've gotten my last 3 non-consulting jobs through this method. Before I switched to FT consulting, pretty much all of my jobs were through recruiters. The 'wizardry' is basically having a well put together resume (I've had several people/orgs/etc take a look at it over the years and give me optimization tips), and I maintain profiles at dice, monster, and indeed. That's... about it. I avoid LinkedIn like the pla…

I would be interested in seeing what your resume looks like, at least on a generic anonymized level.

Re: Why I Don’t Talk to Google Recruiters

#645

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 fall…

My conversations have usually gone like this: "Hey, you look like a great candidate for $AWESOME_JOB" "Great, let's talk" "Oh, you're not really what they're looking for, can I interest you in $GARBAGE_JOB or $BASEMENT_AT_YELLING_CORP" But by then I've showed interest, so I start getting calls. Not worth it.

At a location 3000 miles away.

Re: Why I Don’t Talk to Google Recruiters

#646

Earlier quoted context omitted.

You're missing the point. Sure, you should make it fil gracefully on unexpected input. But Google shouldn't change APIs in a way hat causes 3rd party apps to fail at all.

Third party apps wouldn't fail if they were correct in the first place. Failing gracefully on unexpected input is the way a competent engineer would structure their program.

"Failing gracefully" is still failing. I don't want my app to fail, gracefully or otherwise.

Re: Why I Don’t Talk to Google Recruiters

#647

Earlier quoted context omitted.

It pretty much has no practical use, that a different data structure couldn't do more efficiently.

What in the world are you talking about, RB trees are incredibly useful.

There's a well known analysis that shows they're asymptotically equivalent to B-trees. You can tune a B-tree to better exploit cache locality. Other kinds of ordered binary trees are far less complicated to code and have similar performance characteristics.

Re: Why I Don’t Talk to Google Recruiters

#648

Earlier quoted context omitted.

Binary-tree traversing is a rote memory sort of thing. But the real value is in being able to analyze an application's performance and deal with concepts like recursion. I also feel that anybody who has actually been productive on a large successful project does not have time to commit to learning things that can be looked up when needed. Some important concepts aren't the kind of thing that you "look up" then read a…

> But the real value is in being able to analyze an application's performance and deal with concepts like recursion. Implementing a delete on a binary search tree or traversing one has nothing to do with analyzing performance. If you want to ask questions that require recursion don't make them dependent on algorithms that require rote memorization. Or at least have a alternative recursion question if the candidate sa…

If you want to ask questions that require recursion don't make them dependent on algorithms that require rote memorization.

Yes, surely! Have the algorithm explained, or even diagrammed for them with pseudocode.

Let's not conflate algorithm implementation from rote memory with not wanting to answer any technical questions. You can't just come in and start talking about ACID transactions and concurrency as if that is what people have been objecting to.

Let's not conflate the need for a good background with rote memory. I object to rote memory being rewarded by interview questions. I also object to programmers who maintain they don't need to know any of this stuff at all, because they can just Google it and spend a few seconds reading the Wikipedia article. Where in the Dickens did you get the idea I'm Captain Rote-man?

One purpose of training in a highly skilled field is to teach people how to avoid the egregious gotchas. Go ahead and read my other comments in this thread and on this site. I'm not the all conquering champion of rote memorization you seem to think I am.

Re: Why I Don’t Talk to Google Recruiters

#649

Earlier quoted context omitted.

Yes and no. I think that the lead or "surgeon" (to quote The Mythical Man Month) in charge of any app or service development project should be well trained. Anyone who brings in a junior developer (anyone without a CS degree or equivalent, or less than 5 years of professional experience) to lead a project is asking for trouble. But I think that average developers don't need the full training any more than a nurse nee…

But I think that average developers don't need the full training any more than a nurse needs to have a full medical degree. A nurse needs to have enough 1st Principles knowledge plus specific training to keep from making egregious mistakes. In fact, where X is a profession, an X needs to have enough 1st Principles knowledge plus specific training to keep from making egregious mistakes. The fact that our "field" keeps…

>The fact that you entertain this thought is an indication that something is not quite right with our field.

Agreed. But try as I might, I can't come up with a solution that I'd actually support the implementation of.

If you have any ideas about we can get from where we are to where we should be, I'd be interested in hearing them. Having IEEE license developers at varying levels of skill sounds like a start, and requiring Internet-visible software to be written by developers with certifications sounds nice...until you think about open source projects, which thrive in large part from free effort. And until you think about the fact that software traverses borders fluidly. And what about entrepreneurship? Should we tell people they can't write apps unless they have the certification? Or that they need to pay an expert to audit their apps?

And the fact that big companies will do whatever they can to cut costs, including hiring developers in countries without certification requirements if you don't motivate them otherwise. (Maybe a DMCA-style safe-harbor, where ONLY if they use a development team with sufficient certifications can they be proof against lawsuits for defects; otherwise people can sue them for exploits that result from their software?)

I have lots of ideas, as you can see above. I just don't like any of them. There probably needs to be a constellation of rules in place, set by a professional organization and ensconced as legal requirements... But half of the rules I imagine wanting I also, under other circumstances, would despise.

Re: Why I Don’t Talk to Google Recruiters

#650

Earlier quoted context omitted.

I'd pay at least a few dollars per month / tens of dollars per year for this service. I'm not kidding. Dear HN reader, please steal this idea!

Dude, you can do it yourself with a gmail throwaway. 'hireme.myname@gmail.com' or similar, set your vacation auto-responder appropriately, and have 'realdeal.myname@gmail.com' auto-forward to your real address.

I know how to set up 2 email accounts and forward one to another email. "this service" would presumably be more than allocating 2 email accounts.
Post reply on HN