Ask HN: Code tests from potential employers
After applying for a position, it is not uncommon for a potential employer to sent some kind of assignment or code test they want completed before moving forward in the hiring process. I usually don't mind this sort of thing, so long as the assignment is reasonable.
My question for the community is, "What do you consider reasonable?"
How many hours are you willing to put into one of these projects?
I am asking because earlier this week I received a code test from a company I had applied for and was kind of intimidated by the amount of work involved. I'm guessing that it would take me around 10 hours of work to complete, and am not sure how to feel about this... Either I am unqualified for the position, or they are asking too much of their applicants.
10 comments
[ 3.2 ms ] story [ 34.9 ms ] threadwhat i have a problem with is companies that want you to do the coding test before they've even talked to you. i may rule them out as a potential employer as part of that process, in which case it would be a waste of time.
10 hours is outright. That company is unlikely to value your time when you work for them.
Calibrating tests like this is pretty difficult though, anecdotally. We give out a work sample test that we think should take 2-3 hours maximum and try to frame it that way in the problem description. Nonetheless, we have gotten a few in the past where it was clear that way more time was spent, and I feel bad when they don't make the cut.
Tip - if you are giving out tests like this, ask for feedback from hires on how long they spent and then adjust accordingly. Anything you give out is probably way easier for you than the candidate.
The longest off-site coding test I've ever been involved with took 1.5 hours, split into two parts of 45 minutes. If they can't gauge your chops in an hour and a half of technical questions and real-time problem solving, they're not doing it right.
So here's the question: is the code being asked to be production-ready, or otherwise real-world useful?
Because one possible thing that's happening is that they're mechanical-turking their codebase by doling out assignments to hopeful applicants.
I've been asked to write constraint solvers for hexagonal Graeco-Latin squares which I did complete. It took me days, I got an optimal solution and was the only candidate able to do so. Still didn't get the job.
My current strategy is to only agree to solve puzzles if the recruiter can tell me how many of my potential coworkers solved what puzzles when they were hired. If it turns out most of them solved very challenging ai or dynamic programming problems, then I could jump through almost any hoops to get the job. Because working with people smarter then you is just invaluable.
If they aren't able to divulge such information, or most of the employees didn't solve any puzzles at all, I would be weary.
I personally believe in show and don't tell. So if I am interviewing with someone or vice versa I would rather appreciate that I get to see some code that an individual has written or have someone assess me on that rather than how I well I can articulate myself or conjure up jargons and buzz words.
I am comfortable taking on large problems as long as there is flexibility in time. I spend about 15 hours over three days solving a problem that intrigued me when I interviewed 5 years back. I learned a lot about company, programming and myself int those three days.
Years later as I am trying to make that experience smoother for others, I have done a 5 series blog on what we look into coding solutions. Hopefully, that solidified them a little bit and doesn't make them look like "vague" and "just a whim and fancy" coding round.
Find my detailed take on coding problems given out by Thoughtworks recruiting here.
http://priyaaank.tumblr.com/post/95095165285/decoding-though...