Interview advice for the other side of the table.



  • So I've been asked to help out with interviews, and I remember most of the stuff I was asked, and I frequently reread Tales from the Interview on here to get a laugh and to avoid some pitfalls. However, I still don't know what makes for a good interview question, especially for someone that's supposed to be an SDE3. I can easily do the 1 questions, but something that can really show that a person is a good 3 kind of eludes me.

    So what would you guys call a good interview question?


  • Trolleybus Mechanic

    What is a SDE3? The answer I'm looking for is not "Software Development Engineer 3". Is it mid level, senior level? Something to be careful of as it seems different companies use drastically different titles for software devs.

    For instance, at my first job, Senior Software Engineer was a senior title. At my current job it's more in the middle.

    Also using numbers doesn't really help since some places have only a few tiers (so 3 could be the top). I have a friend who was a SDE6 at one job, so a 3 would be mid level.



  • What I like to do is present the candidate with a simple DB schema for a store or something, ask them to write a couple queries against it (usually involving a GROUP BY to weed out n00bs) and then ask them what they would change about it, if anything. Good candidates will respond with flaws in the schema as well as potential features.



  • @mikehurley It's more of a senior role. I guess I should have elaborated that in my post.



  • @thebread Not that you can find anything in NodeBB, but didn't we just have a thread about this?

    Anyway, I prefer questions that look for what I consider most important to a software developer: the ability to spot edge-cases and spot bugs before they occur.

    I usually use a question like this:

    Write a method to perform multiplication of two numbers without using the programming language's multiplication operator

    Candidates can score points by:

    1. Criticizing the use of "numbers" before doing any code (do you mean integers or floating point or fixed point or...?) (Interview says only worry about integers.)
    2. Correctly writing the basic case, ignoring a negative parameter
    3. Correctly pointing out that the basic case will break with a negative number
    4. Correctly fixing that breakage
    5. Then correctly fixing the case where both numbers are negative
    6. Then correctly pointing out that this code can overflow
    7. Then correctly dealing with the overflow in some rational way (turning on "checked" in C#; doing that little trick to detect an overflow before you do the addition, etc.)

  • 🚽 Regular

    @blakeyrat said in Interview advice for the other side of the table.:

    @thebread Not that you can find anything in NodeBB, but didn't we just have a thread about this?

    This thread from 10 months ago

    It has some insightful discussion on the matter. I'll repeat what I said there: Be mindful of both technical skill and good team fit. If someone is good at coding but is a belligerent asshole who makes everyone else around him/her miserable, you might as well hire a dunce who can't fizzbuzz.



  • @the_quiet_one Dammit, we did have one ten months ago, and I made it. Can I just claim I couldn't find it/ didn't want to raise a topic from the dead?

    Anyway, I definitely know to avoid candidates that constantly complain about their previous job, calls their previous boss idiots, and that sort of thing.


  • 🚽 Regular

    @thebread said in Interview advice for the other side of the table.:

    @the_quiet_one Dammit, we did have one ten months ago, and I made it.

    Ha! I didn't catch that.

    Can I just claim I couldn't find it/ didn't want to raise a topic from the dead?

    Well, as people have said many times, new topics are free.

    Anyway, I definitely know to avoid candidates that constantly complain about their previous job, calls their previous boss idiots, and that sort of thing.

    It's not always that obvious, though. Many candidates are savvy enough not to make it known they are an asshole voluntarily. They know to put their best face out there. You have to find ways to catch them in the act without asking overt and obvious questions on the matter.

    One tactic I read about a while back which, admittedly, requires an interview style that's not likely feasible in most environments, was with Southwest Airlines, where they do a group interview, and candidates are asked to share their most embarrassing mistake they made in their jobs with their group of fellow candidates. The point of the question was not focused on the candidate delivering the story, but was on the reactions shown in the gestures and facial expressions from the candidate's listeners. Some candidates might blurt out something like, "Ugh, how could you do something so stupid?" or "You shouldn't be in this job if you're that clumsy" which raises a red flag if they're showing serious disapproval.

    Again, if you're doing one-on-one interviews, that's not really something you can do, but it's an example of how one can catch someone being an ass without making it obvious you're catching them in the act.



  • @the_quiet_one There was a different/better thread than that one, I swear.


  • Considered Harmful

    @the_quiet_one It's surprising that apathy in the face of a serious error is a sought after quality. Are they counting concern or alarm as disgust or contempt? This seems like an effective method of assuring mediocrity, unless applied carefully.

    The defense, though, seems to be to not listen when other people are talking, which you can pretty much assume, so I suppose a fear for the economy is premature.


  • Discourse touched me in a no-no place

    @gribnit said in Interview advice for the other side of the table.:

    It's surprising that apathy in the face of a serious error is a sought after quality.

    No, what you'd be looking for (in a negative sense) is someone who feels it necessary to do other people down. If they're showing empathy with the person who has made the mistake, that's a good sign, but if they're treating it as an opportunity to make themselves look good at someone else's expense, they're going to be fundamentally toxic in a senior role. If you can't tell these apart, you shouldn't be interviewing as one of the most important things is avoiding people who are toxic towards the rest of the team.


Log in to reply