A brief tutorial for In-house recruitment
A brief tutorial for In-house recruitment
Hugo Azevedo 80

A brief tutorial for In-house recruitment and mistakes done by the IT industry

IT Recruitment in general

If you haven’t notice, the World is a mess. If you don’t believe me, then you’re probably not following the right people on Twitter. The IT recruitment process is no exception.

Being a remote developer, once in a while I have to search for that next gig, and online recruitment is on of the processes I have to deal with from time to time, but I keep bumping into the same old recruitment techniques, which quite frankly, shouldn’t even exist in the IT industry.

It’s not rare to find yourself hearing the recruiter tell you, how many candidates they’re interviewing for the job, how many hundreds of applications they received, or even seeing the selection process being dragged for weeks. If recruitment was a popularity contest, or a marketing campaign, I can see how these were good KPIs. But in IT recruitment?

IT loves layering, optimization, benchmarking, standards, patterns, re-factoring, testing, automation, and many other lovely things in our World. Yet, when it comes to recruitment, we seam to be stuck in the Industrial revolution. The followed pattern has no standards, there's no testing, benchmarking shows poor performance, and apparently, no one refactors/automates/optimizes practices. Surely, there must be some room for innovation.

After careful consideration, I decided not to talk about the recruitment outsourcing industry, which has its own set of problems, and would probably result in breaking the Internet. I’ll only be talking about in-house recruitment in the IT industry instead. So, if you see me referring to a recruiter, I’m talking about the in-house one.

Recruitment process

In theory, the recruitment process is a fairly simple one:

For such a simple process, I was surprised to see how many different ways the industry can f*** this up, without revising the process.

Online recruitment feels a lot like fishing (you being the fish in this analogy). One big difference though, is when you bite the hook, most of the times it wasn’t even there. Other times it was there but it had no bait, or someone snatched it before people had a chance to glance at it.

In online, the pond is too big to be wasting everyone’s time on outdated methodologies. Time is of the essence.

It’s all in the game, yo.

Recruitment is a game, and as an in-house recruiter, if you plan to have month long matches, you’ll need to be prepared to find yourself playing alone at the end. If you get hundreds of job applications to a single position, you’re not playing right. If you’re not recruiting for a tech giant, “you best believe” those applicants are not just applying to your company. You’ll need to optimize and automate, in order to have the process working for you, instead of the other way around.

There are two small details you’ll need to keep in your mind all the time. For every applicant’s hour you’re wasting, you’ll be wasting that hour as well, and time is expensive. Another thing you should keep in mind is, you shouldn’t be focusing on excluding candidates, but instead, on filtering them. And that should start right at the beginning of the process.

The ideal job post

Having applied all across the World, I regret to say that I only found (so far) one single country that seams to be doing IT recruitment consistently in the right way. That country shall remain unnamed. My goal is not to start a “thing”…

A well structured, concise and pragmatic job post, will actually work as a filter for you. You should disclose as much information as you can, in a very succinct way, so you’ll save time later on in the process. You’re not trying to get as many people you can. You’re trying to get the right ones.

Most of that country’s job offers share the same basic structure, at least the ones I’ve found so far, which aims to filter applicants for the recruiters.

Position’s title and job location

This might seam straight forward, but a lot of job adverts forget to specify this in a clear way, which ends up making job searchers apply, only to find out they can’t move to the desired location. One example of this, is forgetting to disclose the position is only for a specific company’s branch.

The job’s title shouldn’t be generic either. This is the main calling card when your job offer is being listed/search amongst many others. If your job offer is for a front-end developer, that will be working in Angular 2 most of the time, the job’s title should specify “Angular2 developer” and not "Front-end developer”. But more on this on the skill’s section below.

Salary Gap

We all get it. You want to get the best developer for the position, preferably at a discount price, or, you don’t want existing employees to find out what you’re offering, or that they’re underpaid.

But there are a couple flaws with this approach.

The first one is (in my personal experience), if you own a “local” business, the “market” (employees) already has a good idea what you pay. If you’re more “global” than that, glassdoor will help your future look even dimmer.

Also, if you don’t specify a salary gap in your job post, you’ll be dealing with many applications that won’t stay around until the end of the process, either because the applicant’s not at the required level, or you don’t offer enough. This used to happen to me at the second/third interview round. Nowadays, I don’t even bother applying.

Providing a salary gap, and specific job location and title will help you filter through candidates that would “jump ship” sooner or later, so in a sense, you’ll be saving your valuable time doing it.

There’s another time-consuming trend that seams to happen a lot by not disclosing this, that can be completely eliminated. Some candidates are not looking for the job you’re offering. They’re looking to find out how much are you paying, and they will remain in the process until they do. Disclosing the salary gap upfront, will eliminate those Cvs from the pile.

The most important aspect of a salary gap, is that it isn’t an offer. In my opinion, the minimum value should be set based on the absolute essential requirements for that specific job. The maximum value should be maximum amount you’re willing to pay for the essential skills, complementary skills, and hopefully a bit more.

Just because you disclose a minimum and maximum values, doesn’t mean everyone will fit the gap. It doesn’t guarantee you’ll fill that position either.

Required/essential skill-set/qualities.

This is also a very important part of the job post. Most people will just list every single technology they know, just in case the company needs it in the future. This is very wrong.

Developers know the IT industry is always shifting, and new skills need to be acquired and improved constantly, but listing many essential skills, and some times, skills that “contradict” each other, passes a very negative company’s image, and the applicant will have a distinct impression you’re actually searching for a “jack of all trades” candidate. This will also give the impression you don’t value acquired candidate's knowledge, and will chase away many skill-full people.

This section complements the job’s title, and should be kept to the bare minimum. If you don’t, applicants will also be in doubt which of the skills you want them primarily focused on.

In order to know which technologies to list here, you should ask yourself in which technologies the candidate will be spending his/her time +/-90% of the week.

As a last remark, careful asking for previous minimum experience years per technology. Asking for an overall previous experience of 5 years, and listing technologies with 3, will pass the wrong impression.

Complementary skills/qualities

This section complements the previous one, and is where you should put other unessential/complementary skills. This is where you’ll start to see where the candidate might fit, inside the salary gap.

The only remark I need to make regarding this point is, once again, don’t list every single technology in it. You might find yourself in contradiction, as in the previous point. If you don’t have an immediate skill necessity, don’t list it.

This is where you’ll list the technologies for the other +/-10% of the candidate’s working week time.

Applicant’s key responsibilities and what the company offers

These points are neglected many times, but are also a very good time savers in recruitment. Not only will they give the candidate a good idea of what your company expects from him/her, and what it offers in return, but will also save you time in interviews, as the candidate won’t loose much time trying to get this information anyway.

Candidates know, that they’re in an uneven position in the recruitment process, and are often intimidated and unease asking you too many questions, even more if they’re uncomfortable ones. This doesn’t mean they won’t try to collect that information, but they will try to be subtle about it. Subtlety, by definition, will consume unnecessary time for both of you.

Disclosing succinct direct lists here, will also pass a pragmatic and professional feel about you and your company, which might be the difference between closing the browser’s tab, or clicking “apply”. Who knows if that wasn’t the right candidate.

About the company

Usually, this section is one of the first ones to be listed, but in my opinion, is the less important one of them all.

If your company’s name is disclosed next to the job’s position, and you fill in all of the previous sections, your company’s “mission” is nothing but a footnote. There’s nothing you can say here that the candidate can’t search online, or already knows about your company. There’s also nothing you can say here, that will make the candidate re-open that infamous tab.

Other common mistakes in recruitment

You’ll need to keep one extra thought in mind. “A satisfied costumer has nothing to say, but an unsatisfied one, won’t shut up”. 

After many recruitment mistakes, you’ll need to ask yourself, who exactly stays around, who remains in the process, and most importantly, how damaged your company’s image is at the end. Don’t forget that the candidate isn’t the only one being exposed in this process.

If you add these, to the time consuming process recruitment is, you’ll start to see what I’m trying to say.

You’re the one offering the job

If you omitted the salary gap in your job post, this will probably come up in the interview rounds.

I won’t comment on recruitment in other industries, but in IT I’m always surprised when the recruiter leaves this question for the second/third interview round. I can’t wrap my head around this. What’s the plan? How many hours must you loose, before you reach a brick wall? Some refactoring is needed here.

Personally, I’ve stopped mentioning values in interviews. I only apply to jobs disclosing salary gaps, which might explain the lack of need the recruiter feels asking me about “my” value, because let’s face it, it’s not really “my” value that matters.

If I’m approached by someone claiming to have a job offer for me, which by definition, I didn’t apply to, I just refuse to disclose a value first.

If you keep insisting on a value, which BTW, is not a very good sign, you should never, ever, ever, ever, under any circumstance ask for the candidate’s “minimum expected salary”. That alone, is a very strong statement about yourself, and you should always remember you’re representing a company, even if it’s your own. Keep in mind your company’s also being evaluated.

The infamous white board

What can be said about this, that hasn’t been said already by thousands of people? Oh, that’s right. The fact that it’s still being used by thousands of people.

Apparently, software whiteboard testing was implemented in Google at some point, and the industry followed. When whiteboard testing was soon dropped by Google due to inconsistent results, the industry didn’t read the memo. Whiteboard testing has an overall bad reputation. You can ask RoR’s creator DHH about it.

So, do whiteboard tests actually prove anything? Of course they do. They prove the candidate has been job searching enough time, he/she already knows every single whiteboard question you might have. They can even sort any array for you, in any way you’ll possibly need.

But the biggest thing they might prove, is that the recruiter might be the one without enough skills. This actually happened with me. When given one of those “tricky” academic whiteboard questions, and when providing an industry standard convention as a solution, the recruiter didn’t recognize it. This accidentally proved the recruiter hasn’t been around that technology enough, and shouldn’t even be recruiting for it.

But not all whiteboard tests are evil (just most). A whiteboard test can be informative, if the test itself applies to what you’re recruiting for, and is not purely academic. I’ve also had tests, where the recruiter was actively discussing possible solutions for a given problem.

You must keep in mind that you’re trying to filter candidates, not actively excluding them. How expensive would that be?

The unpaid challenge

This is another big mistake a see a lot of in-house recruiters do.

I’m not talking about re-factoring a small portion of code, in order to evaluate the candidate’s coding style/standards. I’m talking about that “from scratch” project, the recruiter “estimates” will take around 4h. Who actually has 4h to give, for the mere possibility of working for you? Who are you exactly?

Before assuming I was the only one excluding myself from job candidacies, I had a talk about this with other people I know, that work in the industry as well. From this small survey I’ve personally conducted, I can attest that, from the people who were employed and at a junior/senior level, 100% of them wouldn’t even bother doing these tests.

So, the first question I have is, who exactly are you trying to hire? How accurately can you assess all of your candidate’s 4h challenges? How much does that assessment really cost your company? And most importantly, how can you even attest the person developing the challenge is the actual candidate?

Careful, the webcam is on

Video-calls are great for early stage interviews and/or remote positions. They provide a more personal and human touch to the whole process.

One mistake you might make, is conducting a video-call, without the actual video. Not displaying video might give the candidate the wrong impression about you, that you might have something to hide. Even if you anticipate having bandwidth problems, you should always start the call with video, and warn the candidate that you might turn it off if you experience lagging.

Another webcam related mistake you might make, is completely forgetting you’re on a video-call to begin with. There’s no problem interviewing candidates from outside the office, if conditions are up to par, or even not wearing a tie and/or shirt. Another thing all together, is behaving as if the candidate can’t see you at all.

Don’t make loud noises drinking from you cup. Don’t yawn during the talk. Don’t keep looking distracted by something else. The list goes on and on. Basically, keep minimum etiquette behavior, and try to look interested by what the candidate’s saying, even if you’re not.

Even if not disclosed initially, the candidate’s rate and/or salary expectations might go up solely due to your poor interviewing etiquette. I started applying this rule myself, after seeing it applied by many of my colleagues.

Making a career shift has associated risks. Looking unprofessional for a candidate, will give him/her the impression that the risks are actually higher. This means, the risk barometer in the candidate’s head will require them to increase the compensation, in order to justify accepting any offer you might have. Assuming that, they don’t decline it right there and then.


In-house recruitment is more personalized, and implies dedicated time that you and your company might not have. The more clear and transparent you are in the process, the quickest you can fill that HR gap you currently have.

Start with a very direct and pragmatic job advert, which can guarantee the best ratio for valid candidacies. If your job advert is too specific, and doesn’t guarantee enough candidates at first, you can always post it again after a couple of weeks, and make it slightly more generic. This will be preferable to the opposite approach. At least, you didn’t had to filter hundreds of “generic” initial applications.

Be detailed in you advert. The more information you disclose in the advert, the less you’ll need to explain or repeat in the interviews. You’ll only need to explain the advert once.

All those dissimulated psychological questions, aimed to uncover any hidden candidate’s character traits, don’t have a place in IT recruitment. The IT industry is based on logic, and there are too many technical features that should be unveiled before that.

Drop academic whiteboard tests, if not all of them together. Before asking the candidate about those 3 lines of code you’re about to paste on the chat room, ask yourself what type of information you’re trying to collect from it, how would that knowledge be applied on the candidate’s day-to-day routine.

Don’t expect the candidate to give you free time on a challenge, if you haven’t gave him/her time of your own. If you really need one, be sure to only ask for one at a more advanced stage of the process. To early on, and it might seam you’re searching for free work, or that you don’t value the candidate’s time.

In the end, try to optimize the recruitment process. Until you find your recruitment method. Question any existing one before applying it. If you think about them, and how they fit into the end result your searching for, you’ll realize most of them make no sense.

SmarterQueue - The smartest way to do social media.

SmarterQueue - The smartest way to do social media.

LRTT - Limited Resource Teacher Training

LRTT - Limited Resource Teacher Training

shareOptic - Cyber security monitoring solution

shareOptic - Cyber security monitoring solution

RAD Php Blockz web framework

RAD Php Blockz web framework