• sugar_in_your_tea@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    8
    ·
    24 hours ago

    Not OP, but here’s my 2c as someone also part of the interview process.

    I had an interviewe where the candidate asked if they could use AI, and I told them to use whatever they normally use in development. I’ll skip the details, but basically the AI generated wrong code, which they missed, and they corrected when we pointed it out. That happens. But then we had them refactor and the AI made the same mistake and they missed it again, which we pointed out, and they fixed. But that wasn’t the nail in the coffin. We then asked them how confident they were about the code (we saw other errors that we didn’t mention), and they said 100%. They didn’t get the job.

    I don’t care what tools you use, I mostly care how you approach problems and whether you overstate your abilities. We’re in the business of producing working code on time, so we need devs who can at least notice when they need more time to check things. We were hoping they’d say they needed to write some tests to get a code review, not just ship it.

    Our coding projects are designed such that a competent dev can complete them quickly (5-10 min for first round “weeder” task, 20-30 min for second round “engineering” task), and we allow double the time expected to cover for nerves. In fact, we might hire you even if you fail spectacularly, provided you can explain your approach (i.e. it’s just nerves).

    • rebelsimile@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      edit-2
      4 hours ago

      Thanks for this.

      I mentor lots of people and i met with someone last week for the first time, and as we were chatting he mentioned several times things like “So I just asked the AI what to do, and then did that exact thing”…. Uh, so… I don’t use AI that way.

      I started using it basically as soon as it came out and I started like everyone else, writing out all these requirements into the system, marveling at how it just spit back out a whole program, and then obviously ran into all the pitfalls that that entails.

      So, these days, my AI use is limited to what I’d say is syntax conversion/lookup (like “What’s the syntax for instantiating and adding to a set in python?”) and anything I’d immediately verify.

      I should also say I’m aware of leetcode/things like that. I play around a lot on Codewarriors and see how others put together solutions and learn a lot from that. I really enjoy the silly grindy aspects of coding like figuring out how to extract all the content from a json object that should be a string but can’t be a string for <reasons>, and building larger/complex systems like game engines (engines to make my games work, not the underlying engine). Components/react and that style of development makes a lot of intuitive sense to me as well.

      Anyway I say all that to say I’d be sort of embarrassed to use AI during an interview like I’d be embarrassed to need to google anything, but it would be primarily about syntax and I’d be as likely to distrust anything the AI was saying as to use it unless it aligned with what I’d expect the code to look like.

      Do you mind if I ask what a “weeder” task might be vs. a more involved one? As someone who hasn’t worked on a dev team before, I only vaguely know what you mean by “We were hoping to say they needed to write some tests to get a code review”.