We’re a very small team with little experience in hiring but got approval for a new engineer. Basically HR will look for people through the usual channels and I think we have a reasonably good job description. Unfortunately the coding challenge (a 30h+ take home) is atrociously difficult and doesn’t really reflect what we do. On the other hand I think the false positive rate would be low. FWIW it’s a Linux application and it might be difficult to only count on experience from the CV.

Any ideas how to build a good challenge from scratch and what time constraints are reasonable?

  • nibblebit@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    1 year ago

    So what we do is, between the first and second interview we have new candidates recreate Twitter over the span of a week. We stress that they can put in as much time into it as you want. By no means does the site need to be functional at all by the second interview. If they spend 30 minutes thinking about it and are able to have a decent conversation, great! 30h assignment is a bit much and a programmer with that kind of time, is a bit of a red flag actually.

    The point of the assignment, for me, is not to have some barrier of entry for a candidate. Instead, I use the assignment to:

    1. Have something to talk about
    2. See how good they are at structurally dissecting the problem
    • Do they get bogged down in details
    • In what order do they attack the problem
    1. Are able to effectively communicate some basic concepts around web-development
    • Request sequences
    • Authentication
    • Database Schemas
    1. Asses their personality
    • Do they want to try some new tech
    • Do they polish
    1. How broad are their technical interests
    • Do they do tests, did they host the project, did they do something interesting with UI
    1. How deep does their knowledge go
    • did they use the right tools, do they have experience
    1. Have room for some hypotheticals
    • How would you do it in a team
    • what would you do with a month of time

    When you look at it like that, the project doesn’t really need to be that complicated. A candidate may be able to fake a challenge, but they can’t fake an interview.