Seriously, been working as a software developer for 9 years now and never passed a single coding test.

The jobs I got were always the ones giving me weekend projects or just no coding test at all.

I have a job opportunity that looks exciting but they sent me this coding test link and I know I’m gonna fail for sure. Any tips aside from the obvious (practicing in advance on leetcode etc)?

  • tealeg@programming.dev
    link
    fedilink
    arrow-up
    98
    arrow-down
    15
    ·
    6 months ago

    What I’m about to say might come off as smug. I don’t mean it to be a flex, it’s just for context.

    I’ve been programming since i was 6 years old, and have 26 years of continuous professional experience. 30 years of open source contributions. You are almost definitely interacting with code I wrote on a daily basis.

    7 years ago I was caught up in a round of layoffs and I was scouting around for jobs. I got an interview at a startup - it wasn’t a huge tech challenge, but I needed a job.

    I did an initial technical interview with the tech lead for the company. All went great. I did a “final HR interview” , again great. Then the CTO stepped in and said that he would need me to complete a coding test before I could be hired.

    I failed that live coding test despite producing code that outperformed the code in the “correct” solution by several orders of magnitude.

    The CTO was clearly upset by my solution, which he got very angry about and insisted was wrong, without explanation, and despite it beating the spec and passing all the predefined tests.

    2 days later the tech lead, who was also present in the test, told me there was nothing wrong with my code. Better still they had actually taken it and put in into production in place of the code that CTO had written, and which was the basis of the “correct” solution.

    He also told me that he’d quit after an argument with the CTO about this and asked if I found a good place to work, if I’d let him know.

    Sometimes tests are not about what you can do, but how smart they make the person testing you look.

    • Exec@pawb.social
      link
      fedilink
      arrow-up
      52
      arrow-down
      2
      ·
      6 months ago

      Better still they had actually taken it and put in into production in place of the code that CTO had written, and which was the basis of the “correct” solution.

      The test was just a set-up for free work.

      • huginn@feddit.it
        link
        fedilink
        arrow-up
        27
        ·
        6 months ago

        No, not if they already had a “correct” solution.

        It’s normal to know the answer you’re looking for before you ask the question, and they thought they did in this case.

        • wewbull@feddit.uk
          link
          fedilink
          English
          arrow-up
          10
          ·
          6 months ago

          Yes. The problem was the interviewer wasn’t prepared for a different correct answer.

      • tealeg@programming.dev
        link
        fedilink
        arrow-up
        2
        ·
        6 months ago

        I hear that accusation a lot, but I’ve never really seen a company do that. Having been in the other side of the equation many times, the effort required to review code that’s submitted, especially when you don’t know the author is probably not worth it.

        The case I detailed above was a fairly isolated subsystem that didn’t really require any knowledge of their system to work on. They probably chose it because A. It was a readily available problem with an existing solution that you could reasonably expect to be solved within a couple of hours , and B. the CTO thought he had a cool solution.

      • tomatol@lemmy.worldOP
        link
        fedilink
        arrow-up
        18
        arrow-down
        3
        ·
        6 months ago

        Yeah idk why that comment is being upvoted so hard… It sounds very weird like a copy pasta or a bot. He didn’t even answer anything 😅

          • tealeg@programming.dev
            link
            fedilink
            arrow-up
            1
            ·
            6 months ago

            Really, it isn’t meant to be. I’m Just trying to say it’s not always the candidate at fault.

            This is one example from a great many interviews I’ve had in my time, most of which went much better.

    • wildbus8979@sh.itjust.works
      link
      fedilink
      arrow-up
      24
      ·
      6 months ago

      I’ve been coding since I was around 12. I’ve been doing it for around three decades now…

      On the opposite side of the spectrum, I work for a company that has a pretty strick no assholes policy. We’ve passed on a number of “rock stars” because we knew how personally toxic they were to a team. I do some of the culture fit (which we do first) and tech interviews.

      We don’t care all that much if you get it right or wrong. I mean if it’s all wrong and the candidate has no clue why sure. But sometimes candidates get stressed out being on display, being pressed for time, trying to come up with the most optimized answer instead of just completing. If it’s all wrong and the candidate can tell me exactly why and what they’d need to do to get it right, that’s mostly a pass for us.

      Ultimately wanna see a) how you think, what is your thought process and b) that you can grow.

      • thesystemisdown@lemmy.world
        link
        fedilink
        English
        arrow-up
        16
        ·
        6 months ago

        I’m trying to wrap my head around the CTO writing code unless it was from long ago when they were a developer. If that is the case, the CTO should understand that a better or more performant solution is likely over time. I’d say that was a bullet dodged. That’s very poor executive behavior.

        • wildbus8979@sh.itjust.works
          link
          fedilink
          arrow-up
          9
          ·
          edit-2
          6 months ago

          People have big egos. I’ve been in similiar situations as OP where the owner/CTO wrote a lot of the legacy code and weren’t particularly receptive to criticism. No acknowledgement either when said criticism turned out to be a client facing vulnerability later on.

          • tealeg@programming.dev
            link
            fedilink
            arrow-up
            2
            ·
            6 months ago

            Yeah. Owning code is about taking responsibility for it being in a satisfactory state, it shouldn’t be overly personal and you also shouldn’t attack people directly when the code has problems. Everyone makes mistakes, learning from them is there important thing.

        • tealeg@programming.dev
          link
          fedilink
          arrow-up
          3
          ·
          6 months ago

          It was a really small startup where the CTO was one of the founders and had written the first version of everything. I don’t mean to belittle what he did, I have a lot of respect for people building thins from the ground up.

          It was just a very odd episode and illustrative that you don’t always fail because you’re bad at coding.