论“技术素质”和“专业技能” - 我的招聘方法 1
基本的技术素质
这是我最看重的一点,部门内的资深设计师Jobs和我在此点上心有戚戚焉。和技能相比,素质要重要很多。我宁愿招一个具有良好技术素质但技能不高的人,也不要技能好但技术素质不够的。
原因很简单,技术素质就像学习能力一样,有学习的能力,掌握技能只是时间问题,否则再好的外部条件也是白搭。这就好像没有学习能力的孩子,在最好的中学里也很难考上好大学一样。
所以在考察专业技能之前,我会花很大的精力来了解和评估对方的技术素质。
技术素质的定义
技术素质没有、也很难下明确的定义。但它至少包括以下几个方面:
是否有开阔的视野,并愿意开阔自己的视野
一个技术人员必须具有开阔的视野,或至少有强烈意愿开阔自己的视野。正所谓“他山之石,可以攻玉”,在A领域掌握的知识,可以拿来解决B领域内无法解决的问题,而懂得了C领域的知识后,发现用它可以更好的解决B领域的问题,这就是视野。
举例来说,一个交互设计师,如果没听说过iPhone,或者只是听说过而没有想过去尝试一下、至少去网站上看看iPhone的操作演示动画,那么他是不合格的;一个前端开发工程师,只知道摆弄html/javascript/css,没有php/asp/java的知识,不合格;一个后台程序员,连SourceForge(世界上最大的开源项目网站)都没去过,这样的程序员,我肯定不要。
-
严密的逻辑思维能力
为什么数学好的人往往具备较强的编程能力?为什么微软/IBM在招聘时第一关都是智力题?考验逻辑思维能力。
视野开阔还不够,看得多了还需要自己动脑思考,思考就需要逻辑分析能力,能力强,思考的结果就严密,收获就大,就不容易出错。
逻辑思维严密的人,能快速地把问题梳理清楚,透过现象看本质,抓住问题的关键。
-
宏观的掌控能力,以及对细节的无限追求
同样是前端开发,为什么有的可以写出复杂无比的开发框架(Framework),有的只能打游击战似的写些小程序?同样是交互设计师,为什么有的设计出的页面风格统一、考虑完整,有的凌乱不堪、残缺不全? 宏观掌控能力的不同。
具有宏观掌控能力的前端开发,编写一个javascript函数时,决不会仅仅想着这个函数本身,还要考虑这个函数写法的规范性、函数本身的扩展性等一系列问题,他会一边写一边想着把这个函数标准化并重用。
具有宏观掌控能力的交互设计师,设计一个系统时,首先会在脑中想好整个系统的轮廓(甚至每一个细节),画好流程图,考虑系统任何一种可能的分支,最后才付诸实施。
追求细节的人往往追求完美,拥有追求完美的心才能拥有追求完美的行动。如果应聘的人具备了上面三点素质,又追求完美,那对我来说这就是个可遇不可求的人才。
对技术素质的考查
由于技术素质没有明确的定义,因此如何考查也就不存在一定之规,更多是靠和面试着交谈时的一种感觉和体会。但是下面是一些很有效的方法:
-
考查这个人在网络上的表现
这比简历有效多了。用Google搜索一下他的名字,看看都在哪些网站出没、发表过哪些言论、如何与人沟通、技术素质和水平怎样等等,不出20分钟,应聘者情况的了解就八九不离十了。
-
审阅他的作品
同样简单有效的方法。很多时候,拿到作品后基本上第一眼就大致知道其水平。这部分的判断标准可能比较主观,其实就是对设计的感悟。
-
评判面试时对一些特定问题的答案
这个我曾经专门撰文,目前还处于草稿阶段,我会稍后发出来。


