Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??

My employer is trying to hire another programmer to join me in the shop here (which I would really like). The CTO strongly believes that any strong candidate who passes the interview should be required to pass a programming test before we make an offer. Having seen some of the code written before I got here, by people who they didn't test, I can't argue too much.

Now when I took this job, the test was to make a small modification to a medium-sized web app (about 5200 lines in 10 files). This app is pretty horrible -- subs are several hundred lines long, it uses no modules other than DBI and CGI (and that only for parsing POST params), and all data is passed around via global variables; no data is more complex than a simple hash. It does not use strict. It is, unfortunately, representative of the bulk of our code base, so being able to figure out its behavior well enough to make the requested modification is a pretty good test.

But I've been trying to advance the state of the art over the last year, and all my new code uses CPAN modules as appropriate, is mostly OO, runs clean under strict and warnings, and generally doesn't make me feel icky. In other words, it looks like Perl5. So I've been asked to develop an additional test that will allow candidates to demonstrate their skills along these lines.

I'm finding I don't have a good idea of how to proceed. Ideally this would be something that a reasonably skilled developer could finish in 30-60 minutes, that would demonstrate an understanding of, and comfort with, strictness, lexicals, modules, objects, and references. I'd appreciate any thoughts on how to construct such a beast, or references to any such tests. Thanks!

In reply to How to measure Perl skills? by optimist

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and the sunlight beams...

    How do I use this? | Other CB clients
    Other Users?
    Others romping around the Monastery: (4)
    As of 2018-06-25 04:49 GMT
    Find Nodes?
      Voting Booth?
      Should cpanminus be part of the standard Perl release?

      Results (126 votes). Check out past polls.