Classify Job Descriptions with Watson Natural Language Classifier

Remember the last time you applied for a job online? With countless applications, job descriptions, and departments to navigate, it can be overwhelming to find an ideal fit.

Considering how important hiring great talent can be, my team tried to envision an HR solution that would allow companies or applicants to filter roles by job description. After some quick brainstorming, IBM’s Watson Natural Language Classifier service seemed to be an optimal solution for this proof of concept.

70% of HR departments at top-performing companies believe that AI can add significant value by enhancing their talent acquisition process.

The sample app, below, addresses this problem of matching job descriptions and candidates to certain roles. An applicant can input qualifications or a job description and be matched with a category that suits their ideal role. On the back end, Watson Natural Language Classifier matches them to roles with similar qualifications.

The Classifier

Using my GitHub Repo as a template, you too can create this app with relative ease.

This proof of concept, uses the NYC Open Data’s Job Category data set, an open-source data set that contains the various job titles and descriptions of jobs from the City of New York.

Prepare your classifier in 2 steps:

  • Prepare your data by removing irrelevant columns and making sure text falls within the character limit. Your first column will be the job description while the other columns will be corresponding classes.
  • Simply train Watson Natural Language Classifier API via a .csv file.

While the Natural Language Classifier has a beta tooling available at the moment, you can call the API directly using the cURL command (yes, just one!) found on the getting started tutorial.

After training is complete, all that is left is to include your newly created classifier’s credentials in the sample app’s source code and deploy.

Job Description Sample App

Try out the sample app here or Fork the GitHub repo

Before you go, here are some quick tips:

  • You can input your own job description or list of qualifications, at the bottom you’ll see the results returned by the classifier on them.
  • Can’t think of a job description? Check out your favorite job listings page, paste a job description into the sample app and watch Watson Natural Language Classifier classify it!

Feel free to comment or message me for more information!