`
lucene3211
  • 浏览: 113741 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

从面试别人想到的

    博客分类:
  • java
阅读更多
          最近一个月面试了10几个人,有应届毕业生,有在校寻找实习的学生,有工作了两三年的,也有工作了5到10年的,有在外包公司工作的,有目前在世界级外企的。结果是,一无所获。
      想起两年前,研究生二年级上学期开始找工作,面试了几个公司的经历,和一些师弟师妹问我的一些问题,不禁让我想到了很多。主要有两个方面:
      1 我们应该如何面试,才能挖掘出应聘者的真实能力
      2 从面试中,我渐渐的画清楚,一个公司需要什么样的人才,我自己应该如何规划我的未来。
     
      我面试别人掌握两个原则:
      1 此人掌握的主要技能是我们所需要的
      2 此人虽然尚未掌握我们所需要的所有技能,但是从他已经掌握的技能可以看出他的潜力和当前的level。
      第二点很重要,就像kent beck不是flex高手,但是我相信如果他愿意学习,他很快就会成为flex的高手。

      我觉得我们招人主要基于以下考虑:
      1 需要某方面专门人才,来和我们现有的人形成互补。
      2 需要一些具有我们项目所需要的技术的人,他的技能会跟我们类似,但即便这样,我们依然希望他会是某方面的专家,比如spring security这么一个框架的专长也是plus。而且,我希望这个人比我强。

   

     我招人的时候希望此人具有以下的气质:
     1 热爱编程,相信软件工艺,也相信软件工程。最近在看kent beck的实现模式和bob大叔的代码整洁之道,我希望他能跟我一样,认为代码是给人看的,好的代码像一篇文章一样。能够反复去雕琢一段代码。但是要理解软件工程,不能为了雕琢每一段代码,而缺乏全局认识。
     2 热爱编程,能够为解决一个问题,写一段漂亮的代码,甚至于为类起一个好的名字而失眠。
     3 热爱编程,把这当作是一项事业,而非仅仅是工作。那种只是想把工作对付完了就ok的人是不适合的。
     4 热爱编程,单纯的用程序交流,人也像好代码一样,干净利落,说话直来直去。大家都很忙,没时间听客套话和绕圈子。     

      就像当年别人面试我的时候那样,我会这样去面试别人:
      1 从简历里挑出我最关心的他所会的技能,比如最近我希望招一个js高手,最好精通dojo(我说的精通是真的精通)。
      2 我会问他最擅长的技术(如果此技术不是我们最需要的那个),如果他最擅长的技术都语焉不详,那就没什么意思了。
      3 我会问某项技术全貌上的问题,比如会让对方谈谈dojo的整个架构,是怎么解决js领域的一些核心问题的。
      4 我会问一些技术细节,比如spring的声明式事务处理是怎么实现的,因为这一个问题就暗含了aop的概念和如何实现,代理模式,线程,jdbc事务处理。如果应聘者看过spring的源代码,那么说明此人能够花心思追究技术更深层次的东西,具有优秀程序员一个优秀品质:好奇心。如果应聘者没看过spring的源代码,他能回答上来,说明此人各方面基础知识扎实并能融会贯通去解决问题。同样我会问hibernate的延迟加载是怎么实现的。
      5 我会问一些工程性问题,比如spring的依赖注入,scope为session的bean如何注入到scope为singleton的bean。比如如何调整hibernate查询性能。比如数据库索引会在什么情况下失效,原理是什么。
      6 我会问一些解决方案,比如如何重启服务器后,依然能够保持session。
      7 我会问一些企业开发中特别重要的问题对方是如何理解的,比如事务,并发,内存管理,异构系统整合,数据库性能优化。
      8 我会问一些特别基础的问题,比如hashset是如何判断新添加的对象是否已经存在的,如果已经存在,它是不再放进去,还是放进去覆盖之前的。比如classloader的工作原理。
     
      当我面对一些工作了四年以上的人时,多少是有点惴惴,因为会担心对方很牛,我却挖掘不出。后来请教了一位工作了六年的同事,他说一个简单的原则是:
      问他你目前在项目中遇到的问题,因为这些问题都是大家讨论的,深思熟虑的,然后问他的解决方案。

      我面试的这些人,有时让我很感慨,为什么工作了四五年的人,甚至是十年的人,号称自己精通dojo,但是一些基础性问题都不清楚,因为我是初学者,但是我会买一本dojo之父写的精通dojo去学习,甚至于我带的一个大四的实习生都知道去遍历网上所有的dojo基础资料,然后把源代码看看。我需要的是,当我问及一个问题时,告诉我dojo正确的做法是什么,而不是仅跟我一样,遇到一个js问题,只能去网上搜一段代码,改改放到项目中,甚至于那段代码他都不完全理解。比如我现在也在阅读javascript高级编程指南,以了解细节。
      
       跟一个很牛的同事一起面试别人js,我觉得那人技术还算熟练,但是我的同事摇摇头说,一个人工作了四年,连如何用js模拟java中的类,js的事件框架是怎么回事都不清楚,怎么能行呢。

       我想,或许,这也是我的奋斗目标:
       1 成为丁字形人才,有一项自己特别精通的技术,比如我的那位同事精通extjs,精通jbpm,精通spring security,那是真的精通,另一位同事精通lucence,还有的精通jquery,有的非常熟悉oracle。
       2 其实我对于我想招的人的要求,就是对自己的基本要求。
           
4
7
分享到:
评论
12 楼 zhyun29 2011-08-31  
我觉得考察一个合格的人.技术只是一方面,甚至说是次要的.
而这个人的沟通能力,逻辑思维能力,解决问题的思考方法才是主要的.
11 楼 丶枫肆 2011-08-31  
精通?什么叫精通?精通不是说出来的
10 楼 tomfish88 2011-08-31  
支持!!!!!
9 楼 Jason(aijun) 2011-08-30  
        
8 楼 maishj 2011-08-30  
能完成工作就好了,要求这么多干嘛,给得起钱吗
7 楼 JAVA_静 2011-08-30  
LZ你是不是面试也没多久?1年?还是仅仅2年呢? 把这没用的文章删了吧! 你这样要求JE,要是大学刚毕业的孩子们打算去面试,还敢去了么!你要求高,你给人家多少工资呢?一个月2万?3万?相信软件工艺?相信软件编程?你的境界还是挺高的啊!
6 楼 pujia12345 2011-08-29  
说了这么多,面了这么久,你出得起多少钱,问题是这个!
5 楼 ljz0898 2011-08-29  
lz 你应该让别人面试你一下 看看 你真的能精通多少东东  句句离不开精通 牛X
4 楼 songjudong 2011-08-29  
楼主我面试你。不知道你能回答上来几个问题。
3 楼 JuneYang2011 2011-08-29  
观点挺好的,但也有些片面,很多时候一项技术,也不一定非得怎样,才说明问题,你要的是用途,实现效果,或许纯粹的技术人员,技术真的很精通,未必你所说的哪一方面一定得通,我觉得你可以好好了解一下,他到底有没有实力。毕竟面试就是那么几十分钟,不可以偏概全。
2 楼 qiang5233 2011-08-29  
我需要的是,当我问及一个问题时,告诉我dojo正确的做法是什么,而不是仅跟我一样,遇到一个js问题,只能去网上搜一段代码,改改放到项目中,甚至于那段代码他都不完全理解

作者凭神马要求别人,自己又有自己的一套
1 楼 liliugen 2011-08-29  
转文章页不注明下,美女

相关推荐

Global site tag (gtag.js) - Google Analytics