Hiring & Acceptance Test

I came across this posting on a Yahoo! group recently and it was too good not to pass it along.  It is about writing an acceptance for hiring a senior developer in the spirit of Extreme Programming.


class SeniorDeveloperAcceptanceTest extends TestCase{
   Developer candidate;
   Collection team;

   public void setUp() {
      candidate = new Developer();
      team = YourCompany.getTeam();
   }

   public void testTechnicalSkills() {
      assertTrue(candidate.isJavaExpert());
      assertTrue(candidate.canDesignLargeApplication());
      assertTrue(candidate.canReduceTechnicalDebt());
      assertTrue(candidate.practiceTDD());
   }

   public void testTeachingSkills() {
      assertTrue(candidate.canImproveTeamSkills());
      assertTrue(candidate.canArgueAboutAgility());
   }

   public void testHumanBehavior() {
      assertTrue(candidate.canPairProgram());
   assertTrue(candidate.canIntegrateWith(team));
   assertTrue(candidate.hasPositiveAttitude());
   }

   public void testMethodologySkills() {
      assertTrue(candidate.knowExtremeProgramming());
      assertTrue(candidate.canImproveTeamVelocity());
   }
   }

Leave a Reply