<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Senior Developer Assessment Revisited</title>
	<atom:link href="http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/feed/" rel="self" type="application/rss+xml" />
	<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/</link>
	<description>Eric Smith's technical musings</description>
	<lastBuildDate>Tue, 07 Feb 2012 08:26:41 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Eric Smith</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-169</link>
		<dc:creator><![CDATA[Eric Smith]]></dc:creator>
		<pubDate>Mon, 02 Jan 2012 05:36:56 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-169</guid>
		<description><![CDATA[Yep, you&#039;re right.  But then again, a senior dev would know that there are far bigger brains that have spent far more time optimising things like sort, and that it&#039;s a highly solved problem--so why are we implementing it again?]]></description>
		<content:encoded><![CDATA[<p>Yep, you&#8217;re right.  But then again, a senior dev would know that there are far bigger brains that have spent far more time optimising things like sort, and that it&#8217;s a highly solved problem&#8211;so why are we implementing it again?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Annie Nonymous</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-168</link>
		<dc:creator><![CDATA[Annie Nonymous]]></dc:creator>
		<pubDate>Mon, 02 Jan 2012 03:22:49 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-168</guid>
		<description><![CDATA[And &#039;solutions&#039; like this is why hardware requirements for seemingly simple software balloon when they shouldn&#039;t need to. A senior developer would understand that sorting is something that gets used heavily in an application and isn&#039;t something that should&#039;ve been subject to such a sloppy implementation.

Just sayin&#039;...]]></description>
		<content:encoded><![CDATA[<p>And &#8216;solutions&#8217; like this is why hardware requirements for seemingly simple software balloon when they shouldn&#8217;t need to. A senior developer would understand that sorting is something that gets used heavily in an application and isn&#8217;t something that should&#8217;ve been subject to such a sloppy implementation.</p>
<p>Just sayin&#8217;&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Who can program? &#124; Alex&#039;s Blog</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-166</link>
		<dc:creator><![CDATA[Who can program? &#124; Alex&#039;s Blog]]></dc:creator>
		<pubDate>Fri, 19 Aug 2011 16:54:15 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-166</guid>
		<description><![CDATA[[...] process to clear out goats and sheep. I have a lot of sympathy for people like Eric Smith who are rolling their own tests to attempt to judge skill. I have to say, though: it really shouldn&#8217;t be this hard.   This [...]]]></description>
		<content:encoded><![CDATA[<p>[...] process to clear out goats and sheep. I have a lot of sympathy for people like Eric Smith who are rolling their own tests to attempt to judge skill. I have to say, though: it really shouldn&#8217;t be this hard.   This [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tim</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-145</link>
		<dc:creator><![CDATA[Tim]]></dc:creator>
		<pubDate>Fri, 02 Jul 2010 17:25:53 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-145</guid>
		<description><![CDATA[Funny, I was thinking the same thing about the solver problem.  I have a degree in Math, straight out of university I could have coded the solution to that no problem.  Now I would really have to think about it and go through the links provided.

The problem with these tests is that it&#039;s treating the process backwards.  If you want someone who is really good at what they do, no matter what discipline you&#039;re hiring, they have to choose to work for you.  You want it to be as easy as possible for them to find you and get through the interview process while still filtering out the people you don&#039;t want.  Good people do not need a job, they already have one.  The more hoops you make them jump through the less likely they&#039;ll bother to keep going.  This is why tests like &#039;reverse a string&#039; or fizzbuzz are great.  They&#039;re easy to understand, fast to implement, and shouldn&#039;t require any outside resources if you allow the interviewee to use whatever language they want.  Then you give them a complex problem and have them work through some general design and implementation ideas without talking about code to make sure they can manage some high-level design.  Between these 2 types of tests you should be able to filter out the non-programmers while not putting up too many roadblocks to deter someone who needs to choose to work for you.]]></description>
		<content:encoded><![CDATA[<p>Funny, I was thinking the same thing about the solver problem.  I have a degree in Math, straight out of university I could have coded the solution to that no problem.  Now I would really have to think about it and go through the links provided.</p>
<p>The problem with these tests is that it&#8217;s treating the process backwards.  If you want someone who is really good at what they do, no matter what discipline you&#8217;re hiring, they have to choose to work for you.  You want it to be as easy as possible for them to find you and get through the interview process while still filtering out the people you don&#8217;t want.  Good people do not need a job, they already have one.  The more hoops you make them jump through the less likely they&#8217;ll bother to keep going.  This is why tests like &#8216;reverse a string&#8217; or fizzbuzz are great.  They&#8217;re easy to understand, fast to implement, and shouldn&#8217;t require any outside resources if you allow the interviewee to use whatever language they want.  Then you give them a complex problem and have them work through some general design and implementation ideas without talking about code to make sure they can manage some high-level design.  Between these 2 types of tests you should be able to filter out the non-programmers while not putting up too many roadblocks to deter someone who needs to choose to work for you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bwc</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-140</link>
		<dc:creator><![CDATA[bwc]]></dc:creator>
		<pubDate>Sun, 23 May 2010 17:00:22 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-140</guid>
		<description><![CDATA[Actually, I realized the problem is this.  It&#039;s because I don&#039;t know much about the details of Quicksort (although heard of it and it&#039;s fast) and therefore just using the problem explanation and example above, it wasn&#039;t as clear as I want it to be.

I was thinking what happens when you have Aaron on the left of Carol (I mean everything in the example seems so orderly and simple without loopholes).  A better example detail explanation for me at least is the bigger set of array of numbers and not as orderly initial set like the one found in 

http://www.algolist.net/Algorithms/Sorting/Quicksort

It&#039;s the partitioning that I was confuse about.]]></description>
		<content:encoded><![CDATA[<p>Actually, I realized the problem is this.  It&#8217;s because I don&#8217;t know much about the details of Quicksort (although heard of it and it&#8217;s fast) and therefore just using the problem explanation and example above, it wasn&#8217;t as clear as I want it to be.</p>
<p>I was thinking what happens when you have Aaron on the left of Carol (I mean everything in the example seems so orderly and simple without loopholes).  A better example detail explanation for me at least is the bigger set of array of numbers and not as orderly initial set like the one found in </p>
<p><a href="http://www.algolist.net/Algorithms/Sorting/Quicksort" rel="nofollow">http://www.algolist.net/Algorithms/Sorting/Quicksort</a></p>
<p>It&#8217;s the partitioning that I was confuse about.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bwc</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-139</link>
		<dc:creator><![CDATA[bwc]]></dc:creator>
		<pubDate>Sun, 23 May 2010 16:26:33 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-139</guid>
		<description><![CDATA[I don&#039;t know about you guys. But I found the Solver problem to be easier than this Quick Sort.  Maybe I haven&#039;t code recursion that much or that I don&#039;t have a CS degree. ( I can code simple recursions like fib or string reverse ). Or maybe I&#039;m overthinking this problem..and this is in the comfort of my home!]]></description>
		<content:encoded><![CDATA[<p>I don&#8217;t know about you guys. But I found the Solver problem to be easier than this Quick Sort.  Maybe I haven&#8217;t code recursion that much or that I don&#8217;t have a CS degree. ( I can code simple recursions like fib or string reverse ). Or maybe I&#8217;m overthinking this problem..and this is in the comfort of my home!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: None Required</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-128</link>
		<dc:creator><![CDATA[None Required]]></dc:creator>
		<pubDate>Mon, 29 Mar 2010 11:36:19 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-128</guid>
		<description><![CDATA[I&#039;d say these assignments unfairly favour parts of the crowd.
At some universities, quick sort is one of the most used examples, so many of those who&#039;ve been there probably know it by heart, and are extremely familiar with it.
At some other university, quick sort are only mentioned at a glance and other examples are used.

So if I were you, I would use a real life example instead, more geared towards structure than algoritm.
Structures are hard to fix if someone have made bad ones, algorithms aren&#039;t. Usually.]]></description>
		<content:encoded><![CDATA[<p>I&#8217;d say these assignments unfairly favour parts of the crowd.<br />
At some universities, quick sort is one of the most used examples, so many of those who&#8217;ve been there probably know it by heart, and are extremely familiar with it.<br />
At some other university, quick sort are only mentioned at a glance and other examples are used.</p>
<p>So if I were you, I would use a real life example instead, more geared towards structure than algoritm.<br />
Structures are hard to fix if someone have made bad ones, algorithms aren&#8217;t. Usually.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric Smith</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-117</link>
		<dc:creator><![CDATA[Eric Smith]]></dc:creator>
		<pubDate>Mon, 15 Mar 2010 05:37:39 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-117</guid>
		<description><![CDATA[Steve - I don&#039;t think it&#039;s worth blocking ports at all, and logging activity is definitely the way to go.

To be honest, given the time constraint, I wouldn&#039;t expect a particularly sophisticated attempt to cover tracks.  What&#039;s more is, the more sophisticated the attempt to cover tracks, the less likely they&#039;ll actually need to go to those lengths to do so (i.e., they&#039;ll probably be the sort of person who will nail the test *anyway*).

My concern really is use of InPrivate or clearing the browser cache because it&#039;s just so darned easy.  Yes, looking at firewall logs gets around that, and I even considered setting up a proxy server on my own PC that the browser will point at (with suitable rules to prevent access any other way).  In all honesty though, I don&#039;t think it&#039;ll be needed.

I do not believe that looking at source code is cheating at all---however, copying source code *verbatim* without understanding anything about it *is* cheating.]]></description>
		<content:encoded><![CDATA[<p>Steve &#8211; I don&#8217;t think it&#8217;s worth blocking ports at all, and logging activity is definitely the way to go.</p>
<p>To be honest, given the time constraint, I wouldn&#8217;t expect a particularly sophisticated attempt to cover tracks.  What&#8217;s more is, the more sophisticated the attempt to cover tracks, the less likely they&#8217;ll actually need to go to those lengths to do so (i.e., they&#8217;ll probably be the sort of person who will nail the test *anyway*).</p>
<p>My concern really is use of InPrivate or clearing the browser cache because it&#8217;s just so darned easy.  Yes, looking at firewall logs gets around that, and I even considered setting up a proxy server on my own PC that the browser will point at (with suitable rules to prevent access any other way).  In all honesty though, I don&#8217;t think it&#8217;ll be needed.</p>
<p>I do not believe that looking at source code is cheating at all&#8212;however, copying source code *verbatim* without understanding anything about it *is* cheating.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve Sperandeo</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-114</link>
		<dc:creator><![CDATA[Steve Sperandeo]]></dc:creator>
		<pubDate>Sat, 13 Mar 2010 17:08:38 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-114</guid>
		<description><![CDATA[Hi Eric,

You just have to be one step ahead of them.  If you log the requests in the firewall and not on the provided computer, they won&#039;t be able to erase the log.  Also, limiting access to only outbound ports 53 and 80 (and arguably 443) is a cheap way to limit their connections to ssh tunnels and proxies.  I&#039;d still log requests to the other ports (so you know if they attempted to connect to ssh).

Another option would be to not block the requests, but instead just log them.  You&#039;ll be able to see the context of what they&#039;re doing, which is sometimes good enough.  Seriously, the only reason people would use ssh during an interview would be to copy or review some old source code that they had written in the past.  That brings up a very interesting point.

Is &lt;i&gt;looking&lt;/i&gt; at your old source code considered cheating?  Old source code is something akin to looking at other people&#039;s websites and code snippets on the internet.  Arguably, it doesn&#039;t violate any licenses.  In my humble opinion, the best developers are extremely resourceful developers; so, couldn&#039;t old source be considered just another resource?

Comments?]]></description>
		<content:encoded><![CDATA[<p>Hi Eric,</p>
<p>You just have to be one step ahead of them.  If you log the requests in the firewall and not on the provided computer, they won&#8217;t be able to erase the log.  Also, limiting access to only outbound ports 53 and 80 (and arguably 443) is a cheap way to limit their connections to ssh tunnels and proxies.  I&#8217;d still log requests to the other ports (so you know if they attempted to connect to ssh).</p>
<p>Another option would be to not block the requests, but instead just log them.  You&#8217;ll be able to see the context of what they&#8217;re doing, which is sometimes good enough.  Seriously, the only reason people would use ssh during an interview would be to copy or review some old source code that they had written in the past.  That brings up a very interesting point.</p>
<p>Is <i>looking</i> at your old source code considered cheating?  Old source code is something akin to looking at other people&#8217;s websites and code snippets on the internet.  Arguably, it doesn&#8217;t violate any licenses.  In my humble opinion, the best developers are extremely resourceful developers; so, couldn&#8217;t old source be considered just another resource?</p>
<p>Comments?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric Smith</title>
		<link>http://thelimberlambda.com/2010/02/20/senior-developer-assessment-revisited/#comment-112</link>
		<dc:creator><![CDATA[Eric Smith]]></dc:creator>
		<pubDate>Sat, 13 Mar 2010 08:05:07 +0000</pubDate>
		<guid isPermaLink="false">http://skepticabin.wordpress.com/?p=263#comment-112</guid>
		<description><![CDATA[Steve - I actually think you&#039;re right about your suggestion, so I&#039;ll re-instate the Internet access and make it explicit in the assessment that you&#039;re required to do the problem yourself.  Really clever individuals will, of course, cover their tracks though :)]]></description>
		<content:encoded><![CDATA[<p>Steve &#8211; I actually think you&#8217;re right about your suggestion, so I&#8217;ll re-instate the Internet access and make it explicit in the assessment that you&#8217;re required to do the problem yourself.  Really clever individuals will, of course, cover their tracks though :)</p>
]]></content:encoded>
	</item>
</channel>
</rss>

