Matching Resumes with Requirements-Through Codes

Recruiting employees is a nightmare today, with new job positions and requirement sets that keep evolving every year. Sorting through thousands of resumes, and filtering them manually can seem like an impossible task, especially when you need to hire for multiple roles across departments and domains. 

Setting the requirements are “good to have” and matching those with hundreds of profiles may seem like a rustic exercise, but is still the very first step in the recruitment process. This is still done manually by most recruiters even though companies have enough data to automate the process. CV parsing is one of the new HR technologies that are gaining popularity these days. CV parsing involves the extraction of skills info from job feeds and matching it with resumes.

Would a Keyword-Matching Algorithm work?

Matching keywords in resumes using DIY tools may not be a long term solution. There are two major reasons behind this:

  1. False Negatives: Not all keywords in resumes can be the same as the ones you end up using in your template. For example, say you have the words “data analytics” in your list, but the candidate has tools like Tableau and R (which are used in Data Analytics) mentioned in the CV. In this case, even though the candidate is a good match, your straightforward “keyword-search” algorithm would end up rejecting the candidate. This process also comes under CV parsing, where the enriched jobs data are compared with the skills of the candidates.
  1. Static Rules: If you build a tool using a set of keywords, then you would end up having a static rule-set. Thus, your requirements would not get updated based on industry standards. For example, a few years back, candidates had to know an Object-Oriented Programming Language like Python, Java or C++. Today languages like Golang have been added to the list. If you had the older list, applicants with experience in the latest programming languages could slip through.

While both examples are related to the tech world, these can be applicable even for a non-tech job. Let’s take the example of marketing. As it has evolved over the years, more and more digital marketing tools have joined the “must-have” list for marketing professionals. 

Adding Intelligence to a CV Matcher

The only solution to the problem at hand can be an intelligent resume matcher or CV parsing tool that would somehow be able to match resumes to a set of requirements using intelligent comparison instead of direct keyword-search. It would also be important for the tool to be able to update its config with the latest requirements for different job positions. Also, in case resumes need to be screened for a new position that just opened up, the tool should be able to fetch the requirements for such a position by pulling in new data.

1. Intelligent Matching 

Due to the complex nature of the way text is written and interpreted, matching keywords is the worst solution if you want to filter resumes based on the requirements at hand. Instead, Natural Language Processing or NLP is the road to take. It has been around for a long time and is the technique of making a machine understand the natural language. 

The challenge with natural language is that humans do not always convey the same information using the same set of words. They do not even convey it in the same number of words. Hence there may be a lot of variation in two texts that convey the same information. Computational Linguistics has gone a long way to help us decode text using automated processes. 

Packages like NLTK in Python provide different tools to help break down a piece of text. You can perform processes on a resume with:

  • Tokenizing or tagging text
  • Identifying named entities 
  • Creating a tree of words that have associations
  • Generating a syntax tree
resume parsing
Fig: Syntax tree for a given statement- “I bought a car.”

However, natural language processing is not just about the available libraries. A tool that may work well on analyzing Tweets may not be a good fit for breaking down resumes. You will need to test the tool or library that you want to use on hundreds of resumes so that you can fine-tune it for the best results.

There’s no way you can get it right at one shot and there’ll always be some outlier resumes that can fall through the cracks. It is a continuous learning process where your results will get better with time. Such a tool would help in decreasing the number of profiles that need to be evaluated manually to a large extent. You can also tweak your system to provide a “percent-matched” result, instead of a direct “match” or “no-match”. This way you decide which profiles you want to take to the next round directly, and which one you want to re-evaluate manually.

2. Scraping Requirements

Recruitment personnel may not be aware of the requirements and good to have for every single position that needs to be filled. It may also prove difficult for the person in charge to connect with different departments to obtain the details. When counting on humans for creating a list, some points are bound to get missed.

Another problem that one may face – the same position may have different requirements for a senior, junior or mid-level executive. At times, the requirements may also be based on years of experience.

Having a full-fledged list or data-set against which resumes can be run to filter candidates may be a tough nut to crack. As more positions open up, and as the market undergoes radical changes, companies may need to hire employees for positions that never existed before.

resume parsing
Fig: Using Web Scraping to Add and Update Job Profiles

Let’s take the example of the renewable energy sector. It has seen steady growth in the last few years due to the increasing climate change scare.
This has led to a demand for engineers who are adept at working with different modes of renewable energy sources. Finding a requirements-list for such candidates may prove difficult even if you ask around.

Rather than depend on a set of humans, you can count on the web to help you create this dataset. You can scrape job listings off the web, sort them based on position, years of work-experience, seniority and industry. Then you can aggregate the requirements for each. You can go on to take a deeper dive to find the requirements that are most frequently mentioned. All this will help you create a set that you can use for your level 1 filtering of resumes using an automated tool.

3. Updating Requirements

Updating requirements is quite similar to scraping the requirements in the first place. You could scrape job listings, and create a data-set to check resumes against, but you cannot use the data for too long.

Industry standards change every year, and due to advancements in technology, you will need to make sure that you have added the latest requirements and removed the redundant ones from your data-set. An easy way to accomplish this would be to periodically scrape job listings of all the job-profiles at hand, and update the metrics and data points,that have changed.

The Challenges in Automated Resume Matching

Resumes are raw textual data, and they follow no predefined format. The candidates shortlisted through the process of CV parsing do not often turn out to be the best. This may cause hardships for any algorithm you write, and no matter to what extent you smoothen things out, a few resumes are bound to fail the algorithm. This could end up in a few false positives and negatives. While the false positives are bound to be filtered in the subsequent rounds of hiring, the false negatives are something you will need to be more careful about.

Scraping job listings may be a difficult task unless you have a dedicated web scraping team at hand already. Since most companies or job boards are more focused on the hiring process, the best option is to get the job data that is required for analysis from a specialized service provider. Our automated job discovery tool, JobsPikr, is a customizable job feed and analytics solution that can help you create a dataset of requirements for different positions and profiles easily. The tool will provide you with a real-time feed of job data and hence keeping your data-set updated shall also be a simple task.

Like many other processes, machines cannot take over hiring entirely. But the latest tech developments like web scraping, CV parsing, and machine learning can not only make the process more streamlined but also help both recruiters and job-seekers get better and faster results.

Contact us today for the latest job market insights.

CTA Banner