{"id":1572,"date":"2021-05-03T22:00:53","date_gmt":"2021-05-04T05:00:53","guid":{"rendered":"https:\/\/coderpad.io\/?p=1572"},"modified":"2023-05-03T07:22:51","modified_gmt":"2023-05-03T14:22:51","slug":"5-tips-for-tech-recruiting","status":"publish","type":"post","link":"https:\/\/coderpad.io\/blog\/interviewing\/5-tips-for-tech-recruiting\/","title":{"rendered":"5 Tips for Better Tech Recruiting"},"content":{"rendered":"\n<p>Tech recruiting is difficult. Interviews are tricky for candidates &#8211; and for interviewers. One of the untold challenges of interviewing is knowing how to set up good candidates for success. After all, you want a process that tests the right skills, and filters out the noise that is not&nbsp; helpful to evaluating candidates.<\/p>\n\n\n\n<p>This can be done in many ways, but let\u2019s talk about a few today.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"don-t-be-afraid-to-help\">Don\u2019t Be Afraid To Help<\/h2>\n\n\n\n<p>Something to keep in mind while interviewing candidates is that they\u2019re just like you and me: people. People that make mistakes from time-to-time or might get stuck on a certain phrasing of a question.&nbsp;This should never leave your mind while tech recruiting.<\/p>\n\n\n\n<p>Oftentimes, lending a gentle helping hand can be the ticket to a successful interview. It can be as simple as rephrasing the question in a way that points towards the solution, or providing a structural bit of code that needs tweaking in order to be solved.<\/p>\n\n\n\n<p>This is particularly beneficial for junior engineers, who\u2019s interviews should focus more on \u201cthought process\u201d and \u201cability to learn and communicate\u201d than existing skill sets. However, even senior engineers can have the solution escape them until it finally clicks with some small assistance.<\/p>\n\n\n\n<p><br>While this all might seem counterintuitive to assist a candidate (even in small ways) during an interview, you have to remember that they need support. In their future role with your company, they won\u2019t (and shouldn\u2019t) be working in isolation. Instead, they will have a team to lean on. By giving a small hint here and there, you\u2019re able to understand how they receive feedback and when they need help.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"allow-resources\">Allow for Resources<\/h2>\n\n\n\n<p>As mentioned earlier, candidates are just people. Because of that, you will never find an all-knowing candidate who only ever relies solely on their existing knowledge to fix an issue (no matter what big-ego Jim says). Time-and-time again we\u2019ve heard from seasoned developers that research and cheat-sheets are part of their daily engineering work.&nbsp;<\/p>\n\n\n\n<p>While it might not be immediately obvious, knowing how to search for and find the relevant&nbsp;content is incredibly important. Not only that, it\u2019s something that\u2019s developed gradually alongside a developer\u2019s journey &#8211; just like any other skill.<\/p>\n\n\n\n<p><br>After all, the point of coding interviews as part of tech recruiting is to see how capable a developer is at the job they\u2019re applying for. You want to test in real-world situations, not in an isolated environment that doesn\u2019t represent the daily aspects of the job.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"less-algorithms-more-demos\">Less Algorithms, More Demos<\/h2>\n\n\n\n<p>Speaking of representing a job in a more realistic light: think about the last time you had a ticket in your backlog that required discussion of tree reversal (or similar algorithm). Now think of the last time you asked a question like that in your interviews. See where I\u2019m going here? I\u2019m not implying that algorithm questions are inherently bad for every position, but in this industry they\u2019ve been used as a stop-gap for more relevant questions. This is the number one complaint I&#8217;ve heard against most tech recruiting.<\/p>\n\n\n\n<p>Many engineers can attest to being asked algorithmic questions in an interview &#8211; only to be working with styling and application state management in their day jobs. The usage of complex algorithms are far-and-few between &#8211; especially in front-end engineering.&nbsp;<\/p>\n\n\n\n<p>Even when algorithms <strong><em>are<\/em><\/strong> relevant, there\u2019s usually a team to discuss with, research to be done, and benchmarking to verify the usage of a given algorithm for key application logic. These discussions can take significantly longer than an hour long interview.<\/p>\n\n\n\n<p>Not only are these questions rarely representative of the actual job, they\u2019re also easy to cheat with someone with enough free-time to dedicate towards algorithm memorization. Googling \u201cinterview algorithm questions\u201d provides over 17 million results. Even the first page of results promises to teach you how to instantly solve dozens of common algorithm questions.<\/p>\n\n\n\n<p>Not only is possible cheating unhelpful in reflecting a candidate\u2019s problem solving skills, it actively biases your results towards those who\u2019ve put more time into interview prep (which may discourage those who\u2019ve been long-term employees for a single employer). It actively harms those with children or other time constraints that limit their ability to continually practice algorithm questions.<\/p>\n\n\n\n<p>Even with all of this, I\u2019m only scratching the surface of the <a href=\"https:\/\/coderpad.io\/blog\/interviewing\/whiteboard-interview-guide\/\">issues with algorithm-based \u201cwhiteboarding\u201d interviews that\u2019ve been written about before<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"fixing-the-problem-with-tech-recruiting-questions\">Fixing the Problem with Tech Recruiting Questions<\/h3>\n\n\n\n<p>That said, interview questions are important, so what should we be replacing these algorithm questions with technical assessments?<\/p>\n\n\n\n<p>Ideally, we should be asking questions based in the real-world. For example, if you\u2019ve got an older class-style React codebase that is being rewritten into functional hooks components, let them do that for the interview!<\/p>\n\n\n\n<p>In other scenarios, where styling is important to the role, you might want to provide a functioning app and ask the candidate to match an existing design.<\/p>\n\n\n\n<p>While real-world code samples provide many upsides, setting up a real-world example may take a candidate a little longer to read through the code and orient themselves. How can we reduce the dead-air for interviewers and candidates alike?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"take-home-projects\">Take-Home Projects<\/h2>\n\n\n\n<p>We at CoderPad are <strong><em>strong<\/em><\/strong> advocates of <a href=\"https:\/\/coderpad.io\/features\/resources\/docs\/interview\/quick-start-guides\/interviewers\/resources\/docs\/interview\/quick-start-guides\/interviewers\/resources\/docs\/interview\/quick-start-guides\/interviewers\/take-home-projects\/\">take-home projects<\/a> for technical assessments. While <a href=\"https:\/\/coderpad.io\/blog\/interviewing\/hire-better-faster-and-in-a-more-human-way-with-take-homes\/\">we\u2019ve written about many of the benefits of take-home projects before<\/a>, we\u2019ll touch on some of the advantages here:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Lower stress environment for candidate<ul><li>We\u2019ve heard a lot from the autistic community and those with anxiety that this helps a lot<\/li><\/ul><\/li><li>More flexibility and creativity in candidate solutions<\/li><li>Removes biases<\/li><li>Kills dead air while candidate is doing initial thought process of a problem<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"level-the-playing-field\">Level the Playing Field<\/h3>\n\n\n\n<p>As mentioned previously, time isn\u2019t the same for everyone. Some folks look for work while they\u2019re still working full-time for another employer. Those same people may have kids or other priorities in their lives. This makes time a rare commodity for some. Good tech recruiting should take this into account and help level the playing field.<\/p>\n\n\n\n<p>A good solution of this can be setting a time limit for take-home projects. However, if a time-limit is softly set and on the honor system, engineers may feel the pressure to go outside of that time-range to add \u201cpolish\u201d in order to compete with other candidates. This places us back at the original problem without much done.<\/p>\n\n\n\n<p>CoderPad allows you to limit the amount of time a candidate is able to spend in assessment. the interview pad Once the timer is done, the candidate is removed from the take-home project and their work is submitted.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2021\/05\/img_6090d5051dcb2.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>I encourage you to keep the time limit to 2 hours max. Any longer and you risk alienating the candidates without that much time to do assessments. Keep in mind &#8211; you\u2019re likely not the only role that candidate has applied for.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"find-their-speciality\">Find Their Speciality<\/h2>\n\n\n\n<p>Not only do take-home projects improve the balance of \u201cstress\u201d vs \u201ccapabilities\u201d you look for in an interview, they also allow candidates with specialties focus on their strengths and show you what they\u2019re most capable of.<\/p>\n\n\n\n<p>Think about it this way: You\u2019re hiring for a team &#8211; ideally a team should have a good balance of skills. Even in small-scale applications, there are lots of jobs to do: styling, internal documentation to write, code organization, boilerplate writing, application logic, testing, etc.. While it\u2019s possible to have someone capable of doing more than one of these &#8211; it\u2019s impossible to be a true universal expert at all of them at once. Engineers are likely to lean more in some directions than others. Don\u2019t discourage this &#8211; it\u2019s what allows a team of diverse people to build a better product through combined individual expertise.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"wrap-up\">Wrap Up<\/h2>\n\n\n\n<p>Most of these tips are meant to make your tech recruiting more representative of real-world experiences and enable a more diverse pool of candidates to succeed in your process. I hope these tips help give you better insights into your candidates and enable a team that\u2019s more well-rounded,&nbsp; ultimately bringing more value to your company and teams.<\/p>\n\n\n\n<p>Hungry for more interviewing tips? Check out our blog about <a href=\"https:\/\/coderpad.io\/blog\/interviewing\/technical-interviewing-3-actionable-tips-to-hire-well\/\">3 other tips for technical interviewing<\/a>.<\/p>\n\n\n\n<p>Have more you\u2019d like to add? <a href=\"https:\/\/bit.ly\/coderpad-slack\" target=\"_blank\" rel=\"noopener\">Join our Slack<\/a>, where we talk about interviewing and programming. We\u2019re curious what your tips and tricks are!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Make your tech recruiting more representative of real-world experiences and enable a more diverse pool of candidates to succeed in your process.<\/p>\n","protected":false},"author":1,"featured_media":3925,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[12],"tags":[],"persona":[27,28],"blog-programming-language":[],"keyword-cluster":[],"class_list":["post-1572","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-interviewing"],"acf":[],"_links":{"self":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/posts\/1572","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/comments?post=1572"}],"version-history":[{"count":10,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/posts\/1572\/revisions"}],"predecessor-version":[{"id":4142,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/posts\/1572\/revisions\/4142"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/media\/3925"}],"wp:attachment":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/media?parent=1572"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/categories?post=1572"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/tags?post=1572"},{"taxonomy":"persona","embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/persona?post=1572"},{"taxonomy":"blog-programming-language","embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/blog-programming-language?post=1572"},{"taxonomy":"keyword-cluster","embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/keyword-cluster?post=1572"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}