<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Code Critique as an Interview Tool</title>
	<atom:link href="http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/feed/" rel="self" type="application/rss+xml" />
	<link>http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/</link>
	<description>The blog of Adam Hupp</description>
	<pubDate>Sat, 06 Sep 2008 02:29:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
		<item>
		<title>By: &#187; links for 2007-07-18 &#124; Paul Cowles</title>
		<link>http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-49</link>
		<dc:creator>&#187; links for 2007-07-18 &#124; Paul Cowles</dc:creator>
		<pubDate>Tue, 28 Aug 2007 21:59:22 +0000</pubDate>
		<guid isPermaLink="false">http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-49</guid>
		<description>&lt;p&gt;[...] rococo - then rubble » Blog Archive » Code Critique as an Interview Tool i like this approach over asking someone to write a simplistic application from scratch (tags: programming interview) [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] rococo - then rubble » Blog Archive » Code Critique as an Interview Tool i like this approach over asking someone to write a simplistic application from scratch (tags: programming interview) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: wolfdancer</title>
		<link>http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-28</link>
		<dc:creator>wolfdancer</dc:creator>
		<pubDate>Mon, 30 Jul 2007 18:37:34 +0000</pubDate>
		<guid isPermaLink="false">http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-28</guid>
		<description>&lt;p&gt;What I did before, which I hope to install at my current workplace, is to do what you have described (not as many items to check off though, not that it is  not a good idea), then give the candidate a new requirement for the existing code to implement.  I will pair with him (we required TDD and pairing) and look at his coding behavior.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>What I did before, which I hope to install at my current workplace, is to do what you have described (not as many items to check off though, not that it is  not a good idea), then give the candidate a new requirement for the existing code to implement.  I will pair with him (we required TDD and pairing) and look at his coding behavior.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt Cox</title>
		<link>http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-26</link>
		<dc:creator>Matt Cox</dc:creator>
		<pubDate>Mon, 30 Jul 2007 12:31:24 +0000</pubDate>
		<guid isPermaLink="false">http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-26</guid>
		<description>&lt;p&gt;When I interviewed for my current job my boss gave me a question like this. He gave the source to some home brewed string replace function. The function was omitted and the code was atrocious. All he was looking for was if the candidate could read the code and discern what the function should be named.&lt;/p&gt;

&lt;p&gt;Ever since that I've used that same method on candidates but I would often ask them to critique the code as well. Works great as it is, but it really shines when you ask them to take you through the code and explain what's happening. This is where you really get to see how they think and communicate.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>When I interviewed for my current job my boss gave me a question like this. He gave the source to some home brewed string replace function. The function was omitted and the code was atrocious. All he was looking for was if the candidate could read the code and discern what the function should be named.</p>
<p>Ever since that I&#8217;ve used that same method on candidates but I would often ask them to critique the code as well. Works great as it is, but it really shines when you ask them to take you through the code and explain what&#8217;s happening. This is where you really get to see how they think and communicate.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jvvw</title>
		<link>http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-12</link>
		<dc:creator>jvvw</dc:creator>
		<pubDate>Thu, 19 Jul 2007 22:18:55 +0000</pubDate>
		<guid isPermaLink="false">http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-12</guid>
		<description>&lt;p&gt;I've used code reviews as an interview tool and I'm a fan of them. They definitely give you a lot of information relative to the amount of time that they take compared to other technical tasks/questions I've tried. Deliberately doctoring some of your code is quite fun too. I did once have one good candidate ask very worried if it was real code from our codebase though!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;ve used code reviews as an interview tool and I&#8217;m a fan of them. They definitely give you a lot of information relative to the amount of time that they take compared to other technical tasks/questions I&#8217;ve tried. Deliberately doctoring some of your code is quite fun too. I did once have one good candidate ask very worried if it was real code from our codebase though!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: greg_____macquarie</title>
		<link>http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-8</link>
		<dc:creator>greg_____macquarie</dc:creator>
		<pubDate>Mon, 16 Jul 2007 07:57:55 +0000</pubDate>
		<guid isPermaLink="false">http://hupp.org/adam/weblog/2007/04/15/code-critique-as-an-interview-tool/#comment-8</guid>
		<description>&lt;p&gt;We currently use this technique to screen all our development hires. This has been an invaluable tool in sorting out the guy rating himself 9/10, but just read the J2SE 1.5 certification book, and the guy who rates himself 7/10 but has indepth knowledge of production quality code.&lt;/p&gt;

&lt;p&gt;Our test has about 30 issues on it. Its reasonably difficult, so if someone gets 8-10 of them; we're happy. For a senior developer or architect; they should be getting between 10 and 20 issues. If I learn something from them doing the review; they're definitely hired!&lt;/p&gt;

&lt;p&gt;We've found code reviews don't work on grad's. They don't have the real world experience to see code in that light.&lt;/p&gt;

&lt;p&gt;If you're new to this, start by taking some code that you've found in your codebase that you're not happy with. It has to be genuinely a diversion from best practice (not a personal style difference). Find a couple of those, refine them to make them generic/abstract/non-proprietary, and make a couple up. We found http://www.javapractices.com/index.cjp to be a good source of potential inclusions (or a good place to cross-check).&lt;/p&gt;

&lt;p&gt;Best of luck in your hiring!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>We currently use this technique to screen all our development hires. This has been an invaluable tool in sorting out the guy rating himself 9/10, but just read the J2SE 1.5 certification book, and the guy who rates himself 7/10 but has indepth knowledge of production quality code.</p>
<p>Our test has about 30 issues on it. Its reasonably difficult, so if someone gets 8-10 of them; we&#8217;re happy. For a senior developer or architect; they should be getting between 10 and 20 issues. If I learn something from them doing the review; they&#8217;re definitely hired!</p>
<p>We&#8217;ve found code reviews don&#8217;t work on grad&#8217;s. They don&#8217;t have the real world experience to see code in that light.</p>
<p>If you&#8217;re new to this, start by taking some code that you&#8217;ve found in your codebase that you&#8217;re not happy with. It has to be genuinely a diversion from best practice (not a personal style difference). Find a couple of those, refine them to make them generic/abstract/non-proprietary, and make a couple up. We found <a href="http://www.javapractices.com/index.cjp" rel="nofollow">http://www.javapractices.com/index.cjp</a> to be a good source of potential inclusions (or a good place to cross-check).</p>
<p>Best of luck in your hiring!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
