拿来之笔 希望铭记 笔记 出处 http://www.jianshu.com/p/acb8885283dc
最近有机会对不同岗位的应聘者进行面试,其中有架构师、技术经理、开发岗位。谈谈几个印象深刻的。
面试者一,女性、重点大学硕士,从事软件技术工作十四年,应聘架构师岗位。按照套路问了下对于软件架构的认识和理解,回答的倒也干脆:“那的看具体的需求。”,把我噎的一愣,可能牛人都这样吧。问具体点,比如有个系统需要与全国几十家合作单位做业务对接和数据交换,各个单位的系统都是异构的,甚至连开发语言都不一样,如果让你来设计这套产品的架构,你觉得重点要突出什么,再从稳定性,扩展性,以及产品演进几个视角来阐述下你怎么来设计架构。回答“通讯和你的编程语言没有关系,只要定义好通讯的规范就行了”,“对,没错,还有呢?”,又说了点,但都没到正题,那这样吧,再具体点,如果核心业务系统就一套,但是对每家合作单位的通讯不一样,你觉得怎么实现比较好,原本是想她能谈谈动态路由(转发),各种设计模式的,但都没谈到。最后还谈了一些具体的技术细节,因为她做通讯相关的系统比较多,epoll、select、poll、netty等等,都不尽如人意,给我的感觉就是她可能真的很多年没更新过自己的知识了,还有就是没有全局性的意识,不管写了多少年代码,要从事架构师的职位,必须要让自己的视角站在系统的全局上,而不仅仅是“需求是什么”。
面试者二,男性,重点本科,从事软件技术工作十一年,应聘架构师岗位。简历上最突出的一句话就是精通SSH,来了也是一样,大谈对SSH有多熟悉,自己用SSH开发过的一套框架。然后就顺着他的强项开始,架构和框架的有着怎么关系,回答的根本就没怎么理清楚,或者没考虑过这个问题吧。谈了他框架中的安全机制,缓存机制,回答的都不行,最后谈到AOP的原理,居然说没研究过框架底层的东西,所以那就没有必要再聊了。如果说在一个只做CRUD的team里,以他的经历可以做一个开发负责人。但是既然还想继续应聘技术的岗位,至少得对技术有过一些研究吧。替他庆幸辞职了,多出来看看吧,或许有好处。
面试者三,男性,在职研究生,从事软件技术工作八年,应聘技术经理岗位。先从数据库开始,存储过程,常用的数据库调优,还都不错。开始框架部分,目前主流的框架没用过,也没研究过,做的项目都是基于公司已有的一套封装框架之上。这都没关系,我说如果脱离你公司的那一套东西,也没有人给你封装一套基础框架,给你一个项目你能搞定吗,他犹豫了半天说了“能”。下面聊了一些设计模式、MVC、单点登陆、任务调度、多线程、集合框架、webservice等技术点,讲的都不行。感觉他好像只停留在他们之前那一套框架上,会用那一套东西,没深入了解过其实现原理,也没接触过他的框架和技术,用那一套固定的东西实现一些功能,倍溜。
这些伙伴都学历不错工作经验也都挺长,所以印象深点,面试完他们。脑海里一直想着之前看罗辑思维,罗胖说过的“舒适区”的概念,每个人的知识或能力,都有一个“舒适区”的范围,人会在这种固定的状态或模式中感到舒适,一旦离开会感觉到痛苦和不安,而学习和提升的过程,就是一个不断逼着自己离开“舒适区”的过程。需要“逼”着去做的事情,都不容易啊!新年,与诸君共勉。