前端工程师如何成长?如何管理前端团队?如何打造团队文化?近日,蚂蚁研究员兼体验技术部负责人玉伯,在蚂蚁内部技术人的成长公开课上,分享了他的人生愿景和心路历程。
玉伯,蚂蚁研究员,体验技术部负责人。2008年加入淘宝,2012年开始在支付宝致力于设计语言 Ant Design、数据可视化 AntV、知识协同语雀等领域的工作。目前一心打造服务于蚂蚁金服及业界的一流技术与产品。
今天给大家分享的议题,是如何做一个简单自由有爱的技术人。简单自由有爱是体验技术部的团队文化,同时也是我个人的人生愿景。我一直会去想,自己要成为什么样的一个人,究竟要活成什么样?这几年我找到的一个答案,就是去做一个简单自由有爱的人。今天跟大家分享一下我对这几个词的一些理解,以及背后的一些心路历程。
做一个简单的技术人
简单,对我来说有些特殊的含义。
我从开始做前端到现在已经有13年。一直以来,我觉得自己做技术时,追求的就是保持简单,追求技术的简单性,也追求做技术时心态的简单性。
在很多圈,包括技术圈,都有鄙视链的存在,比如说做Java的可能看不起做前端的,做前端的可能看不起做测试的,做产品的可能看不起做技术的,做运营的觉得产品都是为业务打工的。在这个鄙视链里,很多岗位的同学或多或少都会有职业上的困惑。
我知道很多前端同学,都会问自己一个问题,前端职业发展的天花板在什么地方?我究竟应该做几年前端?临近 35 岁要不要转型?很多同学都会有疑惑。但在这几年的工作经历里,我觉得其实每个岗位都很重要。我印象中逍遥子说过一句话,他说在公司里面,如果一个岗位不重要的话,其实早就取消了。每一位前端同学,每一位技术岗位的同学,职业上的困惑往往源自心态,要想在某个领域做到好,心态一定要保持简单,这一点很关键。
我经历过从前端转Java,在做前端之前我是写C++的。在转行过程中,我会问自己一个问题,究竟什么样的工作能让自己进入心流状态,能够让自己开心、有成就感、有价值感。然后我会发现在做前端写界面时,在做人机交互实现时,自己会没日没夜地去写代码,最终调试产出后很有喜悦感。只要一个岗位能够带给自己这种心流和喜悦感,那这个岗位对自己来说,就是很重要的。其实没必要去做很多横向比较。
比如说现在AI很火,算法很火,是不是我们都要去转型做人工智能?如果AI这一块确实能让你感觉到心流状态,能持续兴奋,去做就好。但如果只是为了去趁一个热点,那千万别去做。每一个岗位都很重要,不必去做比较。踢足球跟打篮球谁更重要?并不存在这种比较,每个人都很重要。这是我想分享的第一个点。
后来我就持续去做前端了。我自己还有一个感觉,就是做技术,一定要保持真实不装,用专业说话。我之前做SeaJS、KISSY、AntDesign等技术项目时,和团队同学会有不少争执,开源项目里,远程异步吵架更是家常便饭。
在这些争吵里,技术人都很简单,不看层级不看谁长得黑,只看谁在专业上能说服大家。坚持用专业说话,很多事情都会变得简单。现在挺怀念做技术时这种专业上的简单讨论,比如性能哪个方案好,通过数据来看,有一说一,非常简单有效。
现在做产品,我们也在尝试用专业说话,任何人都可以反驳我,但要从专业上说服我,还可以和我赌,我赌输了,就给大家发红包,赌赢了,也是我给大家发红包,鼓励专业上的深入思考,敢于争辩,任何据理力争的探讨,都是对团队有益的,最怕的是沉默。
做技术时,还会强调一点,要静水深流,很多领域都是要花长时间去做的。举个例子,像数据可视化,我们做G2和AntV是14年开始做,直到18年的时候,才初步有一些感觉出来。这之前的3年多时间,是一定要静下心来去做的。静水深流,很大程度上需要你的真热爱。
做数据可视化时,我当时是很兴奋的。萧庆有推荐一本书给我,《The Grammar ofGraphics》,这是图形语法的一本书。我们之前写的图表,饼图、柱状图、趋势图等,都是一图一表。如果有一种图形语法,让我们可以自由选择直角坐标或极坐标,再通过可视通道映射,把不同的数据,映射到不同的可视通道里,就可以生成出不一样的图表出来。这种灵活性,用传统的 ECharts等图表类库是感受不到的。一旦感受到,就会非常兴奋。
但真要实现 G2 图形语法,需要我们能静下心来,花很长时间去阅读文献,去钻研,小到一个布局算法的实现,可能就是好几周的时间。真正花很长时间,深入去做,才会有些产出。
静水深流的同时,我们还要考虑如何接地气。所谓接地气就是如何跟业务衔接上,如果你做了很多专业研究,最终在业务上不能落地,那肯定有问题。一定要两手都要抓,一手要在专业上不断静水深流,一手要在业务上不断找落脚点。
我们常说,“此时此刻,非我莫属”,这个说法有个背面,是“每时每刻,做好自己”,坚持每时每刻做好自己,会让工作和生活都很简单。最近支付宝在用户体验上被很多用户吐槽,每个同学都会有自己的一些意见。作为技术,我们在吐完槽后,更重要的也许是去尝试推动解决技术能解决的问题。
“此时此刻,非我莫属”,更多强调的并不是态度问题,而是能力问题。怎么提升各方面的专业能力,才是最重要的。很多时候并不需要你主动去说“此时此刻,非我莫属”,而是要让你的能力能让别人看到,因为你的能力而被选中去做,才叫“此时此刻,非我莫属”。要被选中,一定需要长时间积累提高专业能力,这样别人才能够认可你,才会有被选中的机会。
做一个自由的产品人
第二点谈到自由,我会着重讲下做产品的一些感受和经验。我的一个梦想是希望做一个自由的产品人。怎么才能在做产品时,拥有自由的状态呢?
大家常说“唯一不变的是变化”,这是很好的一个价值倡导。但对我来说,一开始挺困惑的。小学学数学,勾股定律非常吸引我,居然就是勾三股四玄五,它在欧氏几何里是一个不变的规律。大学研究生期间我是学物理的,物理学非常注重的一点,就是寻找万事万物的规律,这些规律里也有很多不变的东西,比如普朗克常数、光速等物理常量。为什么不变?这中间的物理诠释,非常美妙。“唯一不变的是变化”,我的理解里,背后还有一句话,叫做“万变之中,不变至美”。当我开始做产品,发现这句话非常管用。
举个例子,语雀里面的不变,是始终在知识领域,一直专注在知识的创作与交流上。做产品经常需要面对各种变化,这时寻找到不变的初心或定位,对产品的长远发展非常重要。这需要刻意锻炼自己在产品上的宏观眼力,能判断产品处于什么样的大趋势下,核心的差异化竞争优势在哪。
几年前,公司用Confluence或Wiki管理文档,也能用,选择做语雀,很大一个原因,是因为看见了Confluence的痛点,它不能跟上公司的变化,Confluence里很多文档,是跟随组织结构的,但组织结构在阿里经常快速变化,很容易导致Confluence上的文档被不断抛弃,停滞更新,很容易带来知识的荒岛化和孤岛化。
在这种背景下去做语雀,采用团队+知识库的模型,不绑定组织结构,让知识尽可能扁平化、尽可能开放,就能让语雀上的文档更有生命力,这是语雀在知识管理领域很核心的一个差异化竞争优势。同时不断提升文档的创作体验,让优势更具优势,并努力想办法让知识能流动起来,这是语雀里的关键点。文档的创作体验与知识的流动性,是语雀里面非常关键的不变点。当把这些不变点给抓住时,很多产品上的功能决策,就会变简单很多。
做产品过程中,光有眼力是不够的,还需要手力。手力是方法论,是术,是具体怎么去做。比如如何做用户体验地图,如何做具体的产品决策。俞军有一本书很不错,叫《产品方法论》,它里面有个概念是:用户是需求的集合。我们做一个产品,要去把握每个功能背后,究竟在满足什么用户什么场景下的什么具体需求,要去看这些需求有没有共性,这个共性的需求集合,构成的才是一种用户。用户并不是某一个具体的人,而是一种抽象。当你把这层抽象找到之后,你才能找到产品的真正用户。有非常多的手力,需要我们不断去学,去实践,然后才能掌握。
做产品过程中,还有很重要一点是心力。很多产品功能点做上去之后,可能要花很长时间用户才会用起来,并不是上线之后,马上就会有很多用户喜欢。如果刚开始一两周,数据不好看,就把它给毙掉的话,很多东西是做不出来的。技术产品领域,数据更多是一种辅助决策,你可以去参考它,但千万别迷信它,特别是在产品早期阶段。根据数据去做的产品功能,能让产品血肉丰满。但产品的灵魂,往往来自那些不根据数据、还坚持去做的产品功能。
做产品过程中还有一点,是往前一步,不给自己设限。做语雀,最大的一个感触,是啥都得做。最开始我是半个PD,然后很快变成了客服,同时还需要兼做运营,还需要去承担BD的工作,因为没有BD,只能逼着自己去做,一切为了产品往前跑。开心的是,每次跟用户的各种碰撞,在和用户一起面对各种各样的问题时,很多好的产品想法就涌现出来。经历时的各种苦逼,回忆起来却是幸福的。
万变之中,不变至美,找到产品中的不变点,很多事情就变简单了。同时不断逼自己去提升产品上的眼力、手力和心力,不给自己受限,随着这些能力的提高,我相信,做一个自由的产品人,就不会是太遥远的梦。
做一个有爱的活人
最后我想说一说“认真生活,快乐工作”。我曾经是个工作狂,第一次看到这句话时,第一反应是为什么词语错位了。马总非常厉害,故意把认真和快乐反了一下,让认真去搭生活,让快乐去搭工作。
我们很容易在工作中认真,但在生活中不认真。比如回到家里,陪小孩陪家人的时候,很容易松懈不在状态。后来我觉得不对,生活真的需要去认真对待的。现在我都会尽量早点回家,赶在小孩睡觉前能到家,尽量能花半个小时沉下心来,在陪伴小孩时,努力去做到把小孩看成整个全世界。很开心的是,真正这么去做后,哪怕每天只有半小时,也会发现小孩跟自己的互动多了很多,而且从这种互动中,父子彼此都能成长和收获。
快乐工作我只说一点。对我来说,快乐工作的核心是眼睛里要有光芒,你对自己的工作要有足够的热爱。我经常会问团队同学一个问题,你是不是对所做的事情,眼睛里是有光芒的,你内心是不是真的很期待去做。这句话能激发一些同学,同时也是把双刃剑,会杀伤一些同学。有些同学听完这句话后,反思自己的工作,觉得当前工作好像挺枯燥的,然后选择转岗或离职。这并不是一件坏事情,真正有深入思考后,意识到当前的工作对自己来说是很枯燥的,是没有激情的,有这种触动后再选择转岗或者离职,长远来看对这个同学是更好的,对团队也是更好的。自己究竟为什么东西而痴狂,内心激情在哪,想清楚后,个体或团队的战斗力是很不一样的。这能让个体和团队都能变得更好。
还有一句话,是去年的一个分享,“全情投入,守正出奇,愿等花开”,这个就不多说了,讲的是心态的定力,以及策略上的取舍。分享我最近的钉钉签名档,我改成了“关心、用心、静心”。关心非常关键,无论刚才说对生活的认真,对家人的关注,还是工作中对同学的关注,都很重要。很多团队的管理问题,我觉得都是leader对团队本身不够关心导致。年初或年中目标设定完成之后,等几个月后去看结果,这样是不行的,日常的过程管理更关键。生活中关心家人,工作中关心同学,朋友中关心好朋友,这是一个基本功,非常关键。
关心是第一步,很多事情还需要真正用心去做,同时愿意花时间去静心等一些结果。我们团队有句土话叫做“要快但不要急”。很多项目迭代,都希望能够尽快上线,包括我们做产品也希望能尽快拿到结果,但一定不能着急,很多东西不是短时间可以达成的。比如做云凤蝶,云凤蝶是一个企业级低代码研发平台,我们从17年开始投入,做过几次转型,一直到去年年底,我们在低代码领域才有一些真正的应用上来,才开始看到一些希望。用心去做,静心去等,这样关心才有效。
关心于人,用心于事,静心于己,我觉得能做到这三点的人,就是一个有爱的人。做一个有爱的活人,让自己始终处于活着的状态,希望自己能努力去做到。
体验技术部的团队文化
前面这几点,是我对自己的要求,希望自己能在技术上做个简单人,在产品上做个自由人,在生活过程中能学会去爱。在2014年起,也在逐步把“简单、自由、有爱”倡导为整个体验技术部的团队文化。
简单自由有爱是三枚硬币。简单是枚硬币的话,正面是简单,反面则是专业。因为只有足够专业,才能够保持简单性,不够专业时,很多事情都会变复杂。
自由的背面是责任。光追求自由,没有担当没有责任是不行的。足够有责任心去担当,这样去做事情,才能真正获得自由感。
有爱也是一样,背后要有很强的行动力。公司做公益,光嘴巴上说是不行的,哪怕一年抽出三个小时真正做一次公益,才是真正的做公益。
我最近有做一个公益,是帮助小区的保安,在小区人员进出的地方帮忙测体温和看健康码。我在小区门口站了4个多小时,这个过程中,我发现保安的生活远远不像我们想像中那么枯燥,同时很惊讶发现支付宝的用户打开健康码有将近十几种方式,有些打开健康码的方式,我压根就想不到。比如很多人打开健康码,是通过中间那个banner广告,还有一个高中生给我看的是一张图片。后来发现给我看图片的还不只一个人,累计有四五个人给我看图片。有这个实际的体感后,就能很快理解,为什么健康码后续把时间给加上去。同时还会发现,有一些老人家没有智能机,这可怎么用健康码?估计大家如果没去接触,光凭想象是永远猜不出来的。没有智能机的老人家,是找小区开个单子,每天盖章来证明。
无论做公益还是做其他,一定要自己真正去做,在做的过程中,才会真正懂得一些东西。
“简单、自由、有爱”和“专业、责任、行动”,形成了体验技术部的亚文化。我们日常还会沉淀一些团队的土话,比如,“不要在毛坯房里雕花”,这是去年很强调的。因为在体验技术部,主要人群是设计和前端,我们身上有个特点,就是比较关注细节。这个特点,有时是个好事,可以让我们把东西做到极致,但同时在很多情况下,也会变成一个缺点。比如有设计师转做产品时,很容易去抓边角料,抓各种细节,但这些细节带来的性价比并不高。所以我们就会一直强调如果当前产品是个毛坯房的话,一定不要去雕花。我们真正要雕花的地方,应该是我们想清楚的一些关键主流程,在这些关键主流程上,可以花大力气去精心打磨,其他更多地方,该放则放,大胆取舍,才是更好的选择。
说了很多,最最关键的,是内心真的要去believe,要去相信。带着相信去疯狂做到时,往往真的就会往你想的方向发展。
【非常问答】Q&A环节
前端学习最重要的是什么?
玉伯:这个问题我说两个点。第一我觉得要保持学习的欲望、要保有好奇心,能持续不断对一些东西感兴趣,不断去往前学。还有一点,是在学的过程中,要去抓住一些不变的东西。比如说CSS的学习,很多前端同学可能都已经不太会CSS了,但是真的要去学CSS,要知道它最最核心的是盒模型、布局、层叠等原理,你要从一个更高的维度,去建立自己的理解。有了这些理解后,往往就可以四两拨千金,可以把整个知识体系建立起来。建好之后,就可以在学习过程中,知道自己究竟是在学一个新东西,还是只是学老方法的一个优化。
如何长期持续保持团队的战斗力和凝聚力,如何吸引更优秀的人才加入团队?
玉伯:我觉得非常简单的一招,叫做用事情去吸引人。团队做的事情一定要足够去吸引到对方的加入,让他认可这件事情,去为这件事情而疯狂。比如说Ant Design,这是一种设计语言,我们要做成全球一流的,认可这个方向并感兴趣的人就会被吸引过来。做语雀也是这样。在我心目中,语雀要做成新一代Office。在想一个问题,为什么从上个世纪80年代出现的Word、Excel、PPT,一直延续到现在。一个Word文档究竟要解决的本质问题是什么,是否环境已发生变化,是否有新的解法。根据这个思路去思考,你会发现Office现有的Word是面向打印机设计的,如今在数字化转型浪潮中,打印需求急剧下降,我们并不需要分页,很多面向A4纸打印的产品功能是可以简化的。这个大趋势下,我们其实有机会去重新定义什么是一份新型的Word文档。这个文档可以跟传统文档不一样,传统Word文档是静态的,新的文档可以基于互联网Web技术让整个文档活起来。当真正把这些东西想清楚后,去找到相应的同学去聊的过程中,感兴趣的对方,往往眼睛里就会有光芒,这就是团队的吸引力。对已有团队来说,有希望有前景的的事情,就是团队的战斗力和凝聚力所在,对内心有相信的团队同学来说,工作就不是简单一份工作了,而是为了内心的相信在做事。
中国的产品设计和西方的差别很大。如何去走向全球,做到像FaceBook那种全球流行的设计?
玉伯:这个问题我其实没想过,我目前更多想的一个问题是很多全球化的设计为什么在中国推行不下去。适合中国的设计究竟应该怎样。有一个例子挺好玩。
在企业级IM里面,国外有一款产品很流行,叫Slack。当时钉钉也考虑过要不要做成Slack的样子,但是后来钉钉还是选择不往Slack的方式去做,而是借鉴了微信,采用了中国人更熟悉的产品形态,钉钉群的形态,让钉钉变得更接近中国人的使用习惯。我觉得更好的全球化应该是本地化,要回归到每一个国家每一个地区的用户群体,他们的用户习惯可能真的是不一样的。
之前听国际的一个同事分享,谈中国的红包,在东南亚有些地区不能用红包,要变成绿包或者是白包,因为当地文化对红色的理解不像我们一样觉得是喜庆的,喜庆的是白色或者绿色。
面向不同人群,也是一种“本地化”。比如说面向技术人员的产品应该怎么设计,和面向设计师的会很不同。像VSCode是面向程序员的,就很强调快捷键,很强调效率,甚至可以形成整个IDE领域的一整套体系化设计。产品的本地化设计,核心还是要回到用户本身习惯去看问题。
原文链接:蚂蚁研究员玉伯:做一个简单自由有爱的技术人,转载请注明出处。