<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>simondelliott &#187; development</title>
	<atom:link href="http://www.simondelliott.com/blog/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.simondelliott.com/blog</link>
	<description>media architect</description>
	<lastBuildDate>Wed, 08 Sep 2010 21:25:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Developer test &#8211; How to interview a developer &#8211; Part 1</title>
		<link>http://www.simondelliott.com/blog/2009/04/developer-test-how-to-interview-a-developer-part-1/</link>
		<comments>http://www.simondelliott.com/blog/2009/04/developer-test-how-to-interview-a-developer-part-1/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 09:46:56 +0000</pubDate>
		<dc:creator>simon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[management]]></category>

		<guid isPermaLink="false">http://www.simondelliott.com/blog/?p=341</guid>
		<description><![CDATA[Have you interviewed any developers for your team? If you have you will know how incredibly difficult it is to find good people and how insanely difficult it is to find great people.  I used to use the traditional method, of asking a few questions about their experiences and asked them to describe how they [...]]]></description>
			<content:encoded><![CDATA[<p>Have you interviewed any developers for your team?</p>
<p>If you have you will know how incredibly difficult it is to find good people and how insanely difficult it is to find great people.  I used to use the traditional method, of asking a few questions about their experiences and asked them to describe how they would break down a complex problem etc &#8230; however I found that this method did not always get the people I wanted.</p>
<p>Whilst working with the liberate platform I used the <em>&#8220;Show your name on the screen test&#8221;</em>. This worked really well I was amazed at how manny people could not do this<br />
<code><br />
&lt;<span style="color: #3366ff;">table</span>&gt;&lt;<span style="color: #3366ff;">tr</span>&gt;&lt;<span style="color: #3366ff;">td</span>&gt;&amp;nbsp;&lt;/<span style="color: #3366ff;">td</span>&gt;&lt;/<span style="color: #3366ff;">tr</span>&gt;&lt;/<span style="color: #3366ff;">table</span>&gt;<br />
document.tables.cells(0,0).write("Simon Elliott");<br />
</code><br />
When I came to test <a href="http://en.wikipedia.org/wiki/OpenTV">OpenTV</a> A good friend of mine developed a very very simple technical test. The candidate had to look at a single 10 fine function and spot the bugs &#8230; easy. There were only three, a syntax bug, adding a value instead of a pointer when looping and an incorrect centinal on a loop.</p>
<p>With a rudimentary understabnding of the language anyone could get the answer.</p>
<p>However while these tests were great at finding bad developers,<br />
they were not so good at finding great developers.</p>
<p>My new tests are, better they test language fundamentals, ability to communicate, how to problem solve the works &#8230;<br />
<span style="width: 500px;"><br />
<em>&#8220;Imagine that you have made a <span class="hl">Clock</span> class, and you are writing the functions to draw the big hand and the little hand.  You already have member functions to draw the <span class="hl">clock</span> face, and to draw the hands all you need to do is write 2 functions</em><br />
<code><br />
get_big_hand_rotation ( hours, mins)<br />
</code><br />
<em>and</em><br />
<code><br />
get_little_hand_rotation ( hours, mins)<br />
</code><br />
<em>What would the code for these functions be?</em></span><em>&#8220;</em></p>
<p>This test is great, the candidate gets to think his way out of a problem, the things to look for are</p>
<ul>
<li>Is the candidate professional in approach, i.e. do they qualify the question with you, do they take care to understand what you want from them.</li>
<li>Is the code that they make good?</li>
<li>How quickly do they do the test?</li>
<li>Are they good communicators?</li>
<li>Does the candidate teach you something?</li>
</ul>
<p>Here is a some code that does this &#8230; but the important thing is <strong>how</strong> the candidate answers the question.<br />
<code><br />
<span style="color: #3366ff;">class </span>Clock {<br />
<span style="color: #3366ff;">public static void </span>main(String argc[]){<br />
System.out.println("Welcome to Clock");</code></p>
<p>int hour = new Integer(argc[0]);<br />
int minet = new Integer(argc[1]);</p>
<p>System.out.println(&#8221;    big hand rotation = &#8221; + get_big_hand_rotation( hour, minet ));<br />
System.out.println(&#8221;    little hand rotation = &#8221; + get_little_hand_rotation( hour, minet ));<br />
}<br />
<span style="color: #3366ff;">private static float </span>get_big_hand_rotation( int hour, int minet ){<br />
<span style="color: #3366ff;"> return </span>minet * 6;<br />
}<br />
<span style="color: #3366ff;"> private static int</span> get_little_hand_rotation( int hour, int minet ){<br />
<span style="color: #3366ff;">return </span>((hour * 60) + minet)  / 2;<br />
}<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.simondelliott.com/blog/2009/04/developer-test-how-to-interview-a-developer-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
