本文为写给 Hr 的邮件,分享出来,请大家多多指正
目前的需求:
1、在预算有限的情况下,招的新人,最好同时可以写后台 Java 代码,也可以写前端代码,其岗位名为:全栈工程师。
2、如果某位候选人,前端薄弱,后端能力强。这样的人手,我们也需要,因为我们的项目在后端有些性能问题,也需要好手把把关。
3、如果侯选人,比较偏向前端,我就询问前端近五年来的技术演变,直到试探出水平。而在我们项目的前端,使用的是 Angular.js ,这意味着,这个岗位 Angular 是必须掌握的。
4、限于人手资源有限,单纯的前端工程师、后端工程师,每一项工作都需要与别人配合,故不暂时不予考虑。
面试流程:
一、简短开场,传递【坦诚、平等、透明、开放】团队价值观。
1、开场,如遇天气糟糕,天气晴朗,寒喧开始。若周六或下班后休息时间,先致歉。
2、简短介绍我们项目的情况,简短介绍自己。充分尊重候选人,因为我们在考察别人的时候,别人也在考察我们。
二、技术主题。
1、起始据其简历,从其项目的技术开始,这都应是他们熟悉的内容,逐步为后面有深度的技术问题建立良好的沟通氛围。
2、指导思想:每一项技术,着重考察候选人的理解程度,在某些关键点上,由易到难,逐步深入探讨,层层深入,直到其回答不了或不完整为止,既考查候选人的思路是否灵活,又知晓了候选人的深度。对于长时间无法回答或实在无法的问题,给予一些引导提示。最后,可以告知其答案或寻找答案的方法,并以具体场景讲述考查此问题的意义。体现出尊重候选人和团队务实的态度。
3、据需求我们的岗位是全栈。前端、Java、数据库、版本控制、自学途径均要提及,若其期望薪水大于 10 K(坐标西安,这个数字已经是我的重要帮手了),应进一步补充 运维知识、测试、团队管理的指导思想 以及 平时是如何分享知识。
4、应涉及到以下基础知识点,随兴提问,尤其是针对靠 Java 吃饭的同学:
4.1、基本的数据结构和算法;
4.2、排序、二分查找等经典算法在现实中的应用;
4.3、对时间和空间复杂度的理解;
4.4、散列存储;
4.5、设计模式,主要是代理模式与责任链。
5、框架类快速筛选方法:
5.1、先横向询问是否使用的业界其它的开源作品,如果是,对比其优劣。此项主要判断其知识面,以及分析归纳能力。
5.2、就其使用的技术中,某一块内容,询问其是否了解内部实现原理,以判断其,知其然,亦知其所以然。
5.3、实在回答不上来上述多个问题的提法,顺其思路,以其做法,变化之,对比优劣。
三、总结
经过一系列的技术探讨,此时对候选人的技术已经了解,总结出对候选人的认知,最后并让其补充指正认知偏差。然后再介绍我们需求中的岗位情况,再次传递团队的价值观。针对不适合岗位的候选人,明确出原因,对于勤奋好学者,并给予建议,以及一些自学的途径。若其周边有适合者,不妨推荐过来。
最后,针对询问我个人博客的候选人,近期准备开微信公众号。分享自己的 Java 框架 Url2Sql 和 前端路由 xRoute。践行读书人之担当道义。
四、提示
提示其带好包、雨伞之类的物品。
实习生:
针对实习生,先将附件《在校生开放面试题》发给对方,使其借助互联网以宽松的时间来独立完成,若其答案提交至 Git,再约到单位,面试题目为以下题目变通提法,加以引导提示,旨在确定独立完成与学习能力。
以下面试题为开放面试题,考察的目的着重程序员的核心竞争力——学习能力。你可以借助互联网以宽松的时间来独立完成,每题下方均有解释考查的标准。在我们收到你的答案之后,邀请你参加面试。面试题目为以下题目变通提法,加以引导提示,旨在确定独立完成与学习能力。
1,请在 http://git.oschina.net 创建项目,并将gaollg@163.com添加为项目成员。
解释:Git是当下流行的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。随着Google Code的关闭,开源项目可选的似只有Git了。而程序员参与或学习开源项目,亦是学习能力与技术水平的体现。 考虑GFW关系,代码托管至国内Git服务供应商,以下所有题目的答案及代码,请提交至Git。
2,二分法(请用Java语言编写)
解释:程序=结构+算法,算法依赖结构。二分法,在当数据量很大时,适宜采用该方法快速查找。此题为基础算法,在面试阶段会加以其它算法予以引导。请使用Java或Javascript编写并提交至Git。
加分项:把此程序变成Web程序,并使用Git演示功能提供链接,网页直接演示。
3,谈谈HashMap的理解
解释:Map是一种常用的数据结构,你可以阅读HashMap的源码,查看其实现原理。试举例说明其应用场景,总结其优缺点。请使用Markdown编写并提交至Git。
加分项:Map与JavaBean时常作为数据的载体,试比较两者优劣。
4,解释(function($, export){})(jQuery, window);
解释:以上代码为编写jQuery插件的基本代码,试解释以上代码。
加分项:列举你使用过的前端框架,谈谈他们优劣。
5,Sql
解释:此题无需回答,你可以提前准备,以便面试环节。
答案提交至OSCGit后,我们会与你主动联系。
高雷
2016-04-16