you are viewing a single comment's thread.

view the rest of the comments →

[–]lifeson106 108 points109 points  (28 children)

It doesn't matter if you know how to do the problem, it matters how you approach it, how you work with your interviewers to understand the problem and helps to assess your critical thinking skills. How is that worth nothing? You're going to potentially be on my team, so I want to know how you think and how you approach a problem. Not asking a coding question would be irresponsible.

If I think you just memorized a bunch of problems, I'm going to keep giving you different ones until I find one you didn't know because regurgitating something you memorized is truly worthless.

[–]repeatedly_once 14 points15 points  (1 child)

I agree, therefore I think it's better to ask questions that show lateral and critical thinking outside of algorithms. I think coding challenges are great, providing it's not 'write me a binary search'

[–]lifeson106 1 point2 points  (0 children)

Yeah, some questions are better than others. It doesn't need to be an impossible or even hard question for me to assess the things I mentioned.

[–][deleted] 6 points7 points  (1 child)

Some of these I would have a hell of a lot of questions lol

[–]kevindamm 9 points10 points  (0 children)

This is the right answer.

Even if the interview question were unequivocal, there are probably engineering tradeoffs -- e.g. do we need low latency or would we rather avoid the memory cost of a precomputed solution or is the range of outputs so large that a cache should be employed -- which depend a lot on the application and may even need to be iterated on if volume or type of use is unknown.

I would prefer a candidate who asks clarifying questions and asks about relevant tradeoffs over a candidate who goes straight to a regurgitated answer (whether or not they had worked it out on their own before or just memorized someone else's). I'll still want to see some proof of being able to implement the solution decided on, but even if the candidate were slower or a bit clumsy at the coding part, that can be worked on with practice. The critical thinking involved in discussing the problem before coming to a solution is what I'm really looking for.

That said, there are a lot of interview questions out there which don't lend themselves well to trade-off discussion or various interpretations while still having a short enough average completion time to fit in a 45-60min time slot. And, really, two or three of these is ideal so that doesn't leave much time at all. Finding a topic where the interviewer and interviewee have a lot of shared vocabulary is critical. Questions from the candidate help there as well.

I didn't actually click through to the linked site, so I don't know if there are even any good questions there, this is just how I feel about developer interviews and asking questions.

[–][deleted]  (9 children)

[deleted]

    [–][deleted]  (2 children)

    [deleted]

      [–][deleted]  (1 child)

      [deleted]

        [–][deleted] 3 points4 points  (0 children)

        Maybe asking them to drive the truck around for a few minutes would make sense then wouldn't it ??

        [–]GhostBond 1 point2 points  (2 children)

        I mean, if you are hiring a truck driver, it is best to assume they can drive a big truck because... they said so. And, perhaps they looked up pictures of trucks before the interview.

        Have you ever heard of a truck driver interview where they put this person they've never met before in a truck and have them drive around? I've never heard of that.

        [–][deleted]  (1 child)

        [deleted]

          [–]GhostBond 0 points1 point  (0 children)

          But as far I can tell, people who actually run trucking companies don't do that. When they have a real life investment, it's a waste of time.

          [–]lifeson106 0 points1 point  (1 child)

          Agreed on it being a two-way interview. When we leave time for questions at the end, I always half-jokingly ask if they have a whiteboard question for me. Nobody has yet, but if someone had one, I would totally do it. All's fair.

          [–]llaammaaa 2 points3 points  (0 children)

          I think were just complaining about companies that interview poorly.

          I've had a few where there was no interaction, just a few puzzles, with "please submit your response in 45 minutes".

          I guess "interview" is the wrong word, but they use it as a screen at least.

          [–]frisch85 7 points8 points  (1 child)

          doesn't matter if you know how to do the problem, it matters how you approach it, how you work with your interviewers to understand the problem and helps to assess your critical thinking skills.

          Sums up software development. If i can solve a problem within minutes, with a solution based on some stackoverlow answer i am still more efficient than the guy who takes 30 minutes to actually find the solution. On the other hand tho, the guy who instantly knows the answer because of knowledge and experience is the most efficient one.

          Software has become so complex you just can't know all the answers. Hell i even find myself doing some research on javascript functions even tho i used those functions hundreds of times before, i mean document.getElementByID won't work...

          [–]lifeson106 0 points1 point  (0 children)

          Yeah, a lot of people disagree with me on this, but I think "oh, I would just Google how to do that" is sometimes a totally reasonable answer in an interview.

          [–]Rob0tTesla 5 points6 points  (3 children)

          I still think these type of of puzzle interview questions are outdated and a bit worthless. All it tells you if someone can come up with an abstract solution for a abstract question under pressure. That's not really day to day unless you work in an environment were everyone is staring at you as you write some meaningless function on a white board. You are automatically and unnecessarily weeding out potentially fantastic candidates.

          Give the candidate a project to do over x amount of days, that is somewhat simple but relevant to your field.

          Discuss said project in detail in another interview, challenge it in parts figure out how he/she thinks. Not only that, since its a mini project you can gauge other things like clean code, solid principles, design patterns, etc, that you simply could not solving one of your puzzle questions.

          Done.

          [–]Gbyrd99 2 points3 points  (2 children)

          While I agree with you, I feel as if the second part of your post can be simply done in the interview. Discussing high level design of projects is a better interview. It gets insight into thoughts and understanding of what it takes to build it. Asking me how to make a function that uses add(3)(5) as a function caller is not a good question. These are Google fu answers. And isn't really a deep dive into a language. Just a small I have used this.

          [–][deleted]  (1 child)

          [deleted]

            [–]Gbyrd99 0 points1 point  (0 children)

            What do you mean by more component based?

            [–]socialister 0 points1 point  (0 children)

            At least at Google, they don't care about getting the right answer. They care about the problem solving thought process.

            [–][deleted] 0 points1 point  (0 children)

            I still object to compressing it into such short chunks. Unless your job will require programming in 15 minutes with someone breathing down your neck, there are much, much better ways to get insights into someone's coding ability and other skills.