基于H5+GO的Web前端面试网站的开发与应用

2017-07-10 09:04刘丹肖本谜樊小勤陈友军
电脑知识与技术 2017年14期

刘丹 肖本谜 樊小勤 陈友军

摘要:一个成功的面试者应该具有很强的职场语言表达能力和良好的心理素质,而实际生活中能提高面试者面试应变能力的机会却很少。为了使面试者的面试能力、实践能力、心理素质得到提高,我们采用Web技术开发了一套前端面试网站系统,该系统使用GO+Nodeds作为系统开发平台,同时使用Beego和Express网页开发框架作为网站建设的系统架构,结合强大的H5页面制作技术。主要功能有在线做题和定时测试、模拟面试、虚拟试衣、简历制作、社区交流等,使得面试者的才华及技能得到全方位的提高,满足了广大面试者的需求。

关键词:面试求职;Beego框架;Express框架;模拟面试;虚拟试衣

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)14-0179-03

目前国内外对面试网站的开发设计较多,但是对其开发应用并且最终实现真正的网站的课题研究论文较少,所以大都缺乏实际网站基础,而今市面上的招聘求职网站的质量参差不齐存在诸多问题无法满足求职者的需要,并且网站的信息大都过于杂糅缺乏针对性,难以过滤出真正对求职者有用的信息。

各行各业(尤其是IT行业)求职者的应聘过程一般都必须经过两道门槛:笔试和面试。其中“笔试”需要求职者拥有较强的专业知识储备,而面试却是考验求职者的各种综合能力,比如口才、心理素质、观察力等等。现实中很多求职者的应聘都失败在面试环节,而很多

的招聘单位也因此招不到优秀的人才。

通过大量调查分析,我们发现目前还没有任何专门针对在线训练面试求职技能的平台。在线训练作为新兴的教育形式,现在正受到广大群众的热捧,尤其是在IT行业,相比线下培训,线上的专业笔试面试学习可以很方便高效地学习到有用的技术技能。我们以H5和Go语言为主要开发语言开发了一套Web前端面试网站平台,为保持资料的及时更新,后端管理采用优化的MySQL数据库。平台性能的最低标准达到了在没有漏洞的情况下完美的全天24小时运行,在特殊的高峰阶段保持稳定运行,可以支撑上千人次的同时访问,高峰期时系统的基本处理速度5S以下。网站在Windows系统下进行开发,兼容chrome、Firefox等主流浏览器。

1系统开发的必要性

通过项目成员的大量调查分析,我们发现:一是目前还没有任何专门针对面试求职的平台;二是面试求职平台需求量非常大,我们调查的所有求职者都希望能有这么一个平台。

本项目的目标是为求职者打造一个学习、求职、交流的平台,为招聘单位打造一个信息发布和优选人才的信息平台。本项目最终形成的信息平台是一个面向求职者的笔试、面试题库,是他们的能力储备站,平台帮助面试者备战求职岗位招聘,使用户更有可能获得自己心仪的工作;另一方面,平台不仅可以提供用户所需的与面试相关的知识信息,提供面试技巧,还帮助个人素质和形象塑造,并且与企业合作,提供最新可靠的招聘资讯,为求职者提供更多的机会。

2开发流程

根据项目的最终目的,我们已经做了比较充分的前期准备工作,对项目的可行性做出了深度分析,下一步计划根据项目需求分析,综合开发者和用户需求分析开始项目研发。

首先进行的是平台的前端设计、数据库设计、后端设计等工作,然后进行具体的软件开发工作,由表及里,将该项目所需的各个部分整合,形成原始的项目成果,再对项目进行不断测试优化。本网站的开发流程如下图:

2.1需求分析

2.1.1用户需求分析

通过实地访谈和问卷调查的方式,我们得知即将毕业的大学生将是本网站的最大用户群,其次是IT待业人员。对于他们来说,在使用一个软件或网站来为面试准备时,希望拥有的功能或需求如下:

1)一个专业知识针对性强的题库练手,不受时间地点限制,免费刷题,能够记录学习错题,随时翻阅并练习,巩固新鲜的记忆,能进行模拟试题,体验真实的笔试题目,直击考试精髓;

2)有过硬的面试应变能力和职场语言表达能力,不怯场紧张,自信的展现自己的技术、知识、经验;

3)为了给面试官或别人留下一个美好的印象,需要一套合适得体的面试服装,上班后能有一些平常服装穿搭推荐实例;

4)一份简洁大方,让面试官眼前一亮的簡历,简历的质量要高,格式要标准规范;

5)能接收每日更新的求职信息,面试经验类的资讯。

根据系统需求和用户需求分析,本网站所设计的主要功能如下图:

3特色功能介绍

3.1模拟面试

用户通过语音进行模拟面试,可以实现模拟用户的现场即兴表现,不仅用户可以练习面对考题类型灵活多变的高难度解答,还包括面试者的思维逻辑及对问题的分析和解决能力的锻炼,在互动过程中提高用户的临场应对能力和语言组织能力。整个模拟面试流程完全由系统自动完成,此过程用户可以选择录制视频,对于自愿上传的语音模拟面试视频的用户,可通过专业人士评定,实现对模拟面试者量身评估,有针对性地找出求职者面试中存在的问题,进行提升。语音模拟利用javascript技术初始化异步TTS引擎,将消息在执行实际的文字转语音前放到队列中,然后调用音频流,实现TTS文字转语音的功能。H5的The Media Capture(媒体捕捉)API提供了对摄像头的可编程访问,所以我们利用H5的Video标签获取从摄像头获得的视频作为输入来源,然后采用Canvas功能捕获视频流作为图像输入,再利用Video标签将摄像视频流动态显示出来,从而建立了一个具有讲话能力和视频录制交互功能的系统平台。

3.2简历制作

用户可通过本网站进行简历的制作,各种丰富的模板以及简单的操作步骤让用户轻松体验优秀的简历制作过程。用户无需绞尽脑汁另外设计,只需要将内容一步步填写上去就可以了,其次电子版简历的模板均由官方设计认定,简历的形式基本上是固定的,故电子版简历在保证简洁便利的基础上又保证了客观一致的标准,因此用户不必担心投出去的简历会因为形式不符合招聘单位的要求而被退回来。简历制作利用H5的核心可视化编辑功能和CSS3,搭建丰富简历框架模板,用户仅仅进行模块信息更换,便可快速制作H5简历。

3.3虚拟试衣

本网站专设以增强现实技术和体感交互技术为基础的虚拟试衣功能,用户只需输入身高、体重就可以生成一个属于自己的数字模特,可以选择喜欢的衣服进行“试穿”,足不出户即可看到自己穿上正装的样子,服装立体效果呈现逼真,不仅方便用户试衣,而且增强了人机交互体验沉浸感,使用户能获得丰富的试衣体验。本功能基于WebGL技术,利用了H5、javas-cript以及Three.js库,通过多种接口实现数据的转换。通过Three.js将3DMAX中做的模特直接导入到WebGL中与二维网页交互使用,通过H5提供的canvas画布引进模型,将模型展示到二维网页中,从而将虚拟试衣转换成接近真人的试衣效果。

3.4社区交流

社区提供三个方面的信息资源:Web前端程序员的最新招聘信息、笔试面试经验交流、资源共享。用户可以登录社区浏览最新的Web前端招聘信息或者发表关于笔试面试言论,社区具有实时陛,信息准确,反馈及时的特征。系统管理员基于用户的需求来选择发布的求职材料和学习资源,引导用户创造符合社区要求的、对社区有价值的Web前端内容。本网站制作关于Web前端各方面专题或策划增强网友互动的线上活动,极大程度地发挥社区的综合优势。社区交流采用MVC模式,基于GO语言的Beego框架精确控制Web页面的显示,发送HTTP报头响应用户请示,Model层与MySQL数据库的交互通过ORM对象关系映射实现Model对象到数据库的自动访问,并对页面中的用户命令进行处理后的相应处理结果返回浏览器实现非刷新页面提交评论,新评论最近状态,信息发布等。

4界面设计

用户登录时可以看到登录首页,注册登录后进入用户界面。用户可以在线刷题、模拟面试、制作简历、虚拟试衣、进入社区交流,详细设计界面如下图:

5技术路线

系统前端采用H5配合Beego开源web框架实现,后端环境渲染采用node默认的jade模板,使得系统在架构上安全稳定。使用GO+Node.js作为系统开发平台,项目开发采用先进的软件技术,前端采用H5+GO编程语言,后端采用node.js编程语言,具有高度的可扩展性,达到系统设计的无插件、低維护、低门槛、跨平台和简单易用的要求。开发时采用功能强大、高效灵活的MySQL架构及B/S模式,同时使用Beego和Express网页开发框架作为网站建设的系统架构,结合强大的H5页面制作技术,页面丰富简洁,具有的良好兼容性大大提高了用户体验。采用的数据库为MySQL5.5,不仅支持大型数据库,而且可以处理上千万条记录,优化的SQL查询算法有效地提高了查询速度。

6测试与应用

系统首先测试了网站基本功能,然后在界面友好互动性上进行了测试,并对网站的安全性进行了论证。通过各种测试,验证了系统在上述各种测试下,性能都表现得很稳定,界面十分友好,运行安全可靠,达到了预期目标。基于计算机信息化处理的网站面试系统逐渐崭露头角,我们的面试网站就是其中一员,即将毕业的大学生将是本系统最强有力的一个群体,而且大学生永远是接受新事物最快的一个群体。我们的系统将以校园大学生面试求职为基石,逐步扩大到社会领域,为面试求职者搭建一个全新的快速提升面试应用能力的通道,打开社会市场,提高面试成功率和效率。

7展望

本网站的设计与实现立足于我们的社会调查实践,真实地反应现实中面试人员和招聘单位的实际需求。项目开发采用先进的软件技术,功能强大、高效灵活的MySQL架构及B/S模式,前端采用H5+GO编程语言,后端采用node.js编程语言,具有高度的可扩展性,实现了系统设计的无插件、低维护、低门槛、跨平台和简单易用的要求。并且实现了在线答题、文件传输、代码在线编程测试、语音模拟面试、信息发布、Cookie缓存记录等。本系统为求职人员带来极大方便,也为招聘企业更好地选用优秀人才提供了可能。

该文完成了网站上述功能,但在系统技术层面和产品功能层面上都有值得改进与加强的地方。本系统目前仅支持管理员管理题目,后续会增加其他方面的题库以及将允许用户上传面试题目到题库。此外本系统在后续版本将会结合云服务,实现网站与移动端、ipad端完美结合。