企业热衷于招有经验的人员,可不仅仅因为他们懂技术。这里假定你是刚毕业参加工作的新人,岗位是前端开发(别的开发岗也差不多,我就拿我最熟悉的来说),那么,你需要适应哪些变化呢?或者说,那些公司的前辈比起你来,强在哪儿呢?
标准剧烈提升
【在学校里】,很多时候——至少在我那个破211——60分万岁多一分浪费。大部分老师也乐意行个方便,只要你考勤尚可,平日作业还行,对老师态度也好,差个三分两分的,老师也不追究,给补到60,大家高兴。
【工作中】不是这样。一段50分(有些时候50分都谈不上)的程序,就不说将来维护的问题,上线后环境一变,就会各种BUG,各种性能问题,各种不能用;凑凑合合的功能和UI,跟竞品比起来各种渣,用户就会各种不舒服,各种操作失误,各种流失;对对付付的注释和命名,可能根本就是错的,将来接班维护的同学,就会各种X你大爷,各种X你老母。(一段把半年“各种”都用了……)
【吐槽】 现在这些小朋友真是做出什么样的东西都敢往上交啊,文本里各种错字,渣排版,前言不搭后语;代码的话没有缩进没有空格没有测试都有可能。
【缘由】 学校里没有什么竞争压力,商业环境中可不一样。就像职业拳击赛,一个走神,露出一点破绽,就会被对手抓住猛打。产品中的任何缺陷,都可能成为“这货还行不行啊,不行我就卸了”的重大问题;更何况50-分带来的多半不是“一点”缺陷,那就真是生死攸关了。
【所以】 新人需要尽快抛弃之前的“对付一下就完了”的错误想法,尽快跟行业标准挂钩。指导原则是,能做多好做多好,因为你自己觉得无懈可击了,也未必能及格……
没有标准答案
【上学的时候】,上课提问或者考试时,多半都有一套标准答案,我们不需要也不能随意发挥。
【工作中】不是这样。技术每天都在进步,新的框架类库每天都在诞生,今天还是最佳选择,不定哪天就有更好的方案可以用。又或者要做的项目因为种种原因只能用某种特定的技术方案,这个方案有很多特殊配置和约定。又或者加入一家创业公司,在某个内部新生架构上开发功能,架构本身也在不断升级换代,昨天了解到的东西可能没几天就作废了。
【缘由】 我们的教育是应试教育,为方便备考,又产生出《大纲》这种东西,规定哪些要靠,哪些不考;哪些要求了解,哪些又需要深入理解;以及最重要的,什么是正确答案。身为学生,我们的工作就是记忆答案。
【所以】 新人必须明白这一点。积累知识,积累解决方案,在特定场景下找到合适的解决方案。不要拿着锤子把啥都当成钉子,更不要固步自封,觉得我现在掌握的方法足够用一辈子。
沟通要高效
【课堂上】,老师问:“都听懂了没有”。下面多半会回答:“听懂了”。听懂的同学自然回答“听懂了”,没听懂的同学可能觉得老师已经很辛苦了,让他反复讲不太人道,多半也不会说“没听懂”。于是这个知识点就过去了,反正以后作业能抄,考试……也能抄,所以不吱声也没什么大不了的。
【到了工作场合】,这个习惯就成了悲剧。新人难免会有知识点的缺漏,老人在工作中常常会形成一些特有的说辞,金风玉露一相逢,新人搞不懂上级布置的任务,或者听不明白培训的内容,就无法避免。这个时候,如果上级问“听懂了么”,而新人的回答是“嗯”,大家应该能看见,一出悲剧正上演。
【缘由】 学校里,之所以没那么严格,很大原因是老师根本懒得管。他们跟下面的学生一样得过且过。但是工作中就不一样了,作为mentor,在指导新人的同时,多半自己还有工作要做,当然希望交代一次就搞定。
【所以】 沟通的时候,听懂就说听懂了,没听懂就要求对方再说一遍,有别的意见或建议也要明确表达出来,千万别过了半天上级来检查工作发现刚才白交代了……
要守信,不要乱承诺
【学校中】,很多事情无所谓,拖一拖,不了了之。即使偶尔老师下派个不紧急也不重要的任务,搞忘了,催得紧的时候随便喊几个兄弟帮忙,多半也能对付过去,事后了不起请个宵夜。
【工作中】 的标准高得多,对付的结果就是失去合作方需求方的信任,如果对方咽不下这口气投诉到上级,结果不容乐观。更甚者,工作内容可能不起眼,但却是合同中规定的,影响到回款,那结果就更严重了。
【吐槽】 最近还真有个逗逼创业者,超级课程表的所谓CEO,承诺分钱不作数,还要搞个认怂会高调宣传自己不守信。后来当然是公开道歉表示反省。希望大家认清这个反面教训。
【所以】 话出口前,你是话的主人;说话出口,你就是话的奴隶。从宽松环境进入紧张环境,作风一定要跟着转变才行。
学习不是为了考试,请主动学习,请长期主动学习
【学校里】 就不用说了吧?
【工作中】 其实前面表达过类似的意思。工作中没有一个明确的时间节点对我们之前所有的学习效果进行审核;相对的,我们也可以认为,工作无时无刻不再考验我们的学习结果。开发技术的发展日新月异,其中尤以前端为甚。Grunt没热闹几年,就被更激进的gulp取而代之;Angular 2 的语法跟 Angular 完全不同;即使同在 Angular ,1.3之后动画引擎也完全重写;微软的 TypeScript 还未普及,Babel就已经斩获1/4的开发者。停止学习,很快就会被时代淘汰。
【吐槽】 除去业界的变化,大公司内部也不断挖战壕、竖高墙,各种内部标准耸立,各种伪开源(主要指国内几大巨头),噪音轰轰隆隆,不断提高大家的学习成本。于是我们不仅要学习新技术,还要学习怎么学习,学习怎么区分该学习什么。真心累,也真心需要适应。
【所以】 学习吧,好的学习习惯和学习方法,会让人受用终生。
总结
学校的环境很宽松,想学习就学习,不想学习干点儿别的也行。父母给掏钱,所以我们其实是买方,是付费享受服务的。那我偶尔浪费一下,老师也不好管,也懒得管。
到了工作场合就变了,我们成了拿别人钱干活的人,我们要付出劳动作为拿工资的回报,老板不仅要管,而且管得合情合理。另一方面,市场也逼得老板必须督促下属输出劳动成功才行。
环境变了我们的作风就得改变,适者生存,做到以上几点,我觉得生存下来是绰绰有余了。