一位 8 岁“前端老人”的职业经验

原文链接: https://my.oschina.net/u/4146253/blog/3066786

本文转载自GitChat的一篇文章。

大家好,我是王超,一名前端工程师。从最早的人人网,到奇虎360 ,再到现在的快狗打车。转眼一瞧,我在这个行业已经是一位 8 岁的“前端老人”了。

非计算机专业出身的我从事前端这个行业,确实经历了很多的挫折,走了很多弯路。但现在回首自己的职业经历,每一个选择都至关重要,每一份经历都有不一样的收获。

01毕业生第一份工作千万不能选错

我毕业后第一份工作是在一家广告联盟公司做 flash 广告设计和平面设计。

当时的我心中规划着未来能在 flash 技术上做出一些成果,也买了一些设计和 Flash 相关的书去研究。但是一旦选择错了,再努力也很难取得一个好的结果。

让我焦虑的是随着 Web2.0 时代的到来,Flash 技术已经逐渐在走下坡路了,这条路可能是条死路。

后来公司来了一个做前端的同事,通过多次交谈了解之后我转行了前端。现在来看,自己最终找到了一个正确的航道。

在这里建议刚刚毕业的大学生们,找第一份工作一定要仔细调研,争取少走弯路。

平台对新人很重要,好的平台会让新人有很好的成长起点,而且在有经验的前辈的提携下,新人成长得更快,为以后的职业发展奠定良好的基础。

一位 8 岁“前端老人”的职业经验_第1张图片

 

 

02在人人网见证从 PC Web 到移动 Web 的跨越

在人人网工作的那段时期,正赶上前端从 PC Web 开发过渡到移动 Web 开发。

那两年多里,无论是 PC 上的开发还是移动上的开发都做了很多尝试,比如 PC 各种浏览器厂商的兼容问题,移动端上各种机型的适配问题,使用 CSS3 实现各种新特性。

此时,大环境下的前端领域也在发生快速的变化,像Angular、React 等现代前端框架已经开始出现。而人人在那时依旧使用传统的原生 JS、jQuery 重复性地完成项目,自己的技术也进入了一个瓶颈期。

面对瓶颈,我决定离开人人网,换个环境来突破。

一位 8 岁“前端老人”的职业经验_第2张图片

 

03奇虎360 的成长:越痛苦提升越快

360 这边的技术体系很完善,前后端分离开发、前端部署平台化、上线前代码自动 diff,新技术的应用、定期的技术交流。

入职之初我做项目很吃力,因为从开发框架 Backbone、React 到构建工具 Webpack,再到开发方式使用 Linux 开发机,所有的东西都是新的,感觉哪哪都不会。

我足足用了半年的时间,直到和同事一起使用 React 重构 360 地图,才完全熟悉和适应。

让我觉得无比痛苦的时候恰恰是自己提升最快的时候。

一位 8 岁“前端老人”的职业经验_第3张图片

 

04快狗的挑战:建设前端工程化体系

快狗打车早期的前端开发方式比较原始。首先是前后端不分离,整体研发效率很低。

其次前端同学只负责切页面,技术栈陈旧,完全落后于业内先进的团队,前端工程化体系的建设为零。

担任快狗前端负责人后,我开始着手推进前端工程化。

首先就是升级技术栈,并进行前后端分离,之后又建设了前端部署平台。

为了最大化降低开发成本,提升开发效率,又陆续推出了团队的组件库、脚手架、以及性能监控平台等逐渐形成了完善的前端技术体系,快狗的工程化程度大大提升。

作为团队负责人从无到有搭建技术体系确实是一个挑战,尤其是对新晋的负责人来说。

这次的挑战让我领悟到,技术体系建设要以解决业务痛点为目的。

任何的技术工具和平台建设都不能脱离这个目的,不能仅仅为了试用一下某项技术或者好玩就去搞。否则很可能是白白浪费了研发成本,却很难在团队中推广使用,无法产生价值。

技术体系建设要充分讨论后再实施。方案的设计讨论清楚了,才能避免将来各种问题的出现。建议将 70% 的时间用在方案设计和讨论上,30% 时间用在工具和平台的研发上。

一位 8 岁“前端老人”的职业经验_第4张图片

 

05从切图仔到前端 leader,如何跨越式成长

从事前端开发这个职业七八年了,既经历过工程化程度极低的开发方式,也见证了这几年前端领域工程化水平的大幅提升。

作为这个过程的亲历者和实践者,自己既做过所谓的"切图仔",也作为团队负责人从无到有规划建设过完善的前端技术体系。

希望自己在工程化方面的一些实践经验能给大家带来帮助。

我相信每个踏入前端行业的同学都有着一颗热爱学习的心。

前端行业不如后端那么成熟稳定,一直在高速地推陈出新,每年都会有新的框架出来。但每个人的精力有限,都希望投入有限的精力,学到最有价值的东西。

前端的小伙伴应该能够很明显地感觉到,在面试过程中,各大公司面试官已经非常注重工程化能力的考察了。

一方面是由于大公司本身业务复杂,相应的前端工程化程度高,配套的基础设施很成熟,对人员的要求自然很高。另一方面,现在的前端开发都是在一些先进的工程化工具基础之上,比如 React、Vue、Sass、Webpack 等。

只有具备良好的工程化能力,才能更好地应对日益复杂的开发任务,才能更容易进入大公司。

一位 8 岁“前端老人”的职业经验_第5张图片

 

关注我,每天发布最新的IT技术文章。

转载于:https://my.oschina.net/u/4146253/blog/3066786

你可能感兴趣的:(一位 8 岁“前端老人”的职业经验)