Step 4: Setting Expectations & Warming Candidates

So far, we've figured out what you want and designed the challenges to help surface the right engineers tailored to your needs. Now you can focus on the most important part of executing your new screening process: practicing tactful communication to engage senior engineers.

Senior engineers love a good challenge, but not if it’s time-consuming and futile. The truth is, accomplished engineers will scoff at a cold email prompting them to spend 1-2 hours solving a fundamental code challenge for a company they may never hear from again. It’s understandable  why should they? Chances are they’ve already earned their stripes putting in late hours building software that’s reshaping our world one way or another. When designed and delivered haphazardly, automated code challenges will be perceived as insulting.

It’s critical to infuse an element of empathy in the delivery and design of your challenges. Cold emails with no explanation as to what they’ll be asked and why, are a surefire way to lose senior engineers. Those who make an attempt to make their candidates feel valued while scaling their screening systems will be the winners of today’s competitive war for talented engineers.


There are a couple of things you can do to mitigate this:

1. Be very clear about what you intend to ask and what you expect. Give them easy-to-digest prep material.


This is an important step in ensuring that you’re not rejecting great people just because they lack CS fundamental knowledge. Most senior engineers are not going to have CS fundamental knowledge right off the bat. First of all, nearly 60% of working software engineers don’t even have a proper CS background in one study. Second of all, even if they did, it was likely too long ago to remember anything that’s applicable in the real world. Expecting too much with no warning results in this: 



Before sending testing engineers on fundamentals, explain that we’re not trying to quiz them on random things they don’t even need to use on the job. Instead, fundamental binary tree questions help gauge problem solving and critical thinking skills, as we explained in Step 0. Although many great candidates get rejected because they failed to adequately prepare, it’s actually not that hard for smart developers to learn or re-learn the fundamentals. It’s part of why companies are fine with requiring them. And, as Kickstart CEO Soham Mehta said, the best senior engineers want to brush up on their fundamentals anyway. 

2. Calculate the amount of time you need to take the challenges (usually between 45 and 90 minutes) and give them more than enough time to actually complete it.

Communicate this to your candidates and explain that it shouldn’t take you more than an hour, but you have X hours to take it. It helps to simply articulate that you recognize that they’re extremely busy. Their time is valuable, so there’s no intense time limit to submit.


3. Explain why you’re even asking them to do this. For instance, if the code challenge replaces the resume or initial phone screening, let them know. Explain: “We ask you to do this code challenge so you don’t have to spend more time on the phone with multiple engineers.”  If you’re sending code challenges with no explanation, reasoning or preparation, your screening tool is an arbitrary knowledge test. You’re

Bonus Tip: We did a quick analysis of dozens of code challenges and found a consistently lower completion rate when using the word “test.” Avoid this term like the plague. Instead, always use “challenges.”

So after you’ve implemented great code challenges, what can you do to make sure they’re successfully producing the best senior engineering candidates?

            Step 1:                                        Step 2:                                      Step 3:                              Step 4: (this piece)                                Step 5:  Before You Do Anything               Designing Challenges             Challenge Checklist                 Setting Expectations                           Calibrate

            Step 1:                                        Step 2:                                      Step 3:                              Step 4: (this piece)                                Step 5: 
Before You Do Anything               
Designing Challenges             Challenge Checklist                 Setting Expectations                           Calibrate