我是主考官
我是主考官——面试故事,卷首语:
我是一个IT公司的研发部门经理,为了实现部门和公司的业绩目标需要组建开发团队,在组建开发团队的过程中面试成为了一个不可或缺的工作内容。
在这个过程中有很多面试的故事,在这里和大家共享,看看对大家找工作和面试是否有启发意义。
大概是去年,当时开发的任务非常紧,我们这个部门有8个人,同时在开发的项目一共4个,基本上是有的项目经理带两个项目,有的项目只有一个人开发。
由于公司给我们部门的成本比较压缩,大家叫苦不迭。
还好有一天,我提的加人的申请被批准了,可以再加一个初级程序员,虽然是初级程序员也基本上可以解燃眉之急了,人员招聘成本3000/月。
OK,我订出了我招聘的人员需求,如下:
1、计算机专业毕业,专科(含)以上学历;
2、熟悉Html,Java,Jsp,MySQL数据库;
3、有独立开发项目经验者优先;
4、作风正派,踏实肯干,具有合作精神;
这个招聘启示,通过51job发了出去,并且通过一些朋友进行推荐。
我们开始展开招聘工作......
故事(1):招聘就像大海捞针
当我把我的招聘要求给了HR之后,HR将我的邮箱捆绑到了51job的目标邮箱。没过几天,我的邮箱就变成了这个样子,请看下图:
也许在找工作的时候在抱怨所有的招聘Java程序员的启事都是那么的千篇一律的,但是,你是否想过负责招聘的项目主管也在抱怨应聘者的简历也都似乎是千篇一律的。
我就有这样的抱怨,开始我还是很认真的看这些简历,但越看越没有兴趣,因为发现很多简历写的都是套话,官话,没有任何特点。怎么搞得简直是千篇一律的简历,看一篇跟看十篇都差不多。
但是,懒得看也得看啊,因为还是要招聘一个人来啊!
因为简历发过来的实在太多了,没办法,好,那就一目十行的看,只看写的有特点的简历,或者项目经验是真的的那些简历。
有几种简历我是必删的:
1、内容超级少,基本上没有什么内容的;
2、内容超级多,但基本都和Java程序开发无关的;
3、岁数太小,23岁以下的;
4、专业技能写的超级多,几乎所有技术都会,但就是没有项目开发经验的。
好,在招聘启示贴出去的第5天我已经有了几个挑选出来的简历。
我拿起电话,打通了第一个电话.......
之所以要删除一些简历也是由于简历太多看不过来决定的,说真的对于应聘者来说确实有点残忍,
呵呵。我心理很清楚,每一个简历背后都有一个渴望这个职位的心灵在等待。
然而,我并不能给所有的人面试机会,原因就是“我真的没有时间!”,我只能把机会留给优秀的佼佼者。
另外,不知道从什么时候开始,出现了一批这样的求职者,他们拿简历当小广告一样散发,我曾经在不同的时间收到相同人的简历有N封,我很想给他回一封信,告诉他“你不要再发了,我邮箱快满了!”。
好,我还是在最短的时间内挑出来了几个简历,这时候我有两种选择。
第一种,把这些简历直接发给HR,让HR通知他们在一个时间来公司参加笔试。
第二种,就是我先通过电话和他们沟通一下,如果在电话里沟通的还行,我再通知他来参加一个简单的笔试。
第一种,因为会占用我的很长时间,因为来的人会有很多并不能将我的笔试题回答完整,甚至是很多都不会,我觉得浪费了我的时间,最重要的是浪费了应聘者的时间,因为,来了以后看到这个笔试题,不到20分钟就得离开了,这样作对于双方来说都没有效率。
第二种,比较好,我可以通过电话初步进行沟通,效率高一些,不行的也就不用过来了。
ok,我拿起电话,拨通了第一个电话号码。
“滴...滴....通了......”
电话里传来了一个熟悉的男性声音,“对不起,没有这个电话号码....”
“汗!”
我又仔细的核对了一下电话号码,没错啊,再播一遍。
传来了同样的声音......
——“搞什么搞,,,发了半天简历竟然电话号码写错了!”
没办法,找了半天,只有这一个手机号。
好,只能放弃,打下一个电话。
“Wai!!”
我说,“您好!”
对方声音很横,“你是谁啊!!”
——“我晕!怎么那么横啊,我好像不欠他钱啊!”
“您好,我是XXX公司,收到了您一份简历,我想跟您沟通一下。”
“哦,哦,您好,您好”,——态度立刻好了很多...
“好,我问您几个问题,可以吗?”
“行,可以,您问吧。”
“你会用Java开发程序吗?”
“会用”
——我还在等他说下文,然而,大概停了3秒,对方都没有说话,ok,我只能接着问。
“你觉得Java开发程序的优势是什么?”
“Java开发啊,有很多优势啊。”
——我又等了大约1.5秒,还是没有说话,那我还只能接着问。
“嗯,没事,你说两个就行。”
“嗯,比如Eclipse开发的时候有提示,很方便,不需要记住那么多东西!”
——“不会吧,这也叫Java的优势?!@$#”
我其实刚开始的时候听到他不拘小节的应答方式就已经比较反感了,没想到回答的还文不对题,对于他我还是选择了放弃。
于是我说“好,我知道了,如果可以我再通知你。”
对方说“好的,谢谢!”
——嗯,还行,最起码还说了句“谢谢”。
好,接着打。
“您好!”
“您好!我是XXX公司的,收到您一份简历。”
“哦,知道知道,您好!”
“嗯,我想和您做一个简单的沟通。”
“好的...”
——我从电话里听出了对方有点紧张,当然,一般的小菜鸟来说都应该有点紧张,这是正常的。
“你会用Java吗?”
“会用啊,我一直都在用Java开发程序啊。”
“哦,你都开发过什么程序?”
“我在学校的时候开发了一个购物系统,就是用Java开发的,还做了几个其他程序,都是用Java开发的”
“嗯,你曾经上过班吗?”
“没有,但是,我们在校期间有实习,实习做的项目也挺多的。”
——对于他的回答我比价满意,最起码听起来比刚才的那位强多了。
“好,我想约你来我公司来面试,不知道你哪天有时间。”
“好,您说时间吧。”
“行,那就明天下午吧,您过来以后有可能先做一个笔试,有问题吗?”
——因为,有些程序员非常讨厌笔试,一听笔试就不来了,所以才问他一下。
“行,没问题。”
——ok,看来这位同学信心满满。
“好,地址是XXXXX”
“行,明天见”。
“好,明天见”。
我放下电话,长出了一口气,总算搞定一个。
就这样,我又终于找到了几个人约明天下午来笔试。
真希望明天来的人有我要的人,省得还得打电话了,期待着......
电话的沟通虽然不可能对一个程序员作全面的了解,但基本上能有一个比较概括的判断,这也许就是所谓的第一印象吧!
通过电话的初步沟通我对来面试的程序员已经有了初步的印象,但说句实话,还是印象不怎么深。因为,毕竟仅仅是电话筛选而已,并没有更深入的了解与接触。
在最开始组建这个部门的时候,我基本上不用笔试,而是直接与应聘者面试。因为,希望招聘到骨干人员,希望能够直接面对面的沟通更加方便。但是,当招聘初级程序员的时候我开始也是这样作的,但发现这样作确实非常没有效率。原因就是,用一句不是很恰当的形容词“滥竽充数”的应聘者还是比较多的,即使是经过了电话沟通的应聘者也不例外,仍然是很多东西掌握的都不扎实。
后来,我还是选择了采用其他公司惯用的一个方法——“笔试”。
我开始的时候挺懒的,懒得自己编笔试题,就直接从网上搜一个,也没怎么看直接给程序员去笔试了,我大概开始搜到的那个题是这样的:
1、 面向对象的特征有哪些方面
2、 String是最基本的数据类型吗?
3、 运行时异常与一般异常有何异同?
4、 说出ArrayList,Vector, LinkedList的存储性能和特性
......
9、 Collection 和 Collections的区别。
10、 HashMap和Hashtable的区别。
11、 final, finally, finalize的区别。
12、 sleep() 和 wait() 有什么区别?
13、 同步和异步有何异同,在什么情况下分别使用他们?举例说明。
14、 abstract class和interface有什么区别?
......
27、 垃圾回收的优点和原理。并考虑2种回收机制
28、 请说出你所知道的线程同步的方法。
29、 你所知道的集合类都有哪些?主要方法?
30、 多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
31、 JSP的内置对象及方法
......
36、 XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
在刚刚开始笔试的时候,我跟前台说帮我判一下卷子,凡是内容非常少的或者很多都不对的,就直接让他们走就行了。
但当我等了半天,给前台打电话问问卷子答得如何时,得到的答案是,他们全都走了,我问何故?
前台MM一脸的委屈,你过来看看就知道了!
呵呵,使我万万没想到的是,基本上很多的程序员都是文不对题甚至交白卷。
我比较疑惑,明明在电话沟通的时候说是有项目开发经验啊,怎么连笔试都过不了?显然我这样的某些做法是错误的!
说句公道话,我发现这个笔试题确实有些变态,也不是谁总结的,有些不常用的题目的具体答案我自己都觉得有些难,更何况这些初级程序员了,显然这个筛子太密了,把应聘者都筛掉了,不行!立刻总结:
第一点,辛辛苦苦打电话约来的面试者,连面都没见到就全让前台给拒了,面试者需要我自己来亲自见面,不管是否过了笔试我都见一下。
第二点,如果每一个应聘者都答不出来,说明这个笔试题有点难了,需要调整笔试题。
于是,我调整了我的笔试题,更加贴近了这个职位,我的笔试题如下:
1、请写一段html,完成下列表格的样子。注意:是单线边框。
2、字符串“A@B@C@D”,以@字符拆分 返回数组。
3、字符串String s=”SDsBEaA”,要求最后生成s=”AaBDESs”.
4、有3张表,Student表、SC表和Course表
Student表:学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)和系名(Sdept)
Course表:课程号(Cno)、课程名(Cname)和学分(Ccredit);
SC表:学号(Sno)、课程号(Cno)和成绩(Grade)
请使用SQL语句查询学生姓名及其课程总学分
(注:如果课程不及格,那么此课程学分为0)
5、请说出这个程序的目的是什么?返回结果是什么?
public Station(URL urla){
try
{
String a="",b="";
InputStream ins = urla.openStream();
BufferedReader bReader = new BufferedReader(new InputStreamReader(ins));
String info = bReader.readLine();
int i=1;
info=bReader.readLine();
while(info!=null){
a=info.substring(0,info.indexOf("@"));
b=info.substring(info.indexOf("@")+1,info.length());
if (i==1){
this.X1=Integer.parseInt(a);
this.Y1=Integer.parseInt(b);
}
if (i==2){
this.X2=Integer.parseInt(a);
this.Y2=Integer.parseInt(b);
}
if (i==3){
this.X3=Integer.parseInt(a);
this.Y3=Integer.parseInt(b);
}
if (i==4){
this.X4=Integer.parseInt(a);
this.Y4=Integer.parseInt(b);
}
i++;</