Interactive Searching Interface for Job Matching of Elderly Workers

  • Hiroshi YamadaEmail author
  • Kaoru Shinkawa
  • Atsushi Hiyama
  • Masato Yamaguchi
  • Masatomo Kobayashi
  • Michitaka Hirose
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9739)


In the aging Japanese society, most elderly people still have enough energy to work and have the potential to become essential labor forces. A job matching method that can allocate their unique abilities is required. However, the current job matching relies on each recruiter’s tacit knowledge, and the recruiter assigns only specific candidates to work profiles. In this paper, we propose an interactive job matching system that can reflect the recruiter’s tacit knowledge and help search for diverse elderly workers for each work profile. The results indicate that interactions of the proposed system can improve the matching diversity by retrieving recruiters’ tacit knowledge. When there is a work profile in which it is difficult to extract appropriate keywords, our interactions become most effective.


Job matching Elderly workers Resume Interactive information retrieval 

1 Introduction

Japanese society is rapidly aging. It is estimated that the percentage of Japanese people over the age of 65 will be 40.5 % in 2055 [1]. According to research on desired retirement age, about 30 % of respondents indicated that they want to continue working as long as possible [2]. In addition, if 40 % of the unemployed elderly Japanese workers can work with average work productivity, the resultant positive economic effect for Japanese society is calculated to reach about 22.6 trillion Japanese yen. Therefore, promoting elderly people working is important in the aging society.

In order to do this, there are basically two current issues. One issue is that the current job matching relies on the recruiter’s tacit knowledge. Elderly people have experiences and knowledge from their earlier lives that young people do not have. Because of these experiences and knowledge, their skills are much more varied. In addition, the skills required are different for each work profile. Therefore, knowledge about each worker’s skill and the required skills for each work profile are important. However, this knowledge is the tacit knowledge of recruiters, and it cannot be transmitted to others easily.

The second issue is that only specific candidates are assigned to each work profile. The number of candidates that one recruiter can remember is limited, and this decreases work opportunities for elderly people. Thus, a job matching system that can search all candidates and match diverse candidates is required.

In this paper, we focus on these two problems and propose an efficient interactive job matching system that can retrieve recruiter’s tacit knowledge and match diverse candidates by the recruiter’s interaction with the system. Recruiters change the weights of skills for each work profile and search for appropriate elderly workers interactively.

2 Related Work

2.1 Job Matching by Computer

Natural Language Processing.

Yi et al. matched resumes and work profiles by using the structured relevance model. They looked into the accuracy of correct candidates being matched among the top 1,000 estimated candidates for each work profile and found that it was improved by 14 %. [3]. However, when they examined the accuracy among the top five candidates, it became less than 20 %. Therefore, in terms of matching the varied skills of elderly people, the matching accuracy was insufficient. Lavrenko et al. estimated similarities of documents with no training data [4]. However, this method is difficult to implement as work profiles and resumes are relatively short texts and typically contain words specific to a particular industry. Miura et al. estimated the skills of seniors through matching elderly people’s resumes and job requests using the frequency of words [5, 6]. Our own research has led us to conclude that this method is effective. However, if only the frequency of words is implemented, matching diverse candidates is difficult, as the context of sentences in a resume cannot be utilized.

Implementation of Attribute Information.

Kakuda et al. attached tags for working lists and candidate lists and conducted a simulation and evaluation to determine the cost of the job matching [7]. Lavrenko et al. estimated the attribute information of a candidate by using the ones of other candidates [8]. Attribute information is implemented as recruiter’s tacit knowledge in the current job matching. In order to utilize the job matching system in business, this tacit knowledge should be integrated into the system.

2.2 Job Matching with the Intervention of Humans

Comparison of Job Matching Between Computers and Humans.

Hoffman et al. verified that the candidates matched by a computer had worked longer than the ones matched by a recruiter [9], and Kuncel et al. verified that a computer could match candidates 25 % better than a recruiter [10]. However, if the job matching is conducted only by computers, candidates would definitely find ways to make their resumes effective for defined algorithms, and then candidates would not be matched accurately [11].

Interactive Search with Collaboration of Computers and Humans.

Singh et al. created a system called PROSPECT in which resumes and job requests are automatically matched and recruiters can conduct filtering interactions by adding search options [12]. However, interactions are limited just to adding or deleting keywords that have been retrieved from resumes. Therefore, it is difficult to deal with the various types of resumes that have different content depending on the business. Reflecting the importance of detailed information in resumes would be required for the interactions.

In job matching, humans are considered effective for specifying what skills are needed for each work profile [11] while computers are better at classifying all candidates in a short time. In order to utilize the strong points of both computers and humans, using computers for paring down candidates and humans for deciding final candidates will be important.

2.3 Knowledge from Related Works

The works discussed above are effective for analyzing the skills of candidates and conducting job matching between people and jobs. We also follow previous researches on the point of analyzing resumes and attaching tags to people and jobs. However, as yet there has been no research that reflects the recruiter’s tacit knowledge about important skills for work profiles. Our work differs from the related works in that we actually utilize a prototype in a recruitment scenario and implement the recruiter’s tacit knowledge for job matching by interactions with our proposed system. In this research, we expand upon our past job matching method [13] and attempt to match diverse candidates for each work profile.

3 Proposed System

3.1 Methodology

The methodology of the proposed system is shown in Fig. 1. Our system is currently being used by recruiters at Circulation Co., Ltd. The system usage is as follows:
Fig. 1.

System methodology

  1. (1)

    The recruit information is sent from the client company.

  2. (2)

    Recruiters send work profiles to our system.

  3. (3)

    Candidates who are matched to work profiles are shown on our Web page.

  4. (4)

    On the basis of the matching results, recruiters interact with the system and decide the candidates who ultimately match the work profiles.

  5. (5)

    Recruiters introduce the matched candidates to the client company.


For the evaluation of our system, the resumes of about 2,500 elderly candidates are used.

3.2 Implementation

The proposed system is a Web application based on HTML5 and JavaScript. This system accesses the search engine and the database through AJAX communications. It enables users to search candidates’ resumes using a job description written in natural language. The system extracts keywords from the job description text by tokenizing sentences and filtering noun words on the basis of the morphological analysis results. Dictionaries and stop words are defined on the basis of feedback from users. Keyword scores are calculated from the average of term scores included in the top 100 documents matched by the query. Term scores are returned from Solr/Lucene using the BM25 similarity algorithm [14] and calculated by the following Eq. (1). BM25 scoring utilizes both term frequency and document length normalization.
$$ Score\left( {D,Q} \right) = \sum\nolimits_{i = 1}^{n} {IDF\left( {q_{i} } \right)} \cdot \left( {\frac{{f\left( {q_{i} ,D} \right) \cdot \left( {k_{1} + 1} \right)}}{{f\left( {q_{i} ,D} \right) + k_{1} \cdot \left( {1 - b + b \cdot \frac{\left| D \right|}{avgdl}} \right)}}} \right) $$
The Eq. (1) shows the BM25 score of a document D, for a given query Q containing keywords. \( q_{1} , \ldots ,q_{n} \). \( \left( {q_{i} ,D} \right) \) is \( q_{i} \) ’s term frequency in the document D, \( \left| D \right| \) is the length of the document D in words, and \( avgdl \) is the average document length in the text collection. k 1 and b are free parameters, and we used Lucene’s default value k 1 = 1.2, b = 0.75 for this experiment. \( IDF\left( {q_{i} } \right) \) is the inverse document frequency weight of the query term computed by
$$ IDF\left( {q_{i} } \right) = \log \frac{{1 + N - n\left( {q_{i} } \right) + 0.5}}{{n\left( {q_{i} } \right) + 0.5}} $$

The similarity of the resume to the work profile, M, is calculated as the sum of the score of the extracted top 10 keywords. The similarity M is normalized to make the maximum score be 10. All matched candidates are plotted in a scatter diagram and descriptions of the top 10 candidates are listed in the application.

The top 10 keywords are listed in the application with a slider bar. Users can delete, add, and change the weights of the keywords to adjust the query. On the basis of user modified keyword settings, the system will generate a Solr query and execute it. The scatter diagram and list of top 10 candidates are dynamically updated and users can interactively change the keyword weights to find appropriate candidates. These scores are plotted on the y-axis of the scatter diagram.

3.3 Three-Axis Scoring Algorithm

In addition to the full-text search, we introduced another scoring algorithm to search resumes using three axes: Contents, Category, and Position. According to recruiters, these three axes comprise the most frequently considered information during job matching. Figure 2 shows how to utilize selected tags.
Fig. 2.

Selection of three-axis values and weights (Left: three-axis values, Right: weights)

As shown in the left side of Fig. 2, recruiters choose Contents, Category, and Position tags that are appropriate for the work profile. In the case of the left side of Fig. 2, Management is chosen as Contents, Maker is chosen as Category, and President is chosen as Position. The matched scores of these chosen tags with the resumes are calculated by Eq. (1), and each score is defined as m 1 , m 2 , and m 3 . The weights of the chosen tags are defined as \( \alpha ,\beta \,{\text{and}}\,\gamma \) In the case of the right side of Fig. 2, Contents weight α = 2, Category weight β = 1, and Position weight γ = 1. Each resume also has three-axis tags. The matching scores between the chosen tags and the resume’s tags are defined as t 1 , t 2 , and t 3 . These variables (t 1 , t 2 , t 3 ) reflect recruiters’ opinions for the matching score. Calculation methods of t 1 (Contents), t 2 (Category), and t 3 (Position) are as follows.
  • t 1 (Contents)

    Contents code (5- or 6-digit number) is divided into three parts (e.g., 20102 −> a = 2, b = 01, c = 02). If a of the selected tag and that of the resume’s tag are the same, then a score  = 1, otherwise, a score  = 0. Similarly, if both bs are the same, then b score  = 6, otherwise, b score  = 0. Similarly, if both cs are the same, then c score  = 3, otherwise, c score  = 0. Variable t 1 is defined as t 1  = a score  + b score  + c score . By this definition, t 1 varies in four kinds of numbers: 10 (t11), 7(t12), 1(t13), and 0(t14).

  • t 2 (Category)

    Category code (4-digit number) is divided into two parts (e.g., 1203 −> a = 12, b = 03). If a of the selected tag and that of the resume’s tag are the same, then a score  = 7, otherwise, a score  = 0. Similarly, if both bs are the same, then b score  = 3, otherwise, b score  = 0. Variable t 2 is defined as t 2  = a score  + b score . By this definition, t 2 varies in three kinds of numbers: 10(t21), 7(t22), and 0(t23).

  • t 3 (Position)

    Positions are divided into four rank numbers (rank = 1, 2, 3, and 4). If the rank number of the chosen tag, rank ch , is bigger than that of resume, rank re , then t 3  = 10. In other cases, t 3 is defined as t 3  = 10–3 × (rank re rank ch ). By this definition, t 3 varies in five kinds of numbers; 10(t31), 7(t32), 4(t33), 1(t34), and 0(t35).

3.4 Interaction and Visualization

In order to retrieve the recruiter’s tacit knowledge, three kinds of interactions can be conducted. The first interaction is deleting the listed candidates. If the recruiter deletes one of the listed candidates, the next matched candidate on the list is shown. The second interaction is adding, deleting, and weighing keywords. The recruiter can freely add, delete, and weigh the extracted top 10 keywords. The third interaction is selecting and weighing three-axis tags. As stated in Sect. 3.3, the recruiter selects and weighs tags that are appropriate for the work profile.

In order to understand the matching results and identify the diverse candidates effectively, results are shown in a 2D graph. X and Y-axes are:

X-axis: \( \sqrt {\left( {\upalpha{\text{p}}_{ 1} } \right)^{2} + \left( {\upbeta{\text{p}}_{2} } \right)^{2} + \left( {\upgamma{\text{p}}_{3} } \right)^{2} } \)

Y-axis: M

Variables p 1 , p 2 , and p 3 are defined by using m i and t i (i = 1, 2, and 3), which are defined in Sect. 3.3. This definition is adopted for the visual discrimination of the results. Variables p 1 , p 2 , and p 3 are calculated in the following equations:
$$ \begin{aligned} & \left\{ \begin{aligned} & p_{i} = t_{ij} \quad \left( {if\;t_{i} = t_{ij} ,j = 1} \right) \\ & p_{i} = t_{ij} + m_{i} \times \left( {t_{{i\left( {j - 1} \right)}} - t_{ij} } \right)/10\quad \left( {if\;t_{i} = t_{ij} ,j \ge 2} \right) \\ \end{aligned} \right.\; \\ & 1 \le i \le 3,\;1 \le j \le 5,\;i \in N,\;j \in N \\ \end{aligned} $$

By using these variables p1, p2, and p3 and weight variables α, β, and γ, the X-axis shows the score from the interactions by the recruiter and the Y-axis shows the similarity of the resume to the work profile M. Both axis numbers are normalized so that the maximum becomes 10.

Figure 3 shows a 2D graph visualization after interactions. The data shown in the figure is dummy personal data fetched from Wikipedia. Each dot represents a candidate whose resume is registered in our system. When a mouse cursor hovers over a dot, detailed information of the candidate is displayed. When a dot is clicked, the detailed resume of the candidate is shown. A red dot indicates that the distance from the origin of coordinates is the farthest, while the distance of blue ones is second to tenth and gray ones are below the tenth. When the distance of a dot from the origin of coordinates is farther, that candidate is considered well matched. In Fig. 2, the three dots labeled 1, 4, and 7 are candidates whose matching scores (Y-axis) are low but whose Contents, Category, and Position (X-axis) scores are high. These candidates may not be matched before interactions but may be well matched from the recruiter’s point of view. In this way, the matching results that reflect the recruiter’s tacit knowledge about candidates and work profiles are visualized after interactions.
Fig. 3.

System visualization after interactions

4 Evaluation

In order to collect data for the analysis, we need this system to be used in an actual business. The initial prototype evaluation was conducted with the director of Circulation Co., Ltd., which is a recruiting agency in Japan. We received direct feedback on the system including feature requests for utilization in real projects. The system was developed with an agile development approach: namely, we obtain feedback, develop, test, and deploy iteratively so that all feedback can be reviewed and collected in a short amount of time.

After the initial experiment and improvements based on feedback from the director, the system was deployed for an experiment with real projects. About 2,500 elderly candidates’ resumes were registered in our system and two recruiters were assigned to use this system with real work profiles. The way of searching for candidates is to query with full-text first, and if no candidate is found, the recruiters will conduct the interactions discussed in Sect. 3.4 until they find the appropriate candidates. Selected candidates considered to be well-matched workers are marked as “Best matched” or “Probably matched”. The number of these candidates is used as the criteria for evaluating the efficiency of the interactions with the system.

5 Results and Discussion

5.1 Interaction Effect

The evaluation results were collected after the first week of the experiment. The recruiters queried 12 real work profiles and selected 38 candidates in total. Figure 4 shows the number of candidates found before and after interaction. The system returns a summary of the top 10 candidates for each result. Therefore, selected candidates who were below the tenth position in the initial query are regarded as being unfound. These unfound candidates came into the selection scope because of interactions. For candidates marked as “Best matched”, 4 out of 10 candidates were newly found by interactions. For candidates marked as “Probably matched”, 8 out of 28 candidates were newly found by interactions. The reason for this is as follows. The interactions of our proposed system rely on the knowledge of the user. In order to conduct interactions, the user is required to estimate the skills of each work profile. Therefore, recruiters who have knowledge about the job matching can get positive results by doing interactions. This suggests that our interface can retrieve the recruiter’s tacit knowledge for job matching and successfully match diverse candidates.
Fig. 4.

Number of matched candidates before and after interactions (Color figure online)

5.2 Number of Interactions

Figure 5 shows the number of interactions for each work profile. The user conducted interactions until appropriate candidates were found. In Fig. 5, five out of 12 work profiles had no interactions. This means that appropriate candidates were found in the first query execution. One reason for this is that the work profile query contained a proper noun, namely, a specific company name. Since there was only one resume that contained this specific word, no additional interaction was required. The other reason is that the extracted top 10 keywords were appropriate and the system was able to return the expected result in the initial query. In this case, all keywords had the same weight. In Fig. 5, there is a work profile for which 11 interactions were conducted. Among those interactions, ten of the 11 were about deleting candidates from the list. This suggests that the extracted top 10 keywords were not appropriate.
Fig. 5.

Number of interactions for each work profile

6 Conclusion

In this research, we created an interactive job matching system that can match diverse elderly candidates and work profiles. We proposed three kinds of interactions for the list of candidates, extracted keywords, and three axes. The results demonstrate that the recruiters’ tacit knowledge was effectively retrieved and diverse candidates were matched by conducting the interactions. The results also show that the effectiveness of our system varies depending on the work profile and that it is less effective for work profiles that contain specific words such as company names. Our future work is as follows. (1) Further research on work profiles is needed. The number of work profiles should be increased and the relationships between the similarity of each work profile and the number of candidates marked as “Best matched” or “Probably matched” need to be analyzed. (2) Personality information should be included in our system. The impression the recruiters get after conducting job interviews with the candidates needs to be weighed and retrieved. The axes for the impressions should be described similar to three axes (Contents, Category, and Position) we conducted in this experiment.



This material is based on work funded by S-innovation (Strategic Promotion of Innovative Research and Development) under Industry Academia Collaborative R&D programs administered by the Japan Science and Technology Agency (JST). We are also grateful to Circulation Co., Ltd. for their great help.


  1. 1.
    Kaneko, R., Ishikawa, A., Ishii, F., Sasai, T., Iwasawa, M., Mita, F., Moriizumi, R.: Population projections for Japan: 2006–2055 outline of results, methods, and assumptions. Jpn. J. Popul. 6, 76–114 (2008)Google Scholar
  2. 2.
    Cabinet Office, Government of Japan: Awareness survey about the elderly people’s participation motivation to a community (2013).
  3. 3.
    Yi, X., Allan, J., Croft, W.B.: Matching resumes and jobs based on relevance models. In: SIGIR2007, pp. 809–810 (2007)Google Scholar
  4. 4.
    Lavrenko, V., Croft, W.B.: Relevance-based language models. In: SIGIR2001, pp. 120–127 (2001)Google Scholar
  5. 5.
    Miura, T., Hiyama, A., Kobayashi, M., Takagi, H., Yatomi, N., Hirose, M. Investigation on work motivation of Japanese seniors and skill discovery from their resumes. In: SII2013, pp. 190–197 (2013)Google Scholar
  6. 6.
    Miura, T., Kobayashi, M., Hiyama, A., Takagi, H., Hirose, M.: Skill discovery and matching based on feature words extraction from senior people’s resumes. IEICE Tech. Rep., vol. 112, pp. 55–59 (2012)Google Scholar
  7. 7.
    Kakuda, T., Ono, A., Mine, T.: Matching between people and job with bidirectional feedback. IEICE Tech. Rep., vol. 112, pp. 13–18 (2012)Google Scholar
  8. 8.
    Lavrenko, V., Yi, X., Allan, J.: Information retrieval on empty fields. In: NAACL-HLT, pp. 89–96, (2007)Google Scholar
  9. 9.
    Hoffman, M., Kahn, L.B., Li, D.: Discretion in hiring. Working Paper 21709, National bureau of economic research (2015).
  10. 10.
    Kuncel, N.R., Klieger, D.M., Connelly, B.S., Ones, D.S.: Mechanical versus clinical data combination in selection and admissions decisions: a meta-analysis. J. Appl. Psychol. 98, 1060–1072 (2013)CrossRefGoogle Scholar
  11. 11.
    Kuncel, N.R., Klieger, D.M., Ones, D.S.: In hiring, algorithms beat instinct. Harv. Bus. Rev. 92(5), 32 (2014)Google Scholar
  12. 12.
    Singh, A., Catherine, R., Visweswariah, K., Chenthamarakshan, V., Kambhatla, N.: PROSPECT: a system for screening candidates for recruitment. In: CIKM2010, pp. 659–668 (2010)Google Scholar
  13. 13.
    Yamada, H., Hiyama, A., Yamaguchi, M., Kobayashi, M., Hirose, M.: Job matching interface for searching elderly workers. In: LIFE2015 (2015)Google Scholar
  14. 14.

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Hiroshi Yamada
    • 1
    Email author
  • Kaoru Shinkawa
    • 2
  • Atsushi Hiyama
    • 1
  • Masato Yamaguchi
    • 3
  • Masatomo Kobayashi
    • 2
  • Michitaka Hirose
    • 1
  1. 1.The University of TokyoTokyoJapan
  2. 2.IBM Research - TokyoTokyoJapan
  3. 3.Circulation Co., Ltd.TokyoJapan

Personalised recommendations