<story><title>Ask HN: What should an ideal developer interview process look like?</title><text>We have always complained about the developer interview process being broken. According to you, what does an ideal process look like?</text></story><parent_chain><item><author>weliketocode</author><text>Many people here will disagree with what I&amp;#x27;m about to say, but
if you&amp;#x27;re going to give a coding challenge...&lt;p&gt;I &lt;i&gt;like&lt;/i&gt; hackerrank&amp;#x2F;codility style coding challenges.&lt;p&gt;&lt;i&gt;gasp&lt;/i&gt;&lt;p&gt;They&amp;#x27;re timed. They&amp;#x27;re run against a standardized test suite. And they have support for many languages.&lt;p&gt;It&amp;#x27;s really unfortunate the number of companies that give custom take home coding challenges that run the gamut. The problems with which are manifold:&lt;p&gt;- Inconsistent technology and language choices by candidates&lt;p&gt;- Time spent varies wildly and is easily underestimated by companies - and 4-5 hours for an unpaid coding challenge in an early round with a company is a significant investment&lt;p&gt;- Good candidates will de-prioritize your company against others that move faster&lt;p&gt;I know that I only answered a small subset of the question, but it&amp;#x27;s very difficult to lump all developers together and come up with a single, wholistic, and ideal interview process. From the nature of the role (IC&amp;#x2F;Lead&amp;#x2F;Manager) to the technologies&amp;#x2F;specialty to the company&amp;#x27;s mission, the process will need to be customized to some degree.&lt;p&gt;However, do not think that your custom coding challenge will somehow be the perfect key to assessing developers.</text></item></parent_chain><comment><author>azangru</author><text>When we were looking for a developer for our team, we created a set of small coding challenges testing the candidate&amp;#x27;s knowledge of the most relevant aspects of the language. We wrote automated tests for these challenges, and the main bulk of our interview was having the candidate solve them.&lt;p&gt;The advantages to that approach, as I see it, are:&lt;p&gt;- the developer is tested for knowledge that is most relevant for their current job (as opposed to writing general-purpose algorithms)&lt;p&gt;- the developer is showing their familiarity with a testing environment&lt;p&gt;- writing working code in a code editor seems to me more practical than writing (pseudo)code on paper or on a whiteboard&lt;p&gt;There are, of course, disadvantages to this approach as well. The developer may have hard time working on an unfamiliar machine and not in their favorite code editor (though what we had was quite standard). This might be a tad stressful (although I don&amp;#x27;t know how this compares with solving a general coding problem on a whiteboard, or with a task asking you to think not just of a way to solve a problem, but of a performant way too). And it made us focus on the candidate&amp;#x27;s coding skills too much (which some hiring managers might find objectionable).</text></comment>
<story><title>Ask HN: What should an ideal developer interview process look like?</title><text>We have always complained about the developer interview process being broken. According to you, what does an ideal process look like?</text></story><parent_chain><item><author>weliketocode</author><text>Many people here will disagree with what I&amp;#x27;m about to say, but
if you&amp;#x27;re going to give a coding challenge...&lt;p&gt;I &lt;i&gt;like&lt;/i&gt; hackerrank&amp;#x2F;codility style coding challenges.&lt;p&gt;&lt;i&gt;gasp&lt;/i&gt;&lt;p&gt;They&amp;#x27;re timed. They&amp;#x27;re run against a standardized test suite. And they have support for many languages.&lt;p&gt;It&amp;#x27;s really unfortunate the number of companies that give custom take home coding challenges that run the gamut. The problems with which are manifold:&lt;p&gt;- Inconsistent technology and language choices by candidates&lt;p&gt;- Time spent varies wildly and is easily underestimated by companies - and 4-5 hours for an unpaid coding challenge in an early round with a company is a significant investment&lt;p&gt;- Good candidates will de-prioritize your company against others that move faster&lt;p&gt;I know that I only answered a small subset of the question, but it&amp;#x27;s very difficult to lump all developers together and come up with a single, wholistic, and ideal interview process. From the nature of the role (IC&amp;#x2F;Lead&amp;#x2F;Manager) to the technologies&amp;#x2F;specialty to the company&amp;#x27;s mission, the process will need to be customized to some degree.&lt;p&gt;However, do not think that your custom coding challenge will somehow be the perfect key to assessing developers.</text></item></parent_chain><comment><author>mcv</author><text>I recently did some codility tests, and they were totally fine.&lt;p&gt;I&amp;#x27;m also fine with take-home challenges, though. But you&amp;#x27;re absolutely right that they&amp;#x27;re often vastly underestimated, and you shouldn&amp;#x27;t give someone a take-home assignment when there&amp;#x27;s only a small change they&amp;#x27;ll get hired. It should only be done once you&amp;#x27;re sure you want to hire this candidate &lt;i&gt;if they&amp;#x27;re as good as they seem to be&lt;/i&gt;. A take-home assignment is too big to sift the chaff from the wheat in a large group of candidates. But once you&amp;#x27;re sure you&amp;#x27;ll hire them if they do well on it, a take-home test is totally fine.&lt;p&gt;Though such a take-home programming assignment should also involve presenting the result to a group of developers to explain their choices. If you&amp;#x27;re not willing to commit to that, you can&amp;#x27;t expect them to commit to putting in the time to do the assignment.</text></comment>