Live data from Hacker News

Ask HN: What is the point of algorithm-heavy interviews?

news.ycombinator.com

81–90 of 104 posts

Re: Ask HN: What is the point of algorithm-heavy interviews?

#81
post #18

To create a barrier to entry that weeds out over 90% of applicants. IMO, this is the sole purpose of algortihm-heavy interviews. Companies like Google can put out a job ad and receive thousands and thousands of applicants, and the sad truth is that many of them could probably do the job that is required of them. By putting in a loose requirement around what is essentially problem solving via known algorithmic techniq…

I'd just like to add that is easier to compare candidates using algorithm challenges (you can check if the candidate reached the optimal solution, how long it took and so on).

I dislike this kind of interviewing because you miss the chance of hiring people that are different from your regular hires, but hey the FAANGs are doing great so who am I to criticize.

Re: Ask HN: What is the point of algorithm-heavy interviews?

#82

Earlier quoted context omitted.

This is like saying that a car mechanic needs to have a PhD in thermodynamics to work on internal combustion engines. 99.9% of coders just need to know what things in their chosen language(s) are performance sensitive and what aren't - very few actually need to know the exact reason why. And even fewer need to be able to improve on said algorithms. If something needs sorting, you call the sort function in the object.…

As a programmer, I want my user to have the best experience possible using my software. Using a generic sort function may be the optimal solution for me, as a programmer for getting the job done quickly, but in some occasions, it delivers an experience which is far from optimal for my user. Let's take the sort function as an example. There are many problems for which the sort function far from the optimal solution. F…

Ok sure, but you can simply google different algos, try them out, and use the one that works best?

Re: Ask HN: What is the point of algorithm-heavy interviews?

#83
post #81
post #18

To create a barrier to entry that weeds out over 90% of applicants. IMO, this is the sole purpose of algortihm-heavy interviews. Companies like Google can put out a job ad and receive thousands and thousands of applicants, and the sad truth is that many of them could probably do the job that is required of them. By putting in a loose requirement around what is essentially problem solving via known algorithmic techniq…

I'd just like to add that is easier to compare candidates using algorithm challenges (you can check if the candidate reached the optimal solution, how long it took and so on). I dislike this kind of interviewing because you miss the chance of hiring people that are different from your regular hires, but hey the FAANGs are doing great so who am I to criticize.

> I'd just like to add that is easier to compare candidates

But you might just be comparing one's ability to feign smarts versus another's ability to work out a problem from first principles. Comparing apples to oranges might be easy but the results may or may not be that useful.

This remains one of my favorite ancedotes: https://news.ycombinator.com/item?id=17106291

Re: Ask HN: What is the point of algorithm-heavy interviews?

#84

I realized that everyone needs a base level of algorithms knowledge to write and design good software. Ideally it is pretty basic (leetcode easy), but the initial employees at FAANG companies decided to have a hazing ritual by creating increasingly complicated questions (e.g. leetcode hard) and it is exacerbated by a large number of kids from universities who mindlessly play this game. It spread to all other tech com…

This is the real answer. There is a huge difference between base line knowledge of ds/algos and what is being expected of candidates (especially juniors!).

It's more about the company/interviewer ego than actually hiring someone who can provide value.

Re: Ask HN: What is the point of algorithm-heavy interviews?

#85
For FAANG and other companies with large data: Yes. For solving actual scaling issues, it makes sense for any candidate to understand this stuff.

Bottlenecks matter. And the better you are at algorithms means the less rework that needs to happen.

If on the other hand you're doing day to day business logic, no, it does not make sense. 80% of all jobs are like this.

Re: Ask HN: What is the point of algorithm-heavy interviews?

#86
If you understand data structures and algorithms then, in my view, it demonstrates that 1. You recognize the importance of understanding the principles and foundations of your field. 2. You understand that knowing the fundamentals isn't about "writing algorithms everyday", it's about growing your ability to think deeply and creatively about a problem without constantly flailing around in ignorance.

I often hear that learning algorithms / data structures is pointless these days because it encourages reinventing the wheel or it wastes time. I believe the opposite is true. People who are ignorant will keep reinventing the wheel, they just won't realize they are doing it and how poorly they are doing it.

Learning algorithms and data structures will enhance your ability to write software because you will have a deeper understanding of how things work. When you understand how things work you can build interesting things.

Of course, if you just want to be a non-contributing faceless code monkey at a corporation where you don't matter and get a decent paycheck well, you probably can skate by in mediocrity. If you want to be able to build things that don't rely entirely on the work of others that actually understood what they were doing then you need to put in the time. The return on that investment lasts a lifetime.

Re: Ask HN: What is the point of algorithm-heavy interviews?

#87

I realized that everyone needs a base level of algorithms knowledge to write and design good software. Ideally it is pretty basic (leetcode easy), but the initial employees at FAANG companies decided to have a hazing ritual by creating increasingly complicated questions (e.g. leetcode hard) and it is exacerbated by a large number of kids from universities who mindlessly play this game. It spread to all other tech com…

Ah, that gets to heart of the problem!

Re: Ask HN: What is the point of algorithm-heavy interviews?

#88
post #79

Earlier quoted context omitted.

No, it's not. You do not need to learn how to analyze algorithmic complexity from a theoretical point of view, which would be very math-heavy. But a college/university-level mathematics / comp-sci course in algorithms & data structures, usually only a 3 credit, 200-level course, isn't really asking too much. Then you'd know why your O(n^2) algorithm sucks on any dataset larger than a toy without having to be scolded.…

Then it would be fine if all these interviews asked was, "Why does this code with a O(n^2) algorithm suck?" People seem to have more of an issue when the interviews seem to blow right past that into leetcode hards.

I don't disagree with your statement at all.

But I do disagree with the statement I was replying to.

Re: Ask HN: What is the point of algorithm-heavy interviews?

#89
post #44
post #20

For me there are two reasons: (1) We want to hire people who are able to solve programming-related problems. Now how do you find out if a candidate can do this? Looking at their CV doesn't tell you much. You can build up a long impressive CV without being able to program. So it would be nice to see them solve a problem right here and now. Ideally, that would be a problem of the type you would often encounter in your…

I think you are mistaking a programming-related problem for a CS-related problem.

Hm I would say writing an algorithm is both programming-related and CS-related.

Re: Ask HN: What is the point of algorithm-heavy interviews?

#90
post #18

To create a barrier to entry that weeds out over 90% of applicants. IMO, this is the sole purpose of algortihm-heavy interviews. Companies like Google can put out a job ad and receive thousands and thousands of applicants, and the sad truth is that many of them could probably do the job that is required of them. By putting in a loose requirement around what is essentially problem solving via known algorithmic techniq…

Then they complain to Congress that they can’t hire enough workers.

The obvious solution is to increase H-1B. They won't know anything about algorithms either, but they'll cost less and can be worked like slaves.
Post reply on HN