今年一月份以前端主管的身份进入现在的公司,到现在为止陆陆续续面试了十几个应聘者,惊讶地发现前端这个细分岗位的市场行情竟如此奇怪,一方面是各种公司争相聘请,导致价格高的浮躁;一方面是从业者大多经历尚浅,浅到没什么技术积累,没什么项目经验,更可怕的是没什么进取心。这里总结一下,自勉。
一年经验重复用
这个是最可怕的,如果不仔细了解,你很难分辨工作经验里面的水分。我面试过的人里面大多有4-5年工作经验,简历各种牛逼,大公司出身,参与项目大大小小几十个,按理说这种类型的人才,就算不够好也不至于差吧?
面谈发现,所谓大公司经验基本是外包性质,好吧,外包就外包,这不是重点。工作了4年,HTTP协议,不了解;TCP三次握手,课本上学过;web性能瓶颈,没关注;闭包,就返回一个函数嘛…十问九不知,临走问预期,12K,15K,18K…实话说,这些人在我看来跟刚毕业的就没差多少,怎么就好意思说出这个数字呢?我怎么要你啊?
有一个更奇葩的,工作了5年,在一个小公司当着主管,连代码打包都没试过,sass、less、grunt,一律没听过,哥哥,你是主管诶,好意思说你手下没有学习精神,拖累了你的学习?
技术能力
经常逛博客,感觉满大街都是牛人;实际去面试了,发现大多技术能力都很一般。看过的简历里面,有很多都写着自己精通这个,精通那个。实话说,在现在这种社会,适当的夸大与装饰并不过分,甚至很有必要。但是你过分的夸大,这就很有问题了吧?
有一个特别奇葩的,工作三年,精通HTTP协议、JQUERY、Bootstrap、angular之类之类的。实际那么一问,JS的OOP,没试过;JQUERY源码,没看过;JQUERY插件,自己没写过;angular,业余看过一下,ng-view没用过。你这样的水平,连了解都够不上,怎么就好意思写个精通?你十问九不知之下,你好意思说你预期16K?
底层知识
确实,大多数程序员(特别是前端)的大多数工作都没什么特别难的任务,但这就能成为不了解基本算法、数据结构、网络协议、W3C标准协议?拜托,现在早就不是那种随便写写html,写写jquery就能满足需求的时代了。如果你不懂数据结构,你都不知道怎么构造一棵动态菜单树;如果你不懂算法,你就不知道怎么高效操作这个菜单树;如果你不懂网络协议,你就不知道怎么优化代码,怎么利用代理缓存机制;如果你不懂W3C标准协议,你连事件冒泡都说不清楚。
事实是,我试过在一个招聘会问了所有应聘者,没有一个说出DOM标准事件的三个阶段。
专业素养
这一点很抽象,也很重要。最基本的一条,你带简历了吗?不是开玩笑,真有很多人是不带简历的,有一个奇葩带是带了,我问他要,他说他就一份,还得留着等下家面…无力吐槽。很多人我都会问他,上个项目用到什么技术,为什么用这个,有什么优缺点,有什么替代方案,基本都答不上来;或者问,对自己的前景有什么规划,五年内有什么计划,目前处于哪个阶段,一开始都可以答的很好,但是你问的越细致,他会越不知所措;或者问,对MVC有什么了解,MVVM呢,有没有自己搭过项目架构,基本都回答不上来。大哥,拜托你稍微对自己的职业生涯负责任一点好吗,长这么大了,还过家家呢。
额,对了,还遇到过一个大姐,整个面试过程,整整十多分钟,一直在低头玩手机。。。玩手机。。。
总结
只能说,市场很复杂,人心很浮躁。前端入门很容易,会用html搭一个页面框架;会用css写一些基本样式;会用jquery写写dom交互,就基本可以挺着胸说自己是个前端工程师了。前端提升很难,算法、数据结构、oop是老生常谈了;javascript、dom、css、html5这些是标配;性能优化、安全性、代码优雅性、seo,这些也是必然需要了解的。前端开发环境很轻便,也很繁琐,各种工具、框架、架构模式的应用也是衡量专业程度的标准。
如果你连上面这些都不理解,我凭什么要你?
我们需要的前端
我们公司刚拿完投资,出手在行业里面算是阔绰的了,要求也不高,思维正常,沟通正常,态度端正,技术对得起工资就OK。我们是一个学习型团队,我们也相信每个人都有学习欲望及能力,所以如果看到有潜力的一样会招。我们是一个迅速发展的团队,项目奖,年终奖,五险一金,该有的都有,一经录用,待遇从优。
唯一一条,我们不介意老,但是不要老油条。