摘要:前端的寿命低,过了30就不能做了?看看这位阿里大佬是如果开启他的前端人生的。
这是一个在前端之路上走了11年的程序员的成长经历和感悟,希望对刚刚入门的你有所帮助。
01
这是我的简单经历,2008 年入职淘宝 UED,师兄是佩玉,跟小马、圆心都在同一个大团队,很快乐的一段岁月。
到 2011 年时,淘宝有一个赛马机制,我一腔热血就出去了,搞了几个月惨败,就又回到淘宝技术部,到 Java 团队做前端工程和性能优化。
当时一边写 Java 代码一边写前端,最终还是更喜欢前端,于是 2012 年转岗到了支付宝前端技术部。
2013 年无线 ALL IN,大量前端面临选择,我选择了夕阳红的 PC 业务,留下来继续做 PC 版支付宝。
当时很多需求,刚准备欢欣鼓舞去做的时候,会经常被告知项目暂停,不用做了,很难过。
好在 2014 年开始,大量中后台业务需求开始疯狂增加,特别是金融云业务的启动,中后台的产品体验也变得越来越重要。
于是 2015 年开始组建 UED,体验技术部有了第一个正式设计师,随后逐步往下发展,业务和团队都越来越好。
整个经历分三段:一是求学生涯,然后是在淘宝的岁月,以及现在的蚂蚁时光。
我心里一直觉得自己是个淘宝人,去年在阿里满 10 年,突然发现自己在蚂蚁待的时间比淘宝还长,已经是个蚂蚁人了,很神奇。
于是 2015 年开始组建 UED,体验技术部有了第一个正式设计师,随后逐步往下发展,业务和团队都越来越好。
整个经历分三段:一是求学生涯,然后是在淘宝的岁月,以及现在的蚂蚁时光。
我心里一直觉得自己是个淘宝人,去年在阿里满 10 年,突然发现自己在蚂蚁待的时间比淘宝还长,已经是个蚂蚁人了,很神奇。
想这 11 年里,对自己的成长来说,最关键的是什么。我自己总结是三个关键词:全情投入,守正出奇,愿等花开
02
我不断提醒自己,做任何事情,一定要全情投入。
讲个故事,2008 年刚加入淘宝 UED 时,在工位没待多长时间就进入了闭关室,一进闭关室基本上就没怎么出来。从交易二期、三期、四期,一直做到五彩石项目。
回想起来,非常怀念。入职后的几年时间里,自己的状态就是天天写代码,很疯狂,而且很有成就感。
在做交易业务时,我心心念念的,一是想把前辈们写的不太好的代码改得更好,二是发现业务很有趣,可以通过代码对整个淘宝交易流程很熟悉。
现在的交易流程中,在退款等页面,前几年看还有部分代码是我写的。当时对整个淘宝交易流程超级熟悉,很有骄傲感。
可能正是因为这种疯狂,2009 年从 P6 跨级提名 P8,没经过面试就通过了晋升。
还有一个印象深刻的项目是旺旺点灯。旺旺点灯的代码并不多,但逻辑有点复杂,比如说很多店铺的客服小二都叫做沉鱼落雁,需要考虑怎么把账号正确的分发过去。
旺旺点灯也开启了自己想写 SeaJS 的欲望。旺旺点灯第一个要解决的是加载问题,类似阿里妈妈的广告投放脚本,要想办法能优雅更新,能处理多版本兼容,能加载更多模块等等。
旺旺点灯还有个逻辑是通过 URL 来拼接参数,这会带来一个灾难,IE 等浏览器对 URL 的最大长度有限制,印象中是不能超过 2083 个字符,超过时就要做拆分。
分批发送请求,发送是异步化的,但在结果返回后,要保证返回的结果能够按顺序正确执行,这东西其实就是 SeaJS 的核心。
在 SeaJS 里,都是批量异步并发请求模块,然后要保证每一个请求结果返回之后,执行循序可控,要妥善处理好模块的依赖关系。很多技术上的想法,都来自业务本身遇到的问题,挺有意思。
KISSY 也是来自业务。最开始交易线用的是 YUI 类库 ,用 YUI 的过程中发现它的代码写得也一般,很多模块官方更新比较慢。
当时为了追求极致性能,就很想把 YUI 基础类库里不太需要的代码删掉,这中间你会发现很多优化点,甚至有比 YUI 更好的代码实现方式。
模块组织粒度上,也有更适合交易线业务的最佳实践,于是就一路把 KISSY 的基础内核代码写了出来。同时承玉的加入非常给力,让 KISSY 快速往前发展。
在做淘宝交易线的业务和旺旺点灯的业务时,真的是把整个时间和情感都给投入了进去,天天心心念念的就是业务流程和代码优化,想尽可能把代码的可维护性和性能做到极致。
这过程中,SeaJS 和 KISSY 等很多有意思的想法就出现了。那几年还做了淘宝首页、全局吊顶、淘足迹、社区等业务,每个项目都倾注了情感。
有个项目合作过的妹子,在我到支付宝后,还送了一个芝士蛋糕给支付宝的前端芝士分享会,逢人就夸我是合作过的前端里最好的。
当年经常她说一个想法,我第二天就把原型做了出来。很沉浸很快乐的淘宝时光。所以我给自己总结的第一个关键词是全情投入,享受当前业务,想办法做到极致。
在投入过程中要保持自己的真实不装。很多前端都喜欢做类库,如果真的是真心想做,就大胆去跟 Leader 说。
核心前提是要想清楚,做完之后对业务的价值是什么。在 PC 互联网时代,2008 到 2012 年都在追求性能优化,当时很大的一个背景是极致的性能优化对 2C 业务有很大价值,于是就有机会去做成。
人唯一的财富就是自己的时间,要对自己的时间负责。最好的时间管理,就是全情投入。
03
大家可能都会读成守正出奇(qi),但其实并不是,正确读音是(ji),奇数的奇,02468 是偶数,13579 是奇数,奇数比偶数会多出一点,奇(ji)就是多一点的意思。多一些人力和时间去做更多事情,才能赢取胜利。
守正出奇的典型案例,是韩信的背水一战。韩信有三万多人,要去攻打赵军二十万人。能胜利的很大原因,并不是背水而战没有退路,而是韩信在背水之外还有奇(ji)兵,派遣了两千人半夜去埋伏。
等赵军以为韩信大部队背水一战快要灭亡而倾巢出动后,埋伏的两千奇兵就从后面杀入赵军的空营里,快速夺了军营,让赵军大乱而胜。
致敌的关键是正合奇胜,不是傻乎乎地把所有士兵都放在水边去背水一战。背水一战的详细故事,推荐收听得到课程《华杉讲透孙子兵法》,很精彩。
回到前端领域,业务为正,专业为奇。首先要把业务服务好,要保证客户第一。
对直接客户,我们习惯称之为业务方。前端需要为最终客户创造客户价值,同时需要处理好业务方的客户感受。
前端资源一直很紧缺,与业务方合作时,经常并不缺客户价值,很容易处不好的是业务方的感受。每个前端 TL 应该都经历过业务方找我们要前端,很头痛。处理好业务方的感受有很多办法,说下在蚂蚁的一个案例。
蚂蚁中后台一直很缺前端,为了解决这个问题,推广过全栈开发。直接让 Java 开发做前端的活,很容易引起 Java 团队的反感。
当时我们的做法是,不断找 Java 一些 Leader 布道,真实说明前端资源确实不够的困境。
同时坦言说明,我们需要共同解决的问题,并不是前端资源问题,而是如何共同努力把业务给做完做好,希望 Java TL 能进来一起解决。
然后提出全栈方案,我出讲师,培养 Java 同学去具备前端开发能力,最最核心的就是大家一起齐心协力去让业务线的项目研发有办法做下去。
最终你会发现,最重要的是如何把业务方一起拉下水,跟你一起去解决问题。
一旦有了这种感觉,你跟他的情感沟通、一些链接就建立起来了,他对你的感受就不一样了,后续有很多合作机会也就会出现。
奇和正需要能建立直接关联,奇要能帮助到正,这很重要。从业务的视角来看前端价值,无非就两块:能帮助到业务的研发提效,让业务能顺利研发下去。能够给业务的产品体验带来比较大的实打实提升,能带来业务增值。
专业的奇也要往这两个方向去做,争取到自己主管以及业务方的认可和同意。人心都是肉长的,你在沟通的过程中他会理解你的,他会实打实看到这里面的价值。
然后通过正和奇能相互促进的方向去做,你的团队就不会只做成业务支持,而是会在守正的过程中,逐步把一些奇给做出来。
现守正出奇,也可以用于学习成长领域。工作为正,学习为奇。
04
这块想讲的,是长期主义,很多事情都需要定力和耐心。我归纳得比较文艺一些,叫做“愿等花开”。如果真的很笃定一个方向投入去做的话,一定要学会等待,不能急着去快速催熟。
工作中,很容易出现揠苗助长的事情。我会跟团队一直强调,很多事情要快,但一定不能急。当心里很急的时候,第一快不起来,第二很容易把节奏打乱。
举一个例子,比如 Ant Design,从 2014 年开始做,真正做到有一点点影响力,已经是 2017 年左右,投入两三年才会看到一点产出。
AntV、EggJS、SFF 等技术都是如此,需要多年的坚持和积累,才会逐步有深度,社区也才慢慢接受,愿意接纳并帮助到这些产品的发展。
最近几年,体验技术部新做的事,都非常需要定力和耐心。Basement 是蚂蚁前端研发平台,到今年 10 月份是第三个年头,才初步做成三年前想做的事。
今年启动了基于 Cloud IDE 的 Basement Code 项目,这是至少要做 3-5 年的一件事。愿意长期投入,是因为内心很相信云端研发一定是未来。
虽然当下有很多怀疑和反对的声音,这些声音需要去听见,同时更需要的,是从大趋势上去判断未来发展方向。如果专业上笃定,就大胆往前,同时小心填坑。
能不断坚持往前走的关键,是团队同学们内心深处对语雀未来的相信。语雀的故事还在路上,肯定还会有很多折腾,要保持快速发展,同时一定不能急,一定要愿等花开。
愿等花开需要定力和耐心,需要不断提醒自己很多事情急不得,要看到更长期的可能,能静下来。
05
从 2016 年开始,无论是个人年度规划还是团队财年规划,都会在脑海里浮现出一张图,我把它总结为“发展的支点杠杆模型”。
寻找支点:图的中间是支点,非常重要。支点是我们选择做前端或选择做某一行业的出发点,是你觉得做什么事情是有成就感的、是有意义的。
无论选择做前端还是后端、做小程序还是中后台,做任何一个方向我们首先要找到的是这件事情的意义。拥有这份意义感后,你整个干活的心态是很不一样的。
取舍与投入:找到一个有意义感的支点后,就需要认真去想,在这个支点上,我们的投入是什么,我们的取舍又是什么。
比如图形语法方向的 AntV 立项后,我们的投入是加班时间,业务支撑已经很累,但还是会充满激情地利用晚上等各种时间去做。当时也有一个很大的取舍,把原来积累的 ACharts 类库放弃了往前发展。
取舍与投入,对个人而言是一段时间内的工作策略,对团队而言就是以年为单位的战略。战略这个词看起来很高大上,实际上也很小,就是团队的取舍是什么,团队的投入又是什么。
有了投入与取舍,经过一段时间,就能拿到一些业绩,达到一些结果。在这过程中,需要不断去看杠杆怎么撬动,要阶段性地去分析杠杆的选择是否正确,究竟自己和团队适不适合去做,在不断反思中调试杠杆。
如果杠杆是成立的,想去的方向跟目标也是笃定的,那就加大投入去做。当把这个模型想清楚后,会发现工作时的一些纠结迷茫,比如绩效晋升等事情,就很简单了。
放下一些东西,专注于事情,内心有相信,行动有坚持,成长往往是水到渠成的。
心态与能力:支撑整个支点的,是你的心态。心很乱时,效率是很低的,心态不稳会浪费大把时间。如何让自己的心态平静,如何保持学习状态,我觉得非常关键。
有了好的心态,再通过项目实战、学习培训等方式就能快速提升能力。光有好的心态,能力提升不上去是不行的,时间一长,就容易变成老白兔。
心态不好,能力很强,也走不长远,这是野狗。要想办法让自己在心态和能力上达到平衡,让好的心态促进学习欲望和专业能力提升,同时能力得到不断提升,也可以让心态更好,形成循环良性发展。
心态的背后是价值观。你崇尚什么样的价值观,积极的儒家,还是比较佛系,这些为人处事的底色,会决定你在遇到很多事情时的心态。这个话题比较大,有兴趣可以线下聊。
价值观就像土壤中的养分一样,默默地让一棵棵树长大,让大家能海阔天空式地枝繁叶茂。
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号