I'd argue the premise that anyone can code. Yes anyone can type what they saw in a book or online, but not nearly as many can comprehend what they typed and understand what they are doing and the implications of it long term.
Second to that, technology interviews overall are STILL broken. I really don't give a shit if you know the Big O for a specific algorithm, I care if you know when you would use certain data structures/algorithms and not others. I care if you can work in a team and participate and have a passion to learn.
So I, long ago, dropped doing the whos smarter interviews and went to a method that let's me ask you real world scenarios and see how you think through them. Because in the end that's what we do daily. So I'll ask questions for real problems we have faced and solved and see how you would approach them to see how you think. I don't care if your answer is the same as what we did, I care that you can defend your answer and participate in healthy non-conflict debate because that's how we find the right answer. I also don't sit there and ask you to whiteboard an efficient for loop to reverse a string or take your pick on other stupid questions. That isn't to say I won't ask specific coding type questions, but I don't care about you solving some stupid problem on the spot. I do care if you know the content and can apply techniques to solve the problem, because if you have those two things, you can figure the rest out effectively.
Oh and I will never send you a problem and ask you to code something for me, even paid. That is the ultimate of lazy and disrespectful IMO. To me it is like saying, you are not worth my time, but if you can pass this test I MIGHT bother talking to you, but no guarantees.
An alternative I feel is respectful and fair is during an interview, I might present you with some code and ask you to do a code review on it. I am not asking you to do "work" for free but I am seeing how you will look and think through code, plus I will gain far more from being able to ask you questions and see how you think than sending you home with some problem where I have no insight to your thought process.
Second to that, technology interviews overall are STILL broken. I really don't give a shit if you know the Big O for a specific algorithm, I care if you know when you would use certain data structures/algorithms and not others. I care if you can work in a team and participate and have a passion to learn.
So I, long ago, dropped doing the whos smarter interviews and went to a method that let's me ask you real world scenarios and see how you think through them. Because in the end that's what we do daily. So I'll ask questions for real problems we have faced and solved and see how you would approach them to see how you think. I don't care if your answer is the same as what we did, I care that you can defend your answer and participate in healthy non-conflict debate because that's how we find the right answer. I also don't sit there and ask you to whiteboard an efficient for loop to reverse a string or take your pick on other stupid questions. That isn't to say I won't ask specific coding type questions, but I don't care about you solving some stupid problem on the spot. I do care if you know the content and can apply techniques to solve the problem, because if you have those two things, you can figure the rest out effectively.
Oh and I will never send you a problem and ask you to code something for me, even paid. That is the ultimate of lazy and disrespectful IMO. To me it is like saying, you are not worth my time, but if you can pass this test I MIGHT bother talking to you, but no guarantees.
An alternative I feel is respectful and fair is during an interview, I might present you with some code and ask you to do a code review on it. I am not asking you to do "work" for free but I am seeing how you will look and think through code, plus I will gain far more from being able to ask you questions and see how you think than sending you home with some problem where I have no insight to your thought process.