Shortening online recruitment time using artificial intelligence tools. Helping develop an artificial recruiter.- QC-192

Preferred Disciplines: Machine Learning/ Artificial Intelligence (Natural language processing, computer vision), Neuroscience, Human Resources (Masters, PhD or Post-Doc level)
Project length: Flexible
Approx. start date: July 2019
Location: Montreal, QC
No. of Positions: 6
Preferences: None
Company: Anonymous

About Company:

Company specializing in recruitment technologies, solutions and services.   Dedicated to resolving scalable recruitment and job search challenges through technologies, artificial intelligence and human creativity.  The company leverages the power of a cloud-based recruitment technology is working towards connecting the world & automating the match making process between candidates and employers, using A.I.

Summary of Project:

Our company has been working towards developing a solution to address the longstanding and increasingly important issue of reducing time and cost associated with recruitment. This issue can now be addressed using artificial intelligence tools. 

This project aims to enhance the recruitment process by identifying optimal candidates for given job openings in a shorter amount of time. Using machine learning algorithms, recruiters should be able to find the perfect candidates for their available positions. Conversely, candidates should also receive suggestions and be directed towards opportunities that best match to the qualifications expressed in their profiles.

Over time, the algorithm should be able to learn and provide more refined results as it processes more job and candidate information.

Research Objectives/Sub-Objectives:

  1. Identify available machine learning algorithms in the context of recruitment/human resources. Including use of sentiment detection algorithms and natural language processing (text-to-vector, dictionary model). Use of supervised Machine Learning: Based on label data set (can we use the available data from matching API?) Collect feedback from candidates & employers. Use of unsupervised Machine Learning: due to large amount of available data. Would like to use any database, not only labeled databases
  2. Identification of approaches to identify an optimal candidate by analyzing dozens of variables between a candidate and a job posting. Categorizing candidates according to attractiveness.
  3. Evaluation/Pre-processing of candidate data and cross referencing with job descriptions to find the optimal candidate for a given position. (use of online resume sources, local hard drive, LAN, email, ATS databases).
  4. Score and highlight text in CVs using key terms. Sort CVs by relevance, location, and source. Refine results locally without repeating internet search.
  5. Parse candidate info from social media profiles for a more complete candidate profile. Analyze over 70 variables, including social signals, to determine when a candidate is ready to change jobs
  6. Development of agnostic service for multipurpose use of functionality (data manipulation?)
  7. Loop Info (Candidate info + Job info input into Loop) so that algorithm will learn from employer’s feedback (if performance evaluations are sub-optimal, the employer can modify the search criteria). Gather feedback on ranking/classification from candidates and employers and include performance evaluation.
  8. Once algorithms are optimized, creation of Performance Criteria Templates to be implemented and utilized to quickly match candidate requirements to a job posting depending industries/sectors, and then refined and saved for specific job postings.


    • To be discussed

    Expertise and Skills Needed:

    • Knowledge of Python 3
    • Machine learning, with focus on sentiment detection, natural language processing
    • Knowledge/Previous Studies in cloud computing will be a plus
    • No-SQL / SQL
    • Development and testing under the following environments: Windows, Linux
    • Usage of existing libraries: scikit-learn, TensorFlow
    • Data Scientist
    • AI Specialist
    • Optimization Specialist

    For more info or to apply to this applied research position, please

    1. Check your eligibility and find more information about open projects.
    2. Interested students need to get the approval from their supervisor and send their CV along with a link to their supervisor’s university webpage by applying through the webform