Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Better Interviewing for Better Hiring
1. Better Interviewing for Better Hiring Chris Westin Velocity Ignite June 14, 2011 1 https://www.bookofbrilliantthings.com
2. Has this ever happened to you? Your team interviews a candidate but can’t decide if they want to hire 4-5 interviews, and you still don’t know for sure if the candidate can do the job 2 https://www.bookofbrilliantthings.com
3. How about this? You are scheduled to interview someone, but you don’t know what to ask them You don’t know what the job requirements are 3 https://www.bookofbrilliantthings.com
4. From the other side of the table You went on an interview, and got tired of answering the same questions over and over again, all day long Typically: “Tell me about what you’re working on.” Or worse: the interviewer asked you for your resume so they could read it then 4 https://www.bookofbrilliantthings.com
5. And… After five interviews, you’re annoyed that you’re being asked back for a second round “Geez, another day off work?” “Who are these dorks? Do I really want to work with them?” 5 https://www.bookofbrilliantthings.com
6. Some simple steps for improving your hiring process Making and Using an Interview Plan 6 https://www.bookofbrilliantthings.com
7. Start with a job description The hiring manager should have already made a job description listing the essential skills for the job The hiring manager gave this to an agency or a recruiter, or posted it somewhere 7 https://www.bookofbrilliantthings.com
8. Create an interview plan The hiring manager makes an interview plan based on the job description Divide up the required job skills across the interview team Allow a small overlap to get a couple of opinions on each skill 8 https://www.bookofbrilliantthings.com
9. Simplify Preparation Hiring Manager: you will find different team members are best at different types of interviews Use that: have them do the same types of interviews across candidates But over time, have people branch out; you’ll need future planning flexibility 9 https://www.bookofbrilliantthings.com
10. Reusing Preparation Interviewers: spend a few minutes figuring out how to test the skills you are to interview for on the plan Reuse that for each candidate for any particular job 10 https://www.bookofbrilliantthings.com
11. Sample Engineering Interviews Recent work experience Write code Find bugs in a code sample and fix Write SQL/schema design Find a performance problem and fix Capacity estimation Design a state machine Block diagram design of a system 11 https://www.bookofbrilliantthings.com
12. “But I don’t have time to prepare…” Save everybody time by avoiding needing a second round Preparing will take less time than it will take to clean up your code base after a bad hire Preparing will take far less time than it would take for you to do the work of a good hire in the months and years to come So, make time! The time spent preparing is an investment 12 https://www.bookofbrilliantthings.com
13. Things NOT TO DOHow to Find out what you need to know In the Interview 13 https://www.bookofbrilliantthings.com
14. Don’t be ridiculous If you ask for code on a whiteboard, don’t complain about misplaced semi-colons (or similar issues) That’s what the compiler is for (That’s the thing that makes those red squigglies for some of you.) 14 https://www.bookofbrilliantthings.com
15. Don’t be unrealistic Given 20 minutes, the candidate probably won’t be able to come up with the optimal system redesign you just spent 6 months figuring out Choose questions that can be answered reasonably in the time given Cannot stress this enough for coding or design interviews We take our proximity and inside knowledge for granted 15 https://www.bookofbrilliantthings.com
16. Don’t telegraph the answer For example, “Have you ever used CSS to do layout instead of tables?” Well, duh. What do you think the candidate will say? Instead, try “How would you do this kind of layout?” 16 https://www.bookofbrilliantthings.com
17. Don’t look for a follower Don’t check up on the candidate’s personal taste in programming languages, OSes, etc, just to see if they match yours Ask about what matters: does the candidate know the language/system/whatever your employer is using well enough to do the job? Or, have they demonstrated that they could learn it quickly? 17 https://www.bookofbrilliantthings.com
18. Be clear on what matters Oops, the candidate doesn’t remember the exact name and signature of your favorite method on java.util.HashMap (or whatever) That’s what javadoc/php.net/docs.python.org/… is for If they had the documentation, could they use whatever it is effectively? 18 https://www.bookofbrilliantthings.com
19. Look for critical thinking For example: “If you could change something or add a feature to <language>/<tool>/<product> what would it be?” You want a problem solver, right? So check to see if they’ve thought about how to solve pain or problems they’re having! 19 https://www.bookofbrilliantthings.com
20. Questions? Comments? Blog: https://www.bookofbrilliantthings.com I’ll post this deck there https://www.bookofbrilliantthings.com/blog/better-interviewing-for-better-hiring Twitter: @cwestin63 20 https://www.bookofbrilliantthings.com