Emplobot – Design of the System Paweł Drozda1,2 and Arkadiusz Talun2 and Leszek Bukowski2 1 Faculty of Mathematics and Computer Science, University of Warmia and Mazury in Olsztyn, Poland, pdrozda@matman.uwm.edu.pl 2 Emplocity Ltd., Warszawa, Poland Abstract. This paper presents general overview of Emplobot recruiting system, designed by Emplocity Ltd. as part of the project „Development of autonomous artificial intelligence using the learning of deep neural networks with strength- ening, automating recruitment processes”. The main goal of the described sys- tem is to facilitate, accelerate and automate recruiting process. For this propose the chatbot was implemented which can communicate with potential job candi- dates preparing their virtual CV. Thereafter, it can perfectly match the candidate profiles with jobs adds in completely automatic way. Keywords: Recruiting System, Chatbot, Deep Learning. 1 Introduction Looking for a job in almost any field of the economy is associated with the tedious and often long-lasting process of browsing many on-line job portals, comparing re- quirements, expectations and benefits for the desired position. This often causes a reluctance of many people to look for their dream job or change current position for the better one. On the other hand, searching perfect employee or even matching the position requirements by recruiters in the traditional way is very hard and time con- suming process. Hiring the right employee is often associated with many recruitment interviews, analysis of candidate profiles, which for a potential employer is involves long-term process and high costs. Additionally, in many cases, especially in the areas of the employee market, recruitment processes fail. The problems described above resulted in the development of automatic processes for combining candidate CVs with available job offers. In [1], authors proposed to tag CVs and job offers with semantic annotations using shared ontology. In enables to match the candidates with adequate job offer. Other approach in [2] was described. Authors introduced idea of joining GitHub developer profiles to job advertisements. They extracted concepts from job adds and GitHub profiles and then determined the similarity between vectors of concepts. Since it is based only on GitHub profile, it may be applied with a very limited range. Next paper [3] concerning automatic job adds and candidate profile matching uses natural language processing techniques with the use of Human Resources Domain. Another approach was presented in [4]. The authors used recommendation system with collaborative filtering. Proposed system Copyright © 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). differentiates two databases of jobs: unskilled, low-paid and highly qualified. The last two the state of the art solutions [5], [6] focus on the use of machine learning tech- niques when combining job advertisements with job seekers. All of the cited solutions consist of trying to match the job offers with candidate CVs for limited databases of candidates and job offers without the possibility of mak- ing further recruitment steps. It significantly limits the usefulness of these tools. 1.1 Emplocity system The solution proposed in this paper is a significant innovation in relation to above mentioned solutions, due to possible scalability. Database of job offers are daily ex- panded by parsers working on the largest online portals with job advertisements in Poland. On the other hand, virtual CVs are created through automatic chatbot conver- sations with potential candidates. Chatbot is available in the Facebook messenger, which allows you to potentially reach about 15 million people of working age in Po- land. Moreover, Emplocity system allows further handling of the recruitment process. 2 Design of the System One of the most important assumptions of the system is the automatic support of the recruitment process 7 days a week, 24 hours a day with the possibility of servicing thousands of potential candidates at the same time. The main idea of event flow of the system and it’s main components is presented on fig. 1. 50 45 40 Data A 35 Data B 30 25 20 15 10 5 0 0 5 10 15 20 25 30 Fig. 1. Design of the Emplocity System. System consists of the following components: chatbot, which should be considered the main one. He talks to potential candidates and prepares virtual CV. Thereafter, it pass prepared CVs to matching component. Next component is responsible for gathering the job adds from the biggest and the most commonly used job offer web systems in Poland (as for example pracuj.pl). It crawls thousands of job offers every day and feeds the system database. Other component integrates the whole system. With the use of the artificial intelli- gence algorithms (deep neural networks, etc.), this element combines job offers with profiles of individual candidates and presents an anonymous recommendation taking into account previous experiences and skills of candidates for the further recruitment processes. The last element of the system supports recruiting companies with the reports of the scale and effectiveness of chatbot activities. It presents all recruitment processes in one place along with the number of matched candidates and the status of their invi- tation. Moreover, with the analytical panel of the system it is possible to monitor can- didates’ preferred work location, number of candidates invited to further steps, aver- age time of chat conversation, traffic on career website, percent of visitors which start chat conversation. 3 Recruiting scenario In order to show how the system works, an example scenario will be presented. Let us suppose that certain company is looking to employ new senior Python de- veloper. If it decide to use Emplocity system, it can add the address for Emplobot to all promotional materials, websites, etc. as well as reach potential target group of candidates by Facebook Ads Manager setting restrictions on: • target country: Poland • age: 25+ • job title: Python developer, senior Python developer, etc. • degree: master in Computer Science, etc. When the candidates start to talk with emplobot it will create virtual CVs containing such information as work experience, interests, skills, education, etc. Thereafter, CVs will be compared with job advertisements and the most appropriate candidates will be proposed for a company. The recruiter from the company can choose the best candidates to finish the whole recruiting process. Moreover, he can check the statistics of chatbot working such as number of candidates matches, average time of chat conversation, etc. References 1. Yahiaoui, L., Boufaida, Z., Prie, Y.: Semantic Annotation of Documents Applied to e- recruitment. Semantic Web Applications and Perspectives, Proceedings of the 3rd Italian Semantic Web Workshop (2006). 2. Hauff, C., Gousios, G.: Matching GitHub Developer Profiles to Job AdvertisementsPro- ceedings of the 2015 IEEE/ACM 12th Working Conference on Mining Software Reposito- ries (MSR), p. 362 – 366, (2015). 3. Martinez-Gil, J, Paoletti, A.L., Schewe, K.D.: A Smart Approach for Matching, Learning and Querying Information from the Human Resources Domain. New Trends in Databases and Information Systems: ADBIS Short Papers and Workshops, Prague, Czech Republic (2016). 4. Schmitt, T., Gonard, F., Caillou, P., Sebag, M.: Language Modelling for Collaborative Fil- tering: Application to Job Applicant Matching. In IEEE International Conference on Tools with Artificial Intelligence (2017). 5. Maheshwary, S., Misra, H.: Matching resumes to jobs via deep siamese network. InCom- panion Proceedings of the The Web Conference 2018, WWW ’18, p. 87–88 (2018). 6. Yiou Lin, Hang Lei, Prince Clement Addo, Xiaoyu Li: Machine Learned Resume-Job Matching Solution. CoRR abs/1607.07657 (2016).