Recruitment Automation: The Next Big Thing in RPA
On , by
In most of the MNC and other companies, there will be thousands of candidates applying for jobs where the HR will have to verify and check if the candidate meets the exact requirements and skillsets required by the company.
It is a heavy time-consuming process for the HR team. If the candidate matches exactly with the requirement of the company then we need to save the necessary details like name, email address and contact number in an excel file.
Using the details in the excel file, we must send appropriate tasks to the candidates and also set the due date for the task.
If the candidate responds on or before the due date, we need to reply back that we received their task and must examine how they performed the tasks. If their tasks pass the test cases, then we must send the call letter to the candidate stating that they have been selected for the one on one interview.
Therefore this process at least takes three days’ time to select the right candidate for the company. This can be minimized by automating the whole process. So the workload of HR is reduced. The only thing remaining is the HR team to finalize the candidate on one on one interview process.
We can make this work done by automation by breaking down into sequential steps:
- Listen to the incoming mails. Check if it contains the attachment and also check the subject and the body for keywords like resume, cv, etc.
- Download the attachments and save them in a folder.
- Read all the pdf in the folder.
Check if the data in the pdf files match the skills and requirements of the company.
Ex: keywords to be found in the candidate’s resume are nodejs, reactjs, HTML, CSS. If the keywords match, then fetch the email address, phone number, and address from the selected candidate’s resume.
Then write those information into an excel file under its respective field names like candidate name, email address, etc.
Send tasks with due-date to the selected candidates.
If you receive a reply mail before the due date, then apply the received project through test cases.
If the project passes the test cases, then we need to send an email for the one on one process.
Check the incoming emails whether the subject, body or attachment contains keywords like resume, cv, applying for jobs, etc. If it contains those keywords, then look for attachment. If attachments are present, then check whether it is a pdf or not. If not then reply to the user to send the resume in pdf format. If all the conditions match, then save the attachment in a folder. We can do this process using get IMAP mail messages activity so we can fetch all the mails and store it in a variable. Loop through it and add if condition. We can use the Contains function to get emails that contain only specific keywords and also for downloading the attachments from those emails to a specific folder.
Using pdf automation, we can extract text, images, and all other stuff from the pdf with reading pdf to text activity. We can use regex to match our required keywords like HTML,CSS,js, nodejs, etc. If all the required skills match, then fetch the email, phone number, address and store them in separate variables.
With excel automation, we can read text, write text and do a lot more. We can either use datables or directly write data one by one into each cell present in the excel file. But this process can be tedious for writing a huge amount of data. In order to save time, we can use build datatable. With build datatable activity, we can generate a table internally in which we can specify the number of columns we need. Using add row activity, we can add rows in the datatable every time this activity is called. The process of loading the required data to the internally generated table in the excel sheet takes only 5% of the time compared to writing data one by one. Let us consider the whole process will take around 10minutes. But using datatable, it takes only 5s to finish the whole process. That’s the reason why we use datatables instead of writing data into each cell one by one.
Recording plays a major role in the automation process where we can record the manual the process and make the robot replicate the process exactly like how we did. Recording has different types: basic, desktop, web, image, native Citrix. By using recording, we can choose save the excel file or we can use send hotkey and ctrl+s to save the excel file.
To avoid errors during the process, we can use exceptions. To do this, we can use try-catch block activity in the workflow. In the try block, we can specify the processes where there are possibilities of getting exception errors. In the catch block, we need to specify what kind of exception we are going to handle and how we are going to proceed if the error occurs. For example, let’s say we got an exception, invalid email, instead of showing an error message we can display a message box telling the user to enter the correct email address. In case if there are no requirement matches in the emails we received, then no pdf files will be saved in the folder. This is when the null exception arises. To avoid this, we can catch the exception and display a message box “No match found, try again later”.
After saving data in the excel file, iterate through each row in the email column and using email automation we can send mail to the selected candidate’s email address. We can do this by sending SMTP mail messages. So that we will be able to send emails to all the shortlisted candidates with a text “you are selected” in the subject and mentioning the details of the task to be completed along with the due date in the body.
Filter the emails using the due date and download the task files of the filtered emails. Then test those tasks with unit test cases and if they pass the test cases, then send a reply to the respective emails about the one-on-one interview process along with the interview date.