How to choose a DBA or any other IT practitioner for that matter!
A discussion that quite often occurs between MVPs is the value of tests during the interview process. Whilst some argue that a written test is a good means of determining whether a candidate is suitable, it will indicate the knowledge the candidates has; others may argue that it doesn’t reflect how people actually work, it only shows their adeptness at taking tests and that they know the particular answers. These people may then suggest a better solution would be to sit them in front of a laptop and watch how they solve the problem. This option gives them the tools which they should be familiar and will also give you a better idea of the candidate’s ability to get the job done. Personally I have always maintained that it is better to check something that you are not 100% sure of and get it correct first time, rather than guessing, getting it wrong and having to correct it. With an interactive test you can also watch if/how the candidate solves the problem and even if they test their solution, something you will not get with a written test.
Few SQL Server professionals are accredited examiners/interviewers (including myself), but hopefully this some of this will help!
If you are going to do a written test what should you include?
I don’t think there is any one answer to that, although it would help to ask questions relevant to the position for which the candidate is applying! One thing you need to make sure of when you are deciding on the questions to ask is to make sure that you are not trying to show your own SQL knowledge, but to test the candidates. Don't use questions off the internet or certification test questions as they may be recognise and may not be relevant, it may also infringe copyright. Use work colleagues to review the questions or even sit a mock test, if they do, remember they are not going to be under the same pressures as a candidate. This will also check that your answers are correct! Don't put a test together 5 minutes before the candidate arrives, and you should certainly not tell them that's what you have done. Don’t give questions a level of difficulty as this is subjective. Be selective in what questions you ask, don’t present 6 sheets of questions to the candidate and tell them they have 30 minutes to answer them all, or even worse, tell them they have 30 minutes but usually a candidate would get 45. This not only puts the candidate under additional pressure, but it also tells them that he that they are not getting an equal assessment. I don't think I am alone finding it takes significantly longer to write an answer to a question, than to type it. Even if you can't touch type this may still be the case and I know many very fast one fingered typists. The process of answering a question includes, reading the question (possibly more than once, and if the question poorly presented it will take significantly longer), deciding what to put down, then actually doing the writing. If the candidate is to write the answer on the same piece of paper as the question, make sure that you leave enough room; it is better to allow the candidate to answer the questions separately. If you change your mind it takes longer to erase and re-write something if you are forced to write your answer on a question sheet. Make sure questions are clear and concise, asking too much in a single part of a question will increase the risk of it being unclear of what is being asked. If you have a part that sets the scene e.g.DDL or database diagram keep this separate to the questions, it will be clearer and helps the candidate if they don't have to keep turning the paper over to review this information, this is more important if the same scenario is used in more than one question.
How should a test be administered?
A friend of mine believes that a test should always be at the start of an interview, and then you can review/mark the test and ask follow up questions to the candidate. I think this will also give you a better idea about the candidate’s ability, and the candidate gets a chance to redeem themselves. When I was sitting exams at school, we would always have 5 minutes to read the paper before the exam started. This is good exam technique regardless of whether you get a specific 5 minutes, but for someone who has not taken a test for a long time; it may not be something they think of. Make sure the candidate is at ease; don’t do anything to increase the tension they will undoubtedly be feeling stressful, even if they outwardly don't seem to be nervous. At school we would also have a warning that the test was coming to an end, this allows the candidate to check their answers and add anything that they wanted to put into an answer, but hadn’t done so on the first pass.
So does a written test have any value?
I am not averse to written tests, but a badly presented or constructed test (written or otherwise) is not going to tell you anything. If you are having problems finding recruits because they are failing the test, then maybe you should probably take a look at the test or the way it is administered. I am not an expert on employment law, even if I was it may not be the same in your country, make sure the way an interview is conducted does not infringe it. Some organisations insist that a HR representative is present at any interview; this should remove the risk of the interview being conducted incorrectly.
A test should only be part of an interview process; you can always teach people things they don’t know. But if it is not helping to bring good candidates forward then an alternate solution may be to offer positions for a trial period. This way you can really see how a person reacts in a work environment and they can produce a solution to real problems using whatever methods they choose. If they produce timely working solutions and good code then they can graduate. This does assume there are peers to assess this or someone is brought in to do a review. Another option might be use a whiteboard or flipchart to write down the answer and talk their solution through, this way you may provide the information the candidate would look up. If you are still not sure, check out Simpsons Season 21 Episode 2 - "Bart Gets A 'Z'" at about 9 minutes in you have the following dialog:
Zachary Vaughn: "Who can tell me what the Monroe Doctrine was?"
Martin: "The policy of President Monroe that America has the right as a nation to..."
Zachary Vaughn: "Wait, wait, wait."
Zachary Vaughn: "Are you telling me you memorized that fact when anyone with a cell phone can find it out in 30 seconds?"
Martin: "I've crammed my head full of garbage!"
Zachary Vaughn: "Yes, you have."