简介: 前端工程师的修炼没有捷径,踏踏实实的经过一个个项目的实践来升级打怪实现进阶;本文仅分享本身11年的前端生涯,探讨一直在业务中的技术人的成长之路,也复盘再认识下本身,每一个节点我遇到的问题和个人选择。前端
做者 | 风月
你们好,我是风月,2014年二进宫进入阿里,目前是业务平台体验技术数据服务前端团队负责人,负责 BizCharts 横向建设以及财鲸数据业务支撑。本次分享我将回顾做为业务前端从前端工程转型到数据可视化过程当中的心路历程。node
前端工程师的修炼没有捷径,踏踏实实的经过一个个项目的实践来升级打怪实现进阶;本文仅分享本身11年的前端生涯,探讨一直在业务中的技术人的成长之路,也复盘再认识下本身,每一个节点我遇到的问题和个人选择,过程当中聊聊走过的弯路但愿能让你们少走弯路就达到个人目的了,不说教,不带货。jquery
在我十一年的职业生涯中,以一个阿里的BU为单位,从推进解决业务问题的角度,我基于本身有限的观察总结了须要修炼的6个层次仅供你们参考。
第1层是我的专业技术能力的修炼:web
第2层是人际沟通能力的修炼:面试
第3层是组建团队&架构能力:算法
第4层跨职能协做能力:编程
第5层组织发展能力:后端
第6层战略眼光:性能优化
2009年,我从浙江中医药大学计算机专业毕业,和CS强势专业的大学仍是存在差距的,学长学姐也没有给出参考模版,一番分析后,不认命的我仍是决定继续走前端工程师路线,一开始就颇有自知之明,不怕从小公司作起。我大一就开始抓紧机会在计算机学院的创业园里开发学院网站以及大四整年出去实习来积累研发实战经验。幸运的是,几经周折如愿以偿P4入职阿里作前端,可能面试官看中个人不放弃,可否活下来靠本身了。服务器
2009-2011年是个人第一份正式的工做,这阶段我主要负责阿里妈妈淘宝客的前端开发工做,主要技术栈是类库YUI,让我学会了模块化开发的前端工程思惟。当时同团队的师兄们已经在实践应用backbone,尝试开发单页,还有一个骨灰级的大神 @李牧 在团队中坐镇,相对而言,对我这个菜鸟来讲,09年就接触到了前端届的MVC,学习机会不少,技术氛围也不错;
2011年,本该珍惜来之不易工做机会的我,却因一点小插曲(毕业不久怀孕生娃拿了阿里职业生涯中的1)做出了看其余机会的冲动想法,同时被外部的创业公司以薪资double和技术TL岗所吸引,就这样离开了阿里。创业这一年日日生存在生死线上,资金紧张、融资失败、1小时裁人、互相鼓励、迷茫、解散,从激情满满入职到失望离开,至今历历在目。创业这一年学到的不是技术精进,而是血泪教训,意识到我正在偏离前端技术专家这条主航道,过早被眼前的薪资和TL岗位所吸引,忽视了欲速则不达的道理,我真正须要的是一个稳定长期发展的工做机会,不能短视到只看眼前利益。
2011-2012年,这阶段个人技术栈是seajs、jquery,关键词是模块加载、类库、轻量、ftp上传部署;
2012年,我顺利入职了腾讯(杭州),负责应用宝PC端的Web前端开发,两年后做为预备Web前端TL参加了潜龙培训,一切都在往好的方向进行中。可是,2014年初腾讯杭州分部忽然被通知要求将应用宝PC端的业务从杭州迁移回深圳总部,杭州研发人员要么选择base深圳,要么在杭州从头再次孵化新业务,且此时腾讯总部也在大面积的收缩业务,从自研转变为投资合做伙伴。做为杭州土著家庭的我,要想继续个人技术专家路线,只能选择离开,找到一个真正足够大的互联网平台,可以支撑我长期发展。
2012-2014年,这阶段个人技术栈是Angular,MVVM、单页、shadow dom、框架、编译、CDN、动静分离等关键词;
痛定思痛,2014年04月28日,选择在生日这一天二进宫阿里,表明个人新生,从看似光鲜的TL岗从新回到一线开发工做,且暗暗下决心,这一次毫不会主动离开阿里,也不转岗,坚持到底活下来。此时二进宫的我已经工做五年,如今想起来特别感谢这一年没有层级和年龄的限制,让我这个浪子能够有机会回头。考虑离开阿里的同窗必定慎重思考将来二进宫阿里是否还有机会,千万不要草率做出决定,能够参考个人血泪史。
2015-~,这个阶段我一路写过全栈node、移动端zepto、React,阿里统一以React做为底层技术栈,内部紧密共建React生态,toB研发模式逐渐造成,D2C(design to code)、webIDE、搭建发展如火如荼,数据可视化也正式被阿里加入前端招聘细分子方向,影响着前端从业人员努力的方向,而且很多阿里优秀的库对外开源回馈社区。这个阶段是最百花齐放的时刻,也是无形中在推进你成长,不要忽视环境的力量;
11年里前端技术栈发生着剧烈的变化,前端的职能边界一直在延伸。阿里很是鼓励咱们在技术产品化上有更多的尝试,在阿里已有的平台上,独立从前至后完成一个专业的产品彻底不是问题,就看你是否限制了本身,固然牺牲业余时间学习不可避免,我本身想的很清楚我会获得什么,失去什么,将来本身把控。
感悟:功利心是大忌,长远职业生涯考虑,发展才是硬道理,面包会有的
冲动是魔鬼,工程师在打怪升级的过程当中,会遇到很是多的“意外”面临选择,好比失恋、迷茫、怕累、家庭、没信心、与主管意见不合、晋升失败、被打3.2五、创业吸引、薪资吸引等等缘由,无可厚非。但我更想说的是,想清楚本身真正想要的是什么?若是肯定是技术专家路线,那就有本身的坚持,职场上的玻璃心基本上不适合长期发展,大几率“出局“。尤为是像阿里这样的高速发展的互联网公司,外部环境的剧烈变化必然引发内部的变化,一线的开发要有感知,但通常影响没那么大,专一作好本身的本职工做更重要;
正视3.25,从我我的了解的,大部分有三种状况。第一种是与该层级要求的能力有距离,如刚入职的新人不适应新环境,或者刚晋升到新层级的老人处在迷茫期;第二种是工做方式出现问题,如只会埋头苦干纯执行没有本身的深刻思考;第三种是因身体缘由,如生病修养一段时间,或孕期须要更多休息等特殊状况;前两种状况均可以经过努力来解决。3.25只是表明当前这个阶段,并不表明一年后两年后的你,成长须要看的更长远。至少我认识的发展不错的同事大部分都有被打3.25的经历,包括我本身,第二年逆袭3.75和晋升的大有人在,也包括我本身;更关键的是,主管的理由是否是更多关注在你的成长上,有没有看到本身的成长。
2016年初,感谢主管 @梓骞 信任我,让我承担商家业务的前端TL,此时此刻的我,一方面要熟悉新接手的业务,一方面要修炼组建团队的能力,同时承担PM的工做。这一年下来,业务作起来了,团队建起来了,而我本身的发展呢?精力被分配,代码量少了,编程能力生疏了,开始迷茫,技术TL到底该不应写代码?是否只有我并发能力不行?只有我不适合当前端工程师?
我甚至主动的约个人主管 @梓骞 探讨我转型PD的可行性,认真的讲我对本身优劣势的分析。主管没表态,告诉我迷茫是好事,说明我在思考,对于个人想法不拒绝也不愿定,只是让我本身去尝试后再作决定,但前提是不能影响当前的本职工做,且明确的告知我技术TL必须写代码,并且是核心的代码,不管有多忙,都要保持住技术敏感度,熟悉当前的研发体系,对研发痛点有体感,再结合业务痛点才能做出更正确的判断和技术决策,不然面临的就是职业生涯的天花板甚至被阿里淘汰。
通过主管一番的指点迷津,了解到技术TL参与研发的目标后,我开始思考怎么选择项目来确保ROI,作好时间管理,而不是事事参与后精疲力竭还拿不到结果。此刻再回到业务自己的痛点,贴着业务打是最稳妥的方式,大数据客户运营平台最大的痛点就是可视分析的高效表达,且鉴于以前在ARMS监控平台中积累的图表开发经验,我发现本身对数据分析场景下的数据可视化有浓厚的兴趣,能够先从这里入手深刻了解一下体系。短短几个月的探索,奠基了我后来几年为之奋斗的细分技术领域方向-数据可视化。
感悟:在业务痛点中发现机会,方向对了就不怕远,坚持就是胜利
如今回想,职业生涯中出现迷茫不可避免,是很常见的事情,主动找主管沟通是很明智的选择,能够更快走出迷茫期,避免陷入误区做出不成熟的决定。好比在TL初期不少同窗都会遇到是否坚持写代码的疑惑,时间管理的疑惑,专业发展的疑惑。
在入行以前,我和你们同样觉得只是简单的使用图表库,会API调用,能渲染出来折柱饼就行,实际上数据可视化这个方向别有洞天:
同窗看到这里,不由又问?那前端工程能力是否是没有要求,我只会作渲染实现绚丽的大屏?又是一个大大的误区,前端工程永远是Base能力,没有这个基础,基本能够不谈其余的,由于阿里的业务是一个大工程,而受限于你的技术栈不全,你能发挥实力的业务少之又少,谈何独当一面?所以大部分新人入职后,都会优先开始工程能力的训练,存活下来是第一要事。我自身可以顺利转型到数据可视化领域,也是依赖以前积累的工程基础;
感悟:机会老是给有准备的人,保持热情,坚持(死扛)领域深耕
我本身的经历是,刚开始是2017年初从商家业务的痛点入手,先重点作统计图,在做出bizcharts的原型而且应用到业务中后,和AntV创建深度的合做,基于G2沉淀出BizCharts赋能给集团,后又开源反哺给社会,这个过程当中也深度参与前端委员会数据可视化小组,但愿能贡献本身的一份力量。过程当中牺牲了不少我本身的业余时间,好比参与答疑、参与文档优化和demo编写,确实很辛苦,可是我本身乐此不疲,由于过程当中我了解到不少用户的真实诉求还有真实的业务用例,这对于我判断bizcharts的发展是颇有帮助的,也逐渐清晰下一步应该怎么作。
后随着本身对数据可视化的理解加深,本身能Cover的业务机会也愈来愈多,2018年开始组建专业的数据可视化团队支撑业务平台的数据服务和大财鲸业务(阿里大财务中台),如今重点投入精力作财务行业领域的可视分析系统和ToB企业级工程解决方案。会一直深耕下去,踏踏实实的,一步一个脚印,稳扎稳打,一块儿加油。
感悟:不害怕失败,深耕毫不是一蹴而就,不积跬步,无以致千里
以前有同窗问我:为何我选的是数据可视化这个细分方向?理由以下:
过程当中我也是从一次次的业务中实践和摸索,在我看不清的地方,就跨出去先试试水,没有人一开始就知道全部,围绕着数据领域的业务一步步的作,一点点的积累,前期还看不到本身的成长,可是在坚持两年后,忽然有一天发现本身有系统性的观点,能够和 @宁朗 @御术 等数据可视化领域的前辈,在一块儿平等探讨业务发展问题和技术建设的问题了,其实就是日积月累的经验让我从量变到质变了,一万个小时的定律至少在我这里是准的,失败并不可怕,可怕的是还没开始就放弃了;
个人主管 @梓骞 常常会讲,阿里不少小二比咱们聪明,却还比咱们更努力,咱们还有什么借口说是天赋的问题。虽然聪明人不少,但不缺有想法的,更缺的是实实在在落地作实事的;内网ATA有不少很是高质量的前辈体系化的经验总结,很是宝贵,可以扩大技术视野,很是适合在碎片的时间里充电。
心态要摆正,成长是本身的事,职场那么长,长达三十年,为何我要跟面子过不去,老拿本身去和身边的同窗比,非要去死磕层级,累不累?坚决我当前作的事是否是一件正确的事情,是否是解决了业务痛点,在当下,个人核心竞争力是什么?成长真要有什么灵丹妙药的话,多是个人主管 @梓骞 一直以来的思惟方式是怎么经过技术产品化等工做,提高团队的运转效率,那就能够作更多新的事情,天然而然的就成长了,这个思惟方式对我影响很深,至少通过目前为止的验证仍是成立的!一年可能看不到成果,须要三年~五年;
在经历千辛万苦以后,我幸运的晋升到了P8,你觉得终于能够松一口气好好休息一下,实际上是不存在的,由于你面临的是新层级的指望和要求,讲人话就是距离3.25很近甚至淘汰。说好的不可替代呢?真相是在工程世界里没有银弹,也就是不存在不可替代性的人,连马爸爸离开阿里,阿里也能正常运转。但技术领域研究越深刻,权威度越高,替代成本就越高,必定程度上能够造成核心竞争力。阿里的舞台很大,身边的学习对象不少,立志作一个懂商业的数据可视化专业人士,打深、打穿、打透,新的征程,从新出发,努力踏上数据可视化领域的新阶梯。
原文连接 本文为阿里云原创内容,未经容许不得转载。