潕量的成长之路

avatar
大前端 @阿里巴巴

本文来自团队Fusion 的负责人 潕量

大家好我是潕量,11 年中科大研究生毕业工作至今已经 9 年了。回想起自己职业生涯一路成长的过程,没有开挂的巅峰,也没有跌落谷底的悲情,倒是在平时的细碎生活中遇到不少困难和瓶颈。我坚信每一个遇到的困难和瓶颈都是即将成长到下一个阶段的标志,所以困难和瓶颈都不是谷底,只是进阶到下一个阶段之前的短暂停留。

学校:专注喜欢的事情

在学校的时候特别喜欢网络,当时的梦想是当黑客,在网络世界里面无所不能感觉特别酷。自己研究过木马工作原理、脱壳、利用内存溢出改应用数据。当时魔兽 RPG 游戏「真三国无双」很流行,用 MFC 写过真三国无双的外挂、远程控制系统,当然自己不清楚自己算是行业的破坏者,就单纯觉得有意思,就像玩警察抓小偷游戏的时候都喜欢选小偷,因为约束更小,而警察要被规则限制更多。做过MFC的同学都知道用 C++ 代码去改 UI 非常困难,但是又执着于好看的皮肤,写出来的客户端一定要先换一个浩方对战平台的皮肤,所以特意选修图形学研究 OpenGL,用 OpenGL模拟过一套窗口组件的实现,总之当时觉得啥炫酷就研究啥。那个时候经常写代码到夜里两三点,休息后脑子里面还是各种代码在转,有了好的想法又爬起来继续写,似乎不知道什么是疲倦。

当然这段经历并没有让自己成为黑客,不过倒是给找工作带来了不少便利,因为从底层数据模型到UI都是自己实现的,所以面试的时候深挖的细节都能了解的很清楚。那个时候 BAT 在我心里面就是程序员高等级的存在,去现场面试的时候看到楼道里走过的同学觉得都是大牛,心理的感觉就是有一天能和他们一起工作是多么美好的事情。听到被录取的时候我是有点兴奋的,拿到的offer是腾讯视频的运营开发。我当时熟悉的语言是 C/C++,面试的也都是算法、网络的基础理论相关。不过进腾讯视频后带我的导师是个全栈工程师 (C++/JavaScript 都写) ,所以进入腾讯后我也开始做一部分前端的工作。

职场:建立 owner 意识的开始

对于刚刚进入职场的同学来说,最大的期望莫过于能够实现自我价值,得到老板的认可,在工作中找到成就感。大多刚进入职场的同学来说只知道埋头接任务做需求,我也是一样,所以最初的两年过得很「风平浪静」,拿着老老实实的 B,也不清楚 S 是什么标准怎么样能拿到,甚至都没打听过。直到我开始完全独立负责一个可视化搭建系统的研发,我把全部心思投入到里面开始不断的改造可用性和优化。年底的时候老板找到我说可视化系统做的不错,从这个事情上面开始注意到我了。所以我当时的想法就是跟着别人做事情很多时候也在跟着别人的思路在走,当你独立负责一块事情的时候你才会不得不让自己去思考,去不断的优化产品。所以以后的项目我一直强调一定要让自己成为一个owner,即使这个产品不是你来管,你只要参与了,就要带着 owner 意思进去,把产品当成自己的去做。

进入阿里:不给自己设限

2014年底我加入了阿里,从一名运营开发转为前端开发。看到了web的能力是不断在被完善的,之前用C#/MFC 写的客户端系统都在慢慢被web替代,所以我想纵深这个领域。

在整个15年的时间我还是按照传统的模式做着前端开发,那个时候的前端还是设计师出完设计稿前端做还原,然后一轮一轮的像素和颜色的review。15年底响应集团的中台号召,打算做一款服务于设计和前端的产品,将组件定制能力开放给设计师。

我带着刚刚进来的师弟做 React 版本的组件库 SUI,当时这款产品主要服务于共享事业部的前端团队+兄弟部门,尽管只有几个BU,但是40+的组件咨询量已经让我们费尽了精力。当时滨江的B2B也做着同样的事情,所以在 2016年6月,共享的SUI和B2B的ART合并为 Fusion,开启了长达三年的跨 BU 合作。这也是我跨BU合作的第一个项目也是最久的一个,确实感受到合作带来的优势,人员的集中分配与合作,人均压力减少、效率持续提升,我可以把精力focus在更深层次的优化,比如规范标准、质量体系检测、自动化发布 等等。在16年底 Fusion 大概就服务了6个BU,而且数字还在不停的增长,那时候感觉就跟创业一样,满满的激情。 我也因为这个项目在2016年底从 P6 晋升到 P7,记得当时评委并没有多问技术的问题,反而问我如何跨 BU 推广你的服务,如果业务方的开发者找你解决自己业务的问题你有什么应对方案?当时的回答大概就是服务到帮业务敲代码这种。后来思考了下,其实评委觉得我太偏向技术,想引导我关注除了技术以外的事情,比如集团的现状、产品为何会有市场、产品有没有边界等等。所以后面的日子开始建设 Fusion 产品的运营,和集团内各业务方去沟通调研、走访、技术分享等,起初的 20+ BU 基本都是一个一个的和对方设计师沟通认同理念,然后再自上而下的落下来的。

18年合作团队发生了较大的变动开发人员骤减一半、同时Fusion 为了满足外部 ISV 诉求要实现产品的开源开放,对人员和产品方向都提出了比较大的挑战。招聘、产品、跨部门合作同步进行,有一段时间的节奏白天敲着代码、晚上面试、同时还画着 sketch 稿子出产品方案。对外寻求与 ice 更深层次的合作来减少人员压力,Fusion 舍掉原有工程体系引入 Iceworks 作为官方推荐开发工具,引入 ice 体系的精品物料作为物料中心的初始物料,ice 团队舍弃了自己的组件品牌拥抱了整个Fusion体系。从最开始的担忧到最后的双赢,切切实实的感受到把后背交给对方带来的利益。Fusion 舍掉了原有自己的工程体系,物料中心整个体系的生态运转的更加规范,而Fusion的同学也可以更专注于设计系统方面的事情。

随着产品在源码、搭建、sketch 插件方面的不断完善,使用体量也有了一个比较明显的增长,在19年的时候大概服务了5000+项目。自认为在中后台这个领域已经研究得挺深刻了,19年去参加次 7->8 的晋升,结果评委盯着我的最后一页未来规划问了 10 分钟。我发现跟评委完全不在一个水平线上对话,意识到下一个 level 不只是技术上面多么专注,还需要有长远的思考,而我的思考浮于表面,根本经不起评委的追问。PPT 如下(这是段失败的经历)

(2019 晋升失败的未来规划)

当时的想象很美好,期望未来设计门槛降低到一定程度没有PD和设计之分都叫设计者,设计产物直接解决UI问题,而前端只解决逻辑问题,所以期望未来没有前端和后端之分都叫开发者都能写逻辑。Fusion 是一个中间环节承担精品物料沉淀和透出的能力、提供UI快速拼装能力。

当评委深入细节比如领域精选具体有哪些?最后的沉淀操作应该由谁来执行?你应该拉谁来一起参与?我感觉之前没有细想过,只觉得这么操作能行得通,但是还没开始想和谁一起来干,很多操作路径也没去思考应该怎么执行。。。经过这次失败后,后面对规划的思考上面我都会多想一步,各个环节的细节在脑子里面演练下,看看怎么执行合适是否有卡口。关于设计者开发者这个事情,经过后面一年的验证确实有些地方不合适,比如UI快速拼装发现在Sketch里面行不通,低代码平台更合适,物料中心的精品物料在目前阶段基本不可能通过生态自然产出,必须是人肉去保障的等等。所以后来改成了辅助低代码平台物料通,打通基于低代码可视化的全链路协作流程。每一步怎么操作也大致有自己的想法,这些想法可能不一定对,但是代表了当时的一个可能执行的方案,至少我自己能够把流程串的清楚。

对未来的预判不仅仅停留在想象,更要深入进去看一步步能否实现,不能被执行的未来思考只能叫设想,不叫未来规划。

慢慢成长,快速突破

工作一段时间后开始对佛道的思想感兴趣,但是思考基本都是浮于书本理念,自己也有不少疑问,比如为什么会顿悟?大师们闭关都在想什么?为什么出来后就悟道了。曾经有一位台湾的法师(据说开始也是程序员)来公司演讲,整个五号楼会议大厅几百号人参与,结束后我就问那位老师,人为什么会顿悟?结果被教育要好好学习,不要想这些?但是我明显不会死心。

我每天早上会有听书的习惯,那段时间正好在听红楼梦的解说,说道贾府衰落后贾宝玉是突然间长大了,而人都是突然间长大的。突然有所触动,平时的种种积累都是为了在长大的那一刻提供资粮。所谓突然长大并不是凭空起高楼,而是经过了地基的夯实、楼层长期叠加,最后封顶刹那只是一个时机的选择,是一个自然而然的过程。所以我们成长的过程可能会比较缓慢,我们可能会到瓶颈期,没关系那只是突破前的一段小憩。而所谓顿悟应该也是智慧的资粮积攒到了一定阶段,只差一个机遇突破。所以在我心里没有谷底,只有突破瓶颈前的停留。

让自己保持兴奋

成长的过程可能会缓慢、枯燥、寂寞,如何给工作加点调剂,让自己保持激情是非常重要的一件事情,这个也是今年晋升 8 的时候面试官给的建议。比如,对于前端开发来说在 UI 上依然要通过胶水代码来连接各个模块,而一个不懂css的后端根本不希望关心布局,所以我们投入精力去研究自然布局,让布局和间距自动呈现,让代码和搭建都更容易更轻松。比如未来随着端设备逐渐丰富,我们要适配的不仅仅是 PC、Mobile,可能还有各种屏幕的触屏设备,所以我们开始储备跨多设备的能力,这是一个新的领域会有新的玩法。我也期望每天是梦想驱动着我起床,虽然很难,但是在尝试的路上。