System and method for improving a resume according to a job description

The present invention relates to a system and method for improving a resume according to a job description, including generating a first user profile signature based on a first user profile element associated with a user, generating a first job description signature based on a first job description element associated with a job description; and comparing the first user profile signature with the first job description signature to determine a first score indicating a strength of a match between the first user profile element and the job description.

FIELD OF THE INVENTION

The present invention relates generally to a system and a method for resume services, more particularly to a system and method for improving a resume according to a job description.

BACKGROUND OF THE INVENTION

A resume enables a jobseeker to articulate his or her skills and experiences in ways relevant to particular job opportunities. Resumes are scanned and sorted by recruiters or employers manually or using automated systems to determine relevancy of candidates for a particular position the employer is seeking to fill. Candidates possessing top-ranked resumes are the ones that get called for subsequent interviews. There is no surprise then that it is common practice for jobseekers to focus or customize the content of their resumes based on the nature of the jobs they are interested in so that the resume is more relevant for purposes of employer screenings.

The problem is that there is no system designed to enable content focusing of a resume based on the requirements of a particular job. Existing systems range from word processors to web-based resume builders that enable users to compose or build a single, general or all-purpose resume. The level of customization supported by such existing systems is usually directed only to applying different formatting styles or changing the look and feel of the resume automatically.

The approach that most jobseekers use for focusing their resume is to use one of the existing systems to build a resume, then make a copy of that resume and edit it to manually remove, add or paraphrase content based on what the user perceives is relevant or not for that job opportunity based on their understanding of the job description. Users that follow this process end up having several different resumes which they then use to copy relevant content from and paste into a new resume for a particular job, making focusing a resume tedious and time-consuming.

Yet another problem is the qualitative nature of resume reviews. As a result of the ambiguity for jobseekers in how employers perceive resumes, a large number of jobseekers count on reviewers and resume writers (i.e., humans) to suggest content changes in their resume so that it is more focused for the job or position type they are after. The suggestions of different resume reviewers, who in turn basically perform similar objective processes as jobseekers, typically generate inconsistent results.

SUMMARY OF THE INVENTION

The above-described problems are addressed and a technical solution is achieved in the art by the system and methodology for generating a resume according to a job description described herein. In an embodiment, the system may automate the evaluating of content and content changes. The system may score how relevant the content in a resume is to a particular job. This instigates jobseekers to paraphrase or modify content that scores low to see how it changes the overall score, thus providing a systematic mechanism for accurately evaluating changes to resume content.

One or more embodiments of the present invention are capable of automating selection of content for focusing a resume. The system may determine how relevant every part of a resume is compared to a job description and select the most relevant parts of the resume for generating a focused resume.

In an embodiment, the system may provide content suggestions by comparing a job description and a resume to identify what type of information is missing in the resume for the job. In an embodiment, the system further compares the user's resume data with others on the system and/or other identified on external sources (e.g., with resume data of those already holding the desired job or a similar position) to identify similar content that better matches the job description and then provides these as examples to the user to add to, modify, and/or paraphrase their resume content. For example, the system may suggest alternative synonymous titles for previously held positions to make the resume more relevant to a particular job opportunity/posting, or identify educational coursework to complement a resume for a particular job opportunity/posting.

It is to be understood that the attached drawings are for purposes of illustrating the concepts of the invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1illustrates a block diagram of an environment including a resume generation program (RGP)110for improving a resume according to a job description106in accordance with an embodiment of the present invention. In an embodiment, the RGP110may generate, build, modify, and/or update a resume. It should be readily apparent to those of ordinary skill in the art that system depicted inFIG. 1represents a generalized schematic illustration and that other components may be added or existing components may be removed or modified. Moreover, the system may be implemented using software components, hardware components, or combinations thereof.

As shown inFIG. 1, the RGP110receives professional user profile information105to create a base professional/work history profile. As used herein, professional user profile information includes, but is not limited to, a written summary which accounts for one's professional or work experience and qualifications. In addition, the RGP110may receive one or more job descriptions106for particular jobs that the user104is interested in applying to. A job description includes, but is not limited to, one or more characteristics, keywords, and/or phrases, parameters, and/or other information describing and/or relating to a job opportunity opening. In an embodiment, the RGP110may retrieve the job description106from a career service. In an embodiment, the RGP110may enable the user104to interact with a resume editor150that displays the most relevant content from the base professional/work history profile for the job description106and allows the user104to edit the resume. In an embodiment, the RGP110may input the user profile information105and job description106into a content evaluator120, content selector140, and content suggestor130for further operations as described below.

In an embodiment, the content evaluator120is a module configured to receive user profile elements107of user profile information105and job description elements109of the job description106, and determine the relevancy of each user profile elements107for the job description106, based on job description elements109, as well as an aggregate relevancy score of the user profile elements107for the job description106, and then outputs relevancy score information appended to each user profile element107, as shown inFIG. 1. A user profile element107may be a sentence or combination thereof (unstructured text) that is a component of a user's job history, including, but not limited to, a user's contact information, geographic location, education, job objective, and professional work history. A job description element109may be a sentence or combination thereof (unstructured text) that is a component of a job description106, including, but not limited to, an essential job function, required knowledge and critical skills, minimum education, physical demands, location, environmental factors, desired experience, and any explanatory information that may be necessary to clarify job duties or responsibilities.

In an embodiment, the content selector140is a module configured to receive data from the content evaluator120. Such data includes, but is not limited to, data with respect to the user profile elements107, the job description elements109, and the relevancy score information from the content evaluator120. In an embodiment, the content selector140may select certain user profile elements109which may be included or may be suggested to be included in a resume.

In an embodiment, the content suggestor130is a module configured to receive data from the content evaluator120and from the content selector140. Such data includes, but is not limited to, data with respect to the user profile elements107, the job description elements109, and the relevancy score information from the content evaluator120and the user profile elements107that have been selected to be included in a resume from the content selector140.

In an embodiment, the RGP110may be implemented on a processing device112. The processing device112may be, for example, a server for generating a resume according to a job description106. As used herein, the term “processing device” is intended to include, but is not limited to, a programmable electronic machine that performs executes software to perform several operations such as assemble, store, correlate, or otherwise processes information.

The RGP110includes a database114for containing and storing a plurality of user profile information105, job descriptions106, user profile elements107and job description elements109. As used herein, the term “database” is intended to include, but is not limited to, a repository for containing and storing data.

The RGP110also includes a computer-readable storage medium (e.g., a hard drive)118, a resume generation module116(“RGM116”), and a wireless device and/or an Internet interface (not shown) that allows for communication with any type of consumer device. As used herein, the RGM116is intended to include, but is not limited to, a computer program including one or more sets of instructions provided to implement the methods500and600, described below. In an embodiment, the RGM116may be implemented by a processing device112and configured for improving a resume according to a job description106. In another embodiment, RGM116resides on the computer-readable storage medium (e.g., a hard drive)118.

The computing environment comprises a network102(e.g., the Internet, or the wired or wireless telephone network), which may be any type of communications medium that allows for the professional user profile information105to be communicated between the RGP110and the user104, as shown inFIG. 1.

The RGP110is configured to communicatively connect to one or more communication devices108associated with the user104via the network102. The communication device108is intended to include, but is not limited to, any device capable of communicating with the RGP110via the network102including, but not limited to a computer, a smart phone, a wireless device, a tablet, and/or any suitable computing device. In an embodiment, the communication device108is a mobile device (e.g., a handheld device, smart phone or web portal device) that communicates with the network102via a wireless connection.

The RGP110may also include a computer-readable storage medium or hard drive118for storing the database114and a wireless device and/or an Internet interface (not shown) that allows for communication with any type of consumer device. In an embodiment, the RGP110includes a processing device112(e.g., a processor) that executes one or more computer software programs configured to perform the functions described in detail below with reference toFIGS. 5 and 6.

FIG. 2shows an example implementation of the content evaluator120, content suggestor130, content selector140, and resume editor150, according to an embodiment of the present invention. In an embodiment, the content evaluator120receives a profile element107and a job description element109and directs the elements through a semantic analyzer122. A semantic analyzer122is a trained system that may receive text and represent them as vectors in term space, may identify the top topics and concepts in a piece of text, based on context, and represent the text in the form of a semantic signature (e.g., user profile signature124and job description signature126). A semantic signature, which may be derived from the profile element107and/or the job description element109, includes, but is not limited to, a key word or a series of key words indicating the most prevalent topics and concepts from the respective element. The semantic signature may be a multi-dimension vector of concepts and weights succinctly representing text. The semantic signature of each user profile element107may be compared to the semantic signature of the job description element109(e.g., user profile signature124may be compared to job description signature126). In an embodiment, the scoring logic module128may include one or more sets of instructions for determining a relevancy score to indicate how relevant the user profile element107is for the job description element109. A relevancy includes, but is not limited to, a numerical indicator on a finite scale of numerical indicators. In an embodiment, the relevancy score may be assigned to each user profile element107. In an embodiment, the relevancy score may be calculated as the sum of the products of the weights of the intersecting dimensions of the user profile signature124and the job description signature126. Following is exemplary code to illustrate the scoring mechanism:

While this scoring algorithm may provide a reasonable relevancy score, the scoring algorithm may be implemented as a trainable algorithm that can take in more signals such as user scoring and selection corrections, keyword matches, personalization, etc. to increase accuracy and one having ordinary skill in the art will appreciate that types of additional signals that may be used.

In an embodiment, the user can edit the profile elements107with low relevancy score in the resume editor150graphical user interface (GUI)152to see the change in the relevancy score for that profile elements107and the aggregate relevancy score, as they type. New profile elements107can be created by the user similarly to increase the aggregate relevancy score.

In an embodiment, the content selector140receives the user profile elements107of a base professional/work history profile appended with relevancy information (in other words, the output of the content evaluator) for the job description106, and defines a relevancy score limit or threshold. The relevancy score limit includes, but is not limited to, a numerical indicator which is a threshold for determining whether a specific user profile element107is selected to be included in a resume, hence leading to a set of user profile elements107or profile subset that may be included in a resume, as displayed on a graphical user interface (GUI)152shown inFIG. 2.

According to an embodiment of the present invention, in the implementation illustrated inFIG. 2, the content selector receives the output of the content evaluator120(e.g., the user profile elements107and appended records with respective relevancy scores). Based on the relevancy scores and parameters set by the user104, such as, for example desired number of pages for a resume, the display logic module142and the selection logic module144may determine the relevancy score limit or threshold. Using that relevancy score threshold and further parameters set by the user104, such as, for example whether they care to always have their entire education listed in a resume and whether they want no experience gaps in their resume, it may be determined whether or not to select each user profile elements107into a resume and display it on the GUI152of the resume editor150. Following is an example process.

In an embodiment, the content selector140may create a list of relevancy scores of user profile elements107. This list may include the relevancy score of the profile element, the domain object model (DOM) id of user profile element107to be displayed, the user profile element's107“show” attribute (true/false), and the user profile element's107display order. The DOM id includes, but is not limited to, a reference to a specific part of a web page. In an embodiment, the user profile element's107display order may be defined by the user104. The content selector140may sort the list of relevancy scores of user profile elements107by, for example, the least score to greatest score and determine the desired length of the resume, for example, the number of pages of the resume multiplied by the length of one page in pixels.

The content selector140may iterate a process over the sorted list of relevancy scores from the first user profile element107to the last. Such process may include displaying all the user profile elements107in the list on the resume editor150. If the display of all of the user profile elements107in the list can be displayed within the desired length of the resume, then the process ends. However, if the display of all of the user profile elements107in the list exceeds what can be displayed within the desired length of the resume, then the content selector140removes the user profile element107with the lowest relevancy score from the display. This process continues until the list of remaining profile elements107can be displayed within the desired length of the resume.

In an embodiment, the content suggestor130receives the job description106and the user profile elements107appended with relevancy information (i.e., the output from the content evaluator120), and identifies similar profile elements107from, for example, other users on the system or on external systems that are more relevant (e.g., have higher relevancy scores), and outputs them as a suggested profile element134for each user profile element107, as shown inFIG. 1.

The content suggestor130may receive, from a database, resume profiles or resumes of others hired in a job similar to the job description132as a source for content for recommendations and suggested profile elements134and suggested profile signatures136. A suggested profile element134may be a component of a person's job history, including, but not limited to, a user's education, job objective, summary, professional work history and skills, wherein the person having been already hired in a job similar to the job description132. A suggested profile signature136may be derived from the suggested profile element134includes, but is not limited to, a key word or a series of key words or multi-dimensional vector indicating the most prevalent topics and concepts from the suggested profile element134.

An example database from which the content suggestor130may receive resume profiles or resumes includes, but is not limited to large professional networking sites such as LinkedIn™, which have several professional profiles and may serve as a good source of such resumes. The RGP110described herein may build up a pool of profiles from its users—the advantage of using this pool is that the profile element records already have associated semantic signatures (e.g., suggested profile signatures136) which may be utilized in the implementation as illustrated inFIG. 2.

In an embodiment, the suggestion logic module138may include one or more sets of instructions for a suggestion algorithm which determines whether a suggested profile element134should be included in a resume. For example, for a user profile element107that is not too relevant for the job description106, the content suggestor130uses the user profile element's107semantic signature (i.e., the user profile signature124) to identify other profile elements with the closest semantic signatures from its pool of suggested profile elements134across various other users. The semantic signatures of these suggested profile elements134(i.e., the suggested profile signatures136) are then compared to the semantic signature of the job description106(i.e., the job description signature126) to compute relevancy scores (as described above relating to the scoring algorithm in the content evaluator120), and those suggested profile elements134with higher relevancy scores may be shown as suggested profile elements134for the resume editor150.

In an embodiment, if the company name and job title name of the job description106is available to the content suggestor130, the content suggestor130may use such information to look up other user profiles (i.e., suggested profile elements134) containing that company and job title name. These identified profiles may represent people who currently or in the past held the same or a similar job as the job that the user104desires to obtain. In an embodiment, the suggested profile elements134may be provided as content suggestions or alternatives.

According to an embodiment of the present invention, the content suggestor130is configured to identify what kind of information may be missing from a resume for the job description106, based on a comparison of the semantic signatures of the user profile elements124and the job description106. If, for instance, some of the top concepts and topics in the semantic signature of the job description106(e.g., requisites and desirable skills in the job description) are not found in the semantic signatures of the user profile elements107, these concepts may be displayed to the user104so that the user104may know what kind of information is missing from his or her resume for that job description106and may accordingly add content to the resume, or can be used to identify coursework or classes that will offset what the user is missing in their resume.

Embodiments of the present invention include a GUI152as shown inFIGS. 3,4A, and4B. The user104may first create a profile by adding content such as sentences about what they have accomplished in previous work experiences (FIG. 3). In an embodiment, the RGP110may treat each of these sentences as different user profile elements107. In an embodiment, the RGP110may parse an existing resume of the user104to generate the different profile elements107. The user107may then copy the description of a job they are interested in (for instance, from a job board) and paste it into the RGP110as shown inFIG. 4A. Upon clicking a button (e.g., the “Auto Focus” button inFIG. 4A), the RGP110may select those Profile Elements (either the user profile elements107or the suggested profile elements134) that rank highest based on the job description106and that can fit in a desired resume page length. The GUI152may display the profile elements in a desired resume format or template in the resume editor150(FIG. 4A). The RGP110may restore into the resume any of the profile elements that were earlier removed (e.g., by the “Removed Info” button as illustrated inFIG. 4A) or remove profile elements that were selected by the content selector140, based on receiving information from the user104. The RGP110may determine a score of how well the user's104resume on the resume editor is focused for the desired job (e.g., the “JobFocus” Score as illustrated inFIG. 4A). In an embodiment, each profile element may have an indicator of how relevant it is for the desired job, and the resume editor150may receive instructions from user104to edit or paraphrase profile elements with low indicators and evaluate if the edit is better or not based on a change in the score. The RGP110may also provide the user104with information about what is missing from their resume, and recommendations of similar terminology for their profile elements and prior job titles that are more relevant to the desired job, and the user104may instruct the RGP110to use those instead (not shown inFIG. 4A).

FIG. 4Billustrates three progressive example displays of GUI152. InFIG. 4B, Example 1, the GUI152displays a text box that includes bullet point from a job description element109, e.g., “Plan and conduct user research and requirements gathering work sessions” which is missing or doesn't have corresponding information in the resume. An interactive text box may be located below the job description element for the user104to include his or her profile element107. InFIG. 4B, Example 1, the user104has not yet inserted a profile element107into the interactive text box. As such, the text box that includes bullet point from a job description element is absent of any color or shaded fill.

InFIG. 4B, Example 2, the GUI152displays a user profile element107such as “Managed the user experience of the new product” entered by the user. The RGP110determines the strength of a match between this user profile element107and the job description element109. In an embodiment, the strength of the match may be reflected in a shading of the text box that includes bullet point from the job description element109. InFIG. 4B, Example 3, the GUI152displays a user profile element107such as “Managed the user experience and research for the new product” that has been edited by the user. The RGP110determines that the strength of the match between this user profile element107and the job description element109is greater than the strength as described inFIG. 4B, Example 2. Accordingly, the shading of the text box that includes bullet point from the job description element109is darker in Example 3.FIG. 4B, Example 3 also illustrates a resume section of the user's resume for which this user profile element107may be added, e.g., XYZ corporation. One skilled in the art will appreciate that the above examples are not intended to be limiting to embodiments of the invention and that other GUI152displays may be utilized to achieve various embodiments of the invention.

FIGS. 5 and 6illustrate methods500and600, respectively, for improving a resume according to a job description. In an embodiment, a system (e.g., RGP110including RGM116, as shown inFIGS. 1 and 2) is provided to implement the methods500and600.

InFIG. 5, block502, the RGP110receives professional user profile information105and a job description106from a source (e.g., a communication device108associated with a user104) via a network102. In block504, the RGP110generates user profile elements107based on the user profile information105, and generates job description elements109based on the job description106. In block506, the RGP110generates user profile signatures124based on the user profile elements107, and generates job description signatures126based on the job description elements109.

In block508, the RGP110compares the user profile signatures124to the job description signatures126to obtain relevancy scores for the user profile elements107. In block510, the RGP110identifies suggested profile signatures136from the database114. In block512, the RGP110compares the suggested profile signatures136with the job description signatures126to obtain relevancy scores for the suggested profile signatures136. In block514, the RGP110compares the relevancy scores for the suggested profile signatures136with the relevancy scores for the user profile signatures124.

In block516, if the relevancy score for the suggested profile signature136is greater than the relevancy score for the user profile signature124, then in block518the RGP110suggests paraphrase the user profile element107to be like the suggested profile element134or include the suggested profile element134instead of the user profile element107in a resume and the process ends at block522. If in block516the relevancy score for the suggested profile signature136is less than or equal to the relevancy score for the user profile signature124, then in block520the RGP110suggests to disregard the suggested profile element134and include the user profile element107in a resume, and the process ends at block522.

InFIG. 6, block602, the RGP110receives professional user profile information105and a job description106from a network102or from a communication device108associated with a user104. In block604, the RGP110generates user profile elements107based on the user profile information105, and generates job description elements109based on the job description106. In block606, the RGP110generates user profile signatures124based on the user profile elements107, and generates job description signatures126based on the job description elements109.

In block608, the RGP110compares the user profile signatures124to the job description signatures126to obtain relevancy scores for the user profile elements107. In block610, the RGP100determines a relevancy score threshold. In block612, the RGP110determines whether the relevancy score for the user profile element107is greater than the relevancy score threshold. If the relevancy score for the user profile element107is greater than the relevancy score threshold, then in block618the user profile element107is included in a resume and the process ends at block622.

If in block612the relevancy score for the user profile element107is not greater than the relevancy score threshold, then in block614the user104modifies the user profile element107, upon which the RGP110generates a modified user profile signature and compares the modified user profile signature to the job description signature126to obtain generate a modified relevancy score for the modified user profile element. In block616, RGP110determines whether the relevancy score for the modified user profile element is greater than the relevancy score threshold. If the modified relevancy score is still not greater than the relevancy score threshold, then in block614the user104modifies the user profile element107(or modifies the modified user profile element) in another attempt to improve the user profile element so that it is greater than the relevancy score threshold. This may be repeated until the modified relevancy score is greater than the relevancy score threshold, upon which in block620the modified user profile element is included in a resume and the process ends at block622.

One having ordinary skill in the art will appreciate that embodiments of the present invention may be used by jobseekers irrespective of industry or how far they are in their career (students included). Other similar users are career counselors, resume writers, transition or outplacement services personnel, employment agencies, HR personnel and the like. Embodiments of the present invention allow users to apply to job opportunities smartly, hence landing more interviews.

In addition, one having ordinary skill in the art will appreciate that embodiments of the present invention can be used beyond tailoring resumes for a job opportunity to evaluate and focus any form of unstructured content against other unstructured content to improve it. For example, in tailoring a cover letter for a job, an essay for a college or scholarship application, a business plan for a competition or angel forum, a submission for an RFP, and so on.

The computer system700may further include a network interface device722. The computer system700also may include a video display unit710(e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device712(e.g., a keyboard), a cursor control device714(e.g., a mouse), and a signal generation device720(e.g., a speaker).

The data storage device718may include a computer-readable storage medium724on which is stored one or more sets of instructions (e.g., RGM116) embodying any one or more of the methodologies or functions described herein. The RGM116may also reside, completely or at least partially, within the main memory704and/or within the processor702during execution thereof by the computer system700, the main memory704and the processor702also constituting computer-readable storage media. The instructions for RGM116may further be transmitted or received over a network102via the network interface device722.

As used herein, the terms “example” and/or “exemplary” are utilized to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as an “example” and/or “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art.