Hacker News new | ask | show | jobs
by freshfunk 4792 days ago
From the post: "Good coding problems are fractal in nature. They can be extended arbitrarily to gauge the depth of your knowledge. For example, you might be asked to solve a problem any way you want. Then you'll be asked to solve it again in constant space or sub-linear time."

You could prepare for months but if you don't understand the core CS concepts then it's difficult to hack these kinds of interview problems. Having a solution is one thing, but coming up with 3 different solutions to the same problem based on various constraints (preprocessing, space/time constraints) requires understanding.

If they "hacked" this, then thru likely understand the concepts well enough such that its sufficient for the job.

Also, interviewers should ask if they interviewee has seen the coding problem before and come prepared with a backup. Interviewers are also looking to see if the interviewee derives the answer too easily. Usually scraping the surface reveals whether the person really knows what they're talking about or not.

1 comments

I don't disagree with anything you say. As I mentioned earlier that all people who hack such interviews do have basic understanding/skills requisite for the corp, quite enough to play the gymnastics of the interviews.

A good interviewer does try to gauge whether the answer was known to the interviewee. But I have seen that happen far more at hot startups than big companies- primarily because of their more stringent process which leaves less wiggle room for guess work and is more tuned towards concretely judged parameters.

I just don't like the facade of 'hiring the smartest people' in the world, when their mechanism largely filters just well-trained average people.

And I most certainly don't want to sound condescending, so I apologize before-hand. But I probably used a different definition of average than what you or most people here may have in mind. I know quite a few ACM ICPC world finalists, am a region finalist myself, and have conducted/ published CS research with reasonable impact. So I was simply using my PhD program peers as good, and people with lesser (proven) skills as average. My fault, but I hope you can see what I was trying to say.

I see your point and do feel the same way. The problem (industry-wide) is that the process only allows for a glimpse of a candidate. Even if you're interviewing all day, you're probably only talking to each interviewer for 1 hr (or less) and evaluating many different aspects of them (technical, personality, motivation, etc). And this is supposed to speak for your whole career.

I do think there are false negatives through this process but that's the trade off, I believe, for efficiency. Considering how time consuming interviews are (for the interviewer), there has to be some ways of reducing the wheat from the chaff.

After all, many use a university degree (from a prestigious university) as an initial filter. However, I'm sure there are many talented people who don't have degrees. But when looking at the probabilities, your chances of finding a great candidate are significantly higher if you filtered on that degree.

Well trained average people are good enough to do great things. That is a feature, not a bug.