How to get more candidates for your vacancy.


This article is aimed at Hiring Managers and HR departments that need to recruit Software Professionals such as Developers, Business Analysts, Software Testers and Project Managers. However, you might find it useful even if you are recruiting for other professions.

When advertising a vacancy, it's usual to specify mandatory requirements such as SQL 2018, C#, .NET. However, some vacancies specify a large number of mandatory requirements. An extreme example that I have seen is where all these skills were listed as mandatory requirements:

RESTful APIs ·  JSON ·  Scala ·  JavaScript ·  Linux ·  Jenkins ·  Django ·  Ruby on Rails ·  Spring ·  MVC ·  Linux system administration ·  JUnit ·  JIRA ·  OWASP

The number of applicants that could truthfully respond to the above advert is probably very limited.

What you might like to consider is reducing the number of mandatory requirements and look for people who can cross train. Here's an example. Let's say that one of your mandatory requirements is: ‘Team Foundation Server’ (TFS) for source control.

To be more flexible with your requirements you could replace that with, “TFS or Git, or BitBucket or PVCS or Mercurial” (Those are all variations of source control tools.)

By having these optional choices, you are effectively saying that you are looking for someone who has used any one of the listed source control tools and you know that it won’t take long for them to get up to speed with the product that you are using.

Just that simple change could increase the number of suitable applicants for your vacancy.

Being less stringent with your mandatory requirements is all about spotting an applicant's ability and willingness to learn new technologies. The fact that they have already learnt several technologies shows that they have the ability to learn.

During the interview process you will make a judgement on how long it will take the candidate to get up to speed with the product variation that you are using.

Here’s a technique that you can use to discover if the candidate is enthusiastic and is willing to learn. During the first interview find something that they do not know about but something that you will be using in your next software project. For example, it might be GraphQL. When the candidate says they don't know it, you can give them a very high-level overview.

If you like the candidate, invite them back for a second interview. If the candidate is inquisitive and enthusiastic, they will have studied GraphQL since the first interview. Now you can ask some deeper questions about GraphQL and you should gain a good understanding about their ability to learn.

Does a developer really need to be skilled in Docker, Azure and Kubernetes? Probably not if you have your CI/CD pipeline in place. So those skills can be moved to your desirable list.

Rather than making a skill mandatory, you can put it in the desirable list then in your job description you can say:

“During your first week you will be expected to learn how to install a docker image on your laptop and develop against it. “

By looking for people with ability rather than a specific list of skills you will have a greater chance of finding someone who will fit in with your team and contribute to your productivity.

Unless you are offering some sort of internship or apprenticeship then you'll probably always need to have a few mandatory skills such as.

C#, .NET, Agile, SOLID, Scrum. But try to keep that list to an absolute minimum.

'Must have worked in the Finance sector'. Is this sort of requirement really mandatory? Remember your software specifications or stories should be clear enough for any intelligent developer to understand and follow.

If you are looking for a Business Analyst for an urgent project, then probably specifying 'must have worked in the finance sector' is probably OK.

Summary: Use the “one of many mandatory” options to attract a wider and more diverse set of applicants.

Register at to find candidates without the expense of a recruitment agent.