本文转载自GitChat的一篇文章。大家好,我是王超,一名前端工程师。从最早的人人网,到奇虎,再到现在的快狗打车。转眼一瞧,我在这个行业已经是一位8岁的“前端老人”了。非计算机专业出身的我从事前端这个行业,确实经历了很多的挫折,走了很多弯路。但现在回首自己的职业经历,每一个选择都至关重要,每一份经历都有不一样的收获。01毕业生第一份工作千万不能选错我毕业后第一份工作是在一家广告联盟公司做flash广告设计和平面设计。当时的我心中规划着未来能在flash技术上做出一些成果,也买了一些设计和Flash相关的书去研究。但是一旦选择错了,再努力也很难取得一个好的结果。让我焦虑的是随着Web2.0时代的到来,Flash技术已经逐渐在走下坡路了,这条路可能是条死路。后来公司来了一个做前端的同事,通过多次交谈了解之后我转行了前端。现在来看,自己最终找到了一个正确的航道。在这里建议刚刚毕业的大学生们,找第一份工作一定要仔细调研,争取少走弯路。平台对新人很重要,好的平台会让新人有很好的成长起点,而且在有经验的前辈的提携下,新人成长得更快,为以后的职业发展奠定良好的基础。02在人人网见证从PCWeb到移动Web的跨越在人人网工作的那段时期,正赶上前端从PCWeb开发过渡到移动Web开发。那两年多里,无论是PC上的开发还是移动上的开发都做了很多尝试,比如PC各种浏览器厂商的兼容问题,移动端上各种机型的适配问题,使用CSS3实现各种新特性。此时,大环境下的前端领域也在发生快速的变化,像Angular、React等现代前端框架已经开始出现。而人人在那时依旧使用传统的原生JS、jQuery重复性地完成项目,自己的技术也进入了一个瓶颈期。面对瓶颈,我决定离开人人网,换个环境来突破。03奇虎的成长:越痛苦提升越快这边的技术体系很完善,前后端分离开发、前端部署平台化、上线前代码自动diff,新技术的应用、定期的技术交流。入职之初我做项目很吃力,因为从开发框架Backbone、React到构建工具Webpack,再到开发方式使用Linux开发机,所有的东西都是新的,感觉哪哪都不会。我足足用了半年的时间,直到和同事一起使用React重构地图,才完全熟悉和适应。让我觉得无比痛苦的时候恰恰是自己提升最快的时候。04快狗的挑战:建设前端工程化体系快狗打车早期的前端开发方式比较原始。首先是前后端不分离,整体研发效率很低。其次前端同学只负责切页面,技术栈陈旧,完全落后于业内先进的团队,前端工程化体系的建设为零。担任快狗前端负责人后,我开始着手推进前端工程化。首先就是升级技术栈,并进行前后端分离,之后又建设了前端部署平台。为了最大化降低开发成本,提升开发效率,又陆续推出了团队的组件库、脚手架、以及性能监控平台等逐渐形成了完善的前端技术体系,快狗的工程化程度大大提升。做为团队负责人从无到有搭建技术体系确实是一个挑战,尤其是对新晋的负责人来说。这次的挑战让我领悟到,技术体系建设要以解决业务痛点为目的。任何的技术工具和平台建设都不能脱离这个目的,不能仅仅为了试用一下某项技术或者好玩就去搞。否则很可能是白白浪费了研发成本,却很难在团队中推广使用,无法产生价值。技术体系建设要充分讨论后再实施。方案的设计讨论清楚了,才能避免将来各种问题的出现。建议将70%的时间用在方案设计和讨论上,30%时间用在工具和平台的研发上。05从切图仔到前端leader,如何跨越式成长从事前端开发这个职业七八年了,既经历过工程化程度极低的开发方式,也见证了这几年前端领域工程化水平的大幅提升。作为这个过程的亲历者和实践者,自己既做过所谓的切图仔,也作为团队负责人从无到有规划建设过完善的前端技术体系。希望自己在工程化方面的一些实践经验能给大家带来帮助。我相信每个踏入前端行业的同学都有着一颗热爱学习的心。前端行业不如后端那么成熟稳定,一直在高速地推陈出新,每年都会有新的框架出来。但每个人的精力有限,都希望投入有限的精力,学到最有价值的东西。前端的小伙伴应该能够很明显地感觉到,在面试过程中,各大公司面试官已经非常注重工程化能力的考察了。一方面是由于大公司本身业务复杂,相应的前端工程化程度高,配套的基础设施很成熟,对人员的要求自然很高。另一方面,现在的前端开发都是在一些先进的工程化工具基础之上,比如React、Vue、Sass、Webpack等。只有具备良好的工程化能力,才能更好地应对日益复杂的开发任务,才能更容易进入大公司。
转载请注明:http://www.aierlanlan.com/rzfs/6227.html