谭坤淋+方友志
摘要:某人才公司随着业务的不断扩张,原有的C/S架构人事管理软件功能拓展能力不足、维护升级困难、互联网应用能力弱,特别是缺少人才推荐等核心功能,需要构建一套用作企业人才管理与推荐的 Web 应用系统,以优化企业业务流程,增强企业综合竞争力。在该背景下,设计并实现了人才推荐系统,该系统可根据求职者的能力结构、职业素质和求职意向等条件,在现有职位库中进行模糊智能匹配,为用户提供满意的人才推荐服务。
关键词:人才推荐;B/S;DWZ;jQuery;Ajax
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)06-0130-02
某人才公司随着业务的不断扩张,原有的C/S架构人事管理软件功能拓展能力不足、维护升级困难、互联网应用能力弱,特别是缺少人才推荐等核心功能,需要构建一套用作企业人才管理与推荐的 Web 应用系统,以优化企业业务流程,增强企业综合竞争力。在此背景下,设计并实现了人才推荐系统,本系统可根据求职者的能力结构、职业素质和求职意向等条件,在现有职位库中进行模糊智能匹配,为用户提供满意的人才推荐服务。
本系统基于B/S 三层架构模式,引入DWZ富框架和Ajax异步处理技术,选用Visual Studio 2010开发平台,采用C#程序语言,和SQL Server 2008 R2数据库进行设计和代码实现。DWZ富客户端框架(jQuery RIA framework),是国内的一款基于jQuery实现的Ajax RIA开源框架。使用该框架有以下优点:完全开源的,源码没有做任何混淆;CSS和JS代码彻底分离,修改样式方便;支持HTML扩展方式调用UI组件;采用AJAX异步处理技术进行数据交互,客户体验非常好;基于jQuery,UI组件以jQuery插件的形式发布,扩展也非常方便。结合推荐业务流程,以及对推荐算法的对比分析,采用了基于项目的协同过滤推荐算法。具体实现中,将会员的基本信息和求职需求分解成不同的特征片段,根据这些特征虚拟出用户最满意的职位,再通与职位库中的职位特征进行相似度匹配,计算得到一个排序的职位列表作为推荐,顾问再在此基础上进行人工推荐,最终实现高准确、高效率的人才推荐。
人才推荐系统是以信息化,网络化的统一方式实现公司主要业务。以会员数据人才库、企业库、HR库、职位库为核心,进行联系、预选、推荐、费用的管理。系统体系架构如图1所示。
在本系统的数据库设计中,首先是进行概念数据模型的设计,定义出与数据库系统版本无关的数据存储结构;然后再进行物理数据模型的设计,针对具体使用的数据库品牌和版本,定义出物理实现的具体细节;最后通过建立的物理数据模型,通过PowerDesigner工具导出具体的数据库生成脚本。由于系统涉及的关系模型非常多,本文只列出其中几个主要实体的E-R图,如图2所示。
系統采用DWZ富框架和Ajax异步处理技术,首先加载DWZ整体框架,然后再通过Ajax异步处理技术加载业务逻辑。所有可编辑页面采用弹出窗口的模式,类似Windows操作系统的操作方式,可以将窗口最小化到框架的任务栏上,需要继续操作的时候再恢复窗口显示,所有内容都不会被改变;主体报表显示页面采用浏览器的选项卡方式在框架内打开,不同也页面课随时切换,数据更新通过Ajax异步技术在后台实现,整体框架不会刷新,也不会影响用户的其他操作;消息采用右下角弹窗提示的方式,不影响用户的其他操作。
人才推荐是该人才公司最主要的业务,推荐进程有两种模式:以会员(求职者)为主体,可以同时推荐多个公司的职位;以职位(公司)为主题,可以同时推荐多个求职者。个人会员状态指针和推荐进程的关系如下:
1)当指针为[待介绍]:表明该会员没有任何推荐。默认按照求职日期从后往前排(最新的最前),掉队规则(就是排到后面去)为:求职状态为[录用]、[成功]、[暂停]、[失效]、[禁止操作]。也可以通过选项夹进行分类操作。
2)当指针为[介绍中]:表明该会员有多个推荐进程(有面试)在发生,但还没有明确结果,每个推荐进程都是介绍中。
3)当指针为[录用]:表明该会员已经有一个进程变为录用,此时该会员不再能添加新的推荐进程(也就是不允许有新的职位推荐给他),但是在录用时间发生之前已经存在的推荐进程可以继续跑。指针为[录用]不是永久的,只有1周时间(该时间和翻转次数可以后台统一设置),一周过去,如果[录用]没有变为[成功],则自动翻转为[介绍中],同时那个推荐进程也自动翻转为[介绍中]。会员状态的改变有日志。
4)当指针为[成功]:表明该会员已经成功付费。如果出现付费后又退费,如果退费金额超过70%,则退费后,状态为二选一:[待介绍]或[暂停]。
5)当指针为[暂停]:则该会员停止增加新的推荐进程。暂停需要理由说明。
6)注意:只有专属顾问方有权将自己名下的会员设置为暂停(并需说明理由),但是任何顾问均有权将会员由[暂停]恢复为[待介绍]。
7)当指针为[禁止操作](就是原来的黑名单):则该会员停止增加新的推荐进程,并在显示列中尽量靠后。注意:设置[禁止操作]需要特殊权限(在团队管理里设置),禁止操作会员在系统里永远不失效。
结合推荐业务流程,以及对推荐算法的对比分析,我们采用了基于项目的协同过滤推荐算法。具体实现中,我们将会员、职位两个主体分解成不同的特征片段:首先把会员的基本信息分解为:性别、年龄、籍贯、户籍地、身高、体重、文化程度、毕业院校、专业、通晓语言、管理经验、行业背景、主要技能、职称、形象、婚育状况、所在城市17个特征片段,把会员的求职需求分解为:求职岗位、期望行业、期望工作城市、期望薪资、食宿要求、专兼职6个特征片段;把职位的基本信息分解为:所属行业、职位类别、工作城市、试用工资、正式工资、福利待遇6个特征片段,把职位的招聘要求分解为:性别要求、年龄要求、学历要求、语言要求、户籍要求、岗位要求、技能要求、工作经验要求、专业要求9个特征片段。
以会员为例:根据会员的求职需求特征已经可以虚拟出用户最满意的职位,再通过求职需求特征与职位库中的职位进行相似度匹配,计算得到一个排序的职位列表作为推荐,顾问再在此基础上进行人工推荐,最终实现高准确、高效率的人才推荐。以职位为主体推荐会员也是类似的算法。
由于该人才推荐系统目前仅面向该人才公司内部开放的,而公司分部在不同的城市,本系统需支持自由访问,限制IP地址访问,限制时间访问等访问权限组合。限制IP的动态域名访问:
1)可以为三层结构(总公司-分公司-部门)中的任何一个结构,设立动态域名。凡是用户所在的IP地址和动态域名指向的地址不符合的用户都不能访问。
2)为了加快登录速度,为每个动态域名设置了一个存储单元,里面保存了最后一次动态域名的最新IP地址,在进行用户登录时,首先比对用户IP和存储单元的IP是否一致,如果一致,则判定为正确,如果比对不正确,则刷新IP存储单元并再次比对。
3)特殊情况下,如果动态域名有问题导致用户无法访问,有权限的用户可以指定某个结构层次(总公司-分公司-部门)免验证访问系统,则该结构下用户暂时不用IP验证就可以访问,最长不超过10小时,免验证失效。
本文设计开发的人才推荐系统,各项功能都达到预期效果,系统运行稳定、安全,应用便捷。通过反复测试确认,确保了系统的质量。本系统是针对某人才公司人才推荐工作的现状、存在的问题以及国内外人才推荐系统的发展状况,针对人才推荐业务流程方面的分析,从中发现其规律,通过对推荐算法的研究并基于算法研究的基础上设计和实现了人才推荐系统。当前阶段,该系统已经可以实现它的全部预定功能,有效地解决了人才推荐过程中的复杂、繁琐的程序,使用本系统可以方便地进行对企业、HR、求职者的管理、联系、推荐、收退费,公司内部资源调动协助,任务下达、员工交流,业绩统计分析等业务。最终达到了优化企业业务流程的目的,增强了企业综合竞争力。