Patent Publication Number: US-2022215196-A1

Title: Devices, systems and methods for assessing a match between job descriptions and resumes

Description:
TECHNICAL FIELD 
     This invention relates to information retrieval from databases and, more particularly, to devices, systems and methods for assessing a match between job descriptions and resumes. 
     Similar methods, devices and systems are known from U.S. Pat. No. 9,665,641B1 and U.S. Ser. No. 10/691,732B1. 
     BACKGROUND ART 
     For too many years, recruiting and hiring have followed the same tedious process: source candidates, review resumes, screen candidates on the phone, conduct in-person interviews, and then—hopefully—hire the best person. 
     Since recently, hiring remained very similar to how things have been done for years with paper resumes and written applications—and that&#39;s despite an overwhelming number of new technologies becoming available. 
     However current solutions are not satisfactory and therefore, there is a need in the art for an employment recruiting system that automates the tasks involved in sourcing, screening and presenting qualified job applicants to an employer with employment needs. 
     SUMMARY OF INVENTION 
     Embodiments of the invention provide a device, a system and a method for assessing a match between job descriptions and resumes, as described in the accompanying claims. 
     Specific embodiments of the invention are set forth in the dependent claims. 
     These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       Further details, aspects and embodiments of the proposed solution will be described, by way of example only, with reference to the drawings. In the drawings, like reference numbers are used to identify like or functionally similar elements. Elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. 
         FIG. 1  is a block diagram showing a device according to an embodiment of the invention. 
         FIG. 2  is a block diagram showing a system according to an embodiment of the invention. 
         FIG. 3  is a flow chart showing a method according to an embodiment of the invention. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     The invention relates to a device  100  configured for assessing a match between job descriptions and resumes. 
     In the context of the invention, one should understand that a job description is a document, directed to job applicants, that clearly states the essential job requirements, job duties, job responsibilities, and skills required to perform a specific role. In other words, a job description defines what a role is, what skills, experience and/or degrees are required to perform it, and where the role fits in an organization. Job descriptions are also known as job specifications, job profiles, and position descriptions. From the organization&#39;s perspective, a job description is vital in ensuring that the applications received for the position closely match the needs of the role itself. 
     Also, in the context of the invention, one should understand that a resume is a document, directed to organizations, that clearly lists one&#39;s professional work experience, education, skills and achievements. 
     Finally, in the context of the invention, one should understand that a match occurs between a job description and a resume when the statement of the job description substantially fits with the listing of the resume. 
     In particular, the invention enables a bidirectional search such that device  100  is configured return at least one resume or at least one job description, depending on a given request. 
     Turning to  FIG. 1 , the device  100  comprises a memory  110 , a receiver  120 , a first machine learning engine  130  and at least one processor  140 . 
     The memory  110  is configured for storing a first database  111  and a second database  112 . 
     In an example, the memory  110  may be a volatile memory, such as a random-access memory. The memory may also be a non-volatile memory, such as a read-only memory, a flash memory, a hard disk drive or a solid-state drive; or a combination of the foregoing types of memories. 
     In another example, the first database  111  and the second database  112  may be represented in a variety of forms including data storage files, lookup tables, or a database management system (DBMS) executing on one or more database servers. The database management system may be a relational (RDBMS), hierarchical (HDBMS), multidimensional (MDBMS), object oriented (ODBMS or OODBMS) or object relational (ORDBMS) database management system. 
     The first database  111  comprises one or more job description documents wherein each job description document defines a description of a job, as explained above. 
     The second database  112  comprises one or more resume documents wherein each resume document defines a resume for applying to a job description, as explained above. 
     In an embodiment, the first database  111  and the second database  112  may be comprised in a single database, rather than in several databases. 
     The receiver  120  is configured for receiving a matching request from a user. 
     In a first embodiment, the matching request comprises on one or more keywords entered by the user. 
     In an example, the terms “Information systems coordination” and “IT management” may be used to search for a 2 nd  line Support Engineering job description or for a 2 nd  line Support Engineer. 
     In another example, the terms “Project management”, “Requirements definition and management”, “Programming/Software development” and “Testing” may be used to search for a Project management job description or for a Project manager. 
     In a second embodiment, the matching request comprises at least one document provided by the user. 
     In an example, the format of the document may be of any type such as PDF, HTML, TXT, XPS or ePub. 
     Furthermore, in that embodiment, the device  100  comprises a second machine learning engine  150 . 
     The second machine learning engine  150  is configured for extracting, by implementing a supervised learning algorithm, one or more keywords from the provided document. 
     In particular, based on a set of training dataset pairs with sufficiently diverse set of metrics, the second machine learning engine  150  has been trained to determine whether one or more predefined keywords are found in a given document. 
     Besides, the processor  140  is further configured for using the one or more predefined keywords as the matching request. 
     In an example, the second machine learning engine  150  is selected from a group consisting of an artificial neural network and a support vector machine. 
     Returning to  FIG. 1 , the first machine learning engine  130  is configured for determining, by implementing a classification algorithm, a correlation between the matching request and a keyword-based data structure. 
     In a first embodiment, the classification algorithm is selected from a group consisting of decision trees, classification rules, function models, and instance-based learner methods. 
     In particular, the keyword-based data structure defines, for each document of the first database  111  and the second database  112 , one or more predefined keywords that have been found in the document. 
     In an example, the one or more predefined keywords comprise a skill, a position, a job role, an education level. 
     The keyword-based data structure may be obtained from a combination of the second machine learning engine  150  and the processor  140 . 
     Indeed, in an embodiment, the second machine learning engine  150  is also configured for extracting, by implementing a supervised learning algorithm, one or more keywords from each document of the first database  111  and the second database  112 . In particular, the second machine learning engine  150  has also been trained to determine whether one or more predefined keywords are found in a given document. 
     Besides, the processor  140  is also configured for populating the keyword-based data structure so as to associate each document of the first database  111  and the second database  112  with the respectively found one or more keywords. 
     Returning to  FIG. 1 , the processor  140  is further configured for generating a matching score based on the strength of the correlation. 
     Later, the strength of correlation may be displayed as a result, to a user of the device  100 . 
     In an example, for a given matching request, one could select and display the job descriptions or resumes where the strength of correlation is beyond a predefined correlation strength value. 
     In a particular embodiment, the device  100  comprises a third machine learning engine  160 . 
     The third machine learning engine  160  is configured for extracting, by implementing a supervised learning algorithm, one or more degrees of expertise for each of the one or more keywords respectively found in a given document. 
     In particular, based on a set of training dataset pairs with sufficiently diverse set of metrics, the third machine learning engine  160  has been trained to determine a degree of expertise of a predefined keyword found in a given document. 
     In the context of the invention, a degree of expertise defines a level of mastery of a given skill. For example, if a resume comprises a level of mastery of “C++ programming” expressed, for instance, over a scale extending from a first value to a fifth value, the third machine learning engine  160  is capable of extracting the appropriate value expressed in the resume. Of course, the third machine learning engine  160  is also capable of doing the same within a job description document. 
     Besides, in this particular embodiment, the processor  140  is further configured for populating the keyword-based data structure so as to associate each of the one or more keywords respectively found in a given document with the respectively found one or more degrees of expertise. 
     In an example, the third machine learning engine  160  is selected from a group consisting of an artificial neural network and a support vector machine. 
     Turning to  FIG. 2 , the invention also relates to a computer system  10  for assessing a match between job descriptions and resumes. 
     In  FIG. 2 , the computer system  10  comprises a user interface  11 , the device  100  and a cloud network  12 . 
     The user interface  11  is configured for allowing a user to enter a matching request. Furthermore, the user interface  11  is also configured for visualizing the results, as explained above. 
     In a first example, the user interface  11  is a graphical user interface (GUI). 
     In the context of the invention, a GUI is a type of user interface that allows users to interact with electronic devices with images rather than text commands. A GUI represents the information and actions available to a user through graphical icons and visual indicators, as opposed to text-based command interfaces. Actions are usually performed by a user through direct manipulation of the graphical elements. 
     In a second example, the user interface  11  is an application programming interface to other programming languages. 
     The cloud network  12  comprises a multi-tenant platform runtime system, a plurality of web servers, and one or more virtualized SaaS applications. 
     In particular, the user interface  11  is hosted in a virtualized SaaS application of the cloud network  12 . 
     In an example, the virtualized SaaS application is a web application. 
     In the context of the invention, a SaaS application runs on virtual machines of cloud network  12 . This way, the SaaS application is accessible from various client devices through a thin client interface. 
     In another example, the cloud network  12  can be established using Wi-Fi, cellular, or other communication technologies. In some embodiments, the cloud network  12  can be an internal network that is limited to one or more specific locations. In some embodiments, the cloud network  12  can be located (or extend) remotely. In some embodiments, the cloud network  12  can provide connection means to the Internet and/or to remote data storage. 
     Furthermore, the first machine learning engine  130 , the second machine learning engine  150  and the third machine learning engine  160  are hosted on one or more of the plurality of web servers. 
     Turning to the  FIG. 3 , the invention also relates to a computer-implemented method  200  for assessing a match between job descriptions and resumes. 
     At step  210 , the method  200  obtains, from a memory, a first database comprising one or more job description documents, each job description document defining a description of a job, as already explained above. 
     At step  220 , the method  200  obtains, from the memory, a second database comprising one or more resume documents, each resume document defining a resume for applying to a job description, as already explained above. 
     In a first embodiment of step  210  and step  220 , the method  200  further comprises additional steps. 
     In particular, at step  241 , the method  200  extracts, by a second machine learning engine implementing a supervised learning algorithm, one or more keywords from each document of the first database  111  and the second database  112 , the second machine learning engine having been trained to determine whether one or more predefined keywords are found in a given document. 
     Then, at step  242 , the method  200  populates a keyword-based data structure so as to associate each document of the first database  111  and the second database  112  with the respectively found one or more keywords. 
     In an example, the one or more predefined keywords comprise a skill, a position, a job role, an education level, as already explained above. 
     In a second embodiment of step  210  and step  220 , the method  200  further comprises additional steps. 
     In particular, at step  243 , the method  200  extracts, by a third machine learning engine implementing a supervised learning algorithm, one or more degrees of expertise for each of the one or more keywords respectively found in a given document, the third machine learning engine having been trained to determine a degree of expertise of a predefined keyword found in a given document. 
     Then, at step  244 , the method  200 , populates the keyword-based data structure so as to associate each of the one or more keywords respectively found in a given document with the respectively found one or more degrees of expertise. 
     In an example, the one or more predefined keywords comprise a skill, a position, a job role, an education level, as already explained above. 
     At step  230 , the method  200  receives a matching request from a user. 
     In a first embodiment, the matching request comprises on one or more keywords entered by the user, as already explained above. 
     In a second embodiment, the matching request comprises at least one document provided by the user. In that case, the methods  200  further comprises additional steps. 
     In particular, at step  231 , the method  200  extracts, by a second machine learning engine implementing a supervised learning algorithm, one or more keywords from the document, the second machine learning engine having been trained to determine whether one or more predefined keywords are found in a given document. Then, at step  232 , the method  200  uses the one or more predefined keywords as the matching request. 
     At step  240 , the method  200  determines, by a first machine learning engine implementing a classification algorithm, a correlation between the matching request and the keyword-based data structure, the keyword-based data structure defining, for each document of the first database  111  and the second database  112 , one or more predefined keywords that have been found in the document. 
     At step  250 , the method  200  generates, by a processor, a matching score based on the strength of the correlation 
     In the foregoing specification, the proposed solution has been described with reference to specific examples of embodiments of the proposed solution. It will, however, be evident that various modifications and changes may be made therein without departing from the broader scope of the proposed solution as set forth in the appended claims. 
     Those skilled in the art will recognize that the boundaries between logic blocks are merely illustrative and that alternative embodiments may merge logic blocks or circuit elements or impose an alternate decomposition of functionality upon various logic blocks or circuit elements. Thus, it is to be understood that the architectures depicted herein are merely exemplary, and that in fact many other architectures may be implemented which achieve the same functionality. 
     Any arrangement of devices or logic blocks to achieve the same functionality is effectively “associated” such that the desired functionality is achieved. Hence, any two devices or logic blocks herein combined to achieve a particular functionality may be seen as “associated with” each other such that the desired functionality is achieved, irrespective of architectures or intermediate devices. Likewise, any two devices or logic blocks so associated can also be viewed as being “operably connected,” or “operably coupled,” to each other to achieve the desired functionality. 
     Furthermore, those skilled in the art will recognize that boundaries between the above-described operations are merely illustrative. The multiple operations may be combined into a single operation, a single operation may be distributed in additional operations and operations may be executed at least partially overlapping in time. Moreover, alternative embodiments may include multiple examples of a particular operation, and the order of operations may be altered in various other embodiments. 
     However, other modifications, variations and alternatives are also possible. The specifications and drawings are, accordingly, to be regarded in an illustrative rather than in a restrictive sense. 
     In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word “comprising” does not exclude the presence of other elements or operations than those listed in a claim. Furthermore, the terms “a” or “an” as used herein, are defined as one or as more than one. Also, the use of introductory phrases such as “at least one” and “one or more” in the claims should not be construed to imply that the introduction of another claim element by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim element to inventions containing only one such element, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an.” The same holds true for the use of definite articles. Unless stated otherwise, terms such as “first” and “second” are used to arbitrarily distinguish between the elements such terms describe. Thus, these terms are not necessarily intended to indicate temporal or other prioritization of such elements. The mere fact that certain measures are recited in mutually different claims does not indicate that a combination of these measures cannot be used to advantage.