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…
Ask HN: What is the point of algorithm-heavy interviews?
21–30 of 104 posts
Re: Ask HN: What is the point of algorithm-heavy interviews?
#221. Ageism (prefer early 20s) 2. Making switching jobs harder
Re: Ask HN: What is the point of algorithm-heavy interviews?
#23> Who really cares about algorithm on daily bases. I find that statement really depressing to be honest. Why would you be so happy to deprive yourself of a huge source of potentially useful information that is the foundation of our field that shouldn't take long to learn? Algorithm and data structure knowledge helps you write processor + memory efficient code that scales well, and stops you reinventing the wheel when…
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. There's absolutely no need to know what algorithm it uses, the only thing that matters is that the end result is sorted correctly.
Re: Ask HN: What is the point of algorithm-heavy interviews?
#24* I describe the problem
* They ask questions to figure out parts I didn't specify (which lets me evaluate how they handle resolving ambiguity)
* They propose a brute force solution, and I ask them how quickly it runs and how much space it needs (talking in big-O is a fast way for me to tell if they understand their solution)
* They propose a much more efficient solution (often with hints) and we again talk about time and space complexity (which again lets me see whether they understand how to compare solutions like this. I'm also happy to hear other tradeoffs like "this is optimal but too complicated to be worth maintaining")
* They code their solution (which lets me see if they can actually code, and check how well their description of their algorithm matches their actual algorithm)
This isn't a daily job sort of task, but it's not far off, much faster, and very information dense. I'm not testing "do you know the right algorithm" (and will hint that part).
Re: Ask HN: What is the point of algorithm-heavy interviews?
#25> Who really cares about algorithm on daily bases. I find that statement really depressing to be honest. Why would you be so happy to deprive yourself of a huge source of potentially useful information that is the foundation of our field that shouldn't take long to learn? Algorithm and data structure knowledge helps you write processor + memory efficient code that scales well, and stops you reinventing the wheel when…
You're arguing a point they didn't make.
The point they made is that most coders don't need to worry about algorithms on a daily basis, and that reflects poorly on them in interviews where they expect you to not-so-subtly fake your cleverness with "aha!" moments when you're being drilled on the fine details of complex algorithms that you maybe once needed to implement in the past 20 years. (On the rare occasion that these coders need to worry about algorithmic scaling, they will re-use an implementation from their fine standard library or adapt one from another source, without turning it into a brain exercise of reasoning about and building the whole algorithm from scratch on whiteboard while a bunch of strangers are sitting there judging and prompting you to explain your thought process as you go).
It's nothing to do with whether you have the fundamentals of basic algorithms down or whether you can select an appropriate algorithm for a real world problem.
Re: Ask HN: What is the point of algorithm-heavy interviews?
#26It evaluates someone's capacity to approach a complex task It's like in school, you learn many things, not necessarily useful in your daily life, but you learn to learn, and that's what they can see when they confront you with a challenge Of course, some people who heavily train for this have maybe an advantage, like in school exams.. Personally I never specifically trained for an interview, I just like algorithms, d…
The problem is that knowledge needed for exams is needed for exams only, and does not correlate with your overall expertise.
Re: Ask HN: What is the point of algorithm-heavy interviews?
#27A bad developer will not implement properly the separation between infrastructure code and business code.
A bad developer does not care about readability, so the code will be laden with functions that have side effects, and things of that nature.
A bad developer does not comment their code in a meaningful way.
None of these are easy to find out in an interview. It turns out that questions about algorithms are good proxies to find people who are interested and proficient in computer science.
Sure you will miss some good developers that aren't good at algorithms, but there is a better chance that you do not hire bad candidates.
Re: Ask HN: What is the point of algorithm-heavy interviews?
#28Re: Ask HN: What is the point of algorithm-heavy interviews?
#29It evaluates someone's capacity to approach a complex task It's like in school, you learn many things, not necessarily useful in your daily life, but you learn to learn, and that's what they can see when they confront you with a challenge Of course, some people who heavily train for this have maybe an advantage, like in school exams.. Personally I never specifically trained for an interview, I just like algorithms, d…