鱼鱼.png

> 这是第 138 篇不掺水的原创,想获取更多原创好文,请搜索公众号关注我们吧~ 本文首发于政采云前端博客:一名练习时长 2 年零 8 个月的前端练习生自述open in new window

> 一些关于成长和突破的小事

又是一年“金三银四”。

刚好受邀参加掘金春招活动直播(回放请戳:掘金公开课直播间链接open in new window),回忆一下子被拉扯到当年刚刚毕业,奔走在各个面试现场的自己。从应届毕业生到职场新人、业务接口人,再到现在的低代码前端负责人。回看当时走过来的路,好的坏的,顺利的艰难的,感觉一切都还历历在目。

如果你也即将毕业马上要面对职场了,或者你是一名 0-3 年工作经验的同学想要快速成长,再或者你对我的故事感兴趣,那么请花上三两分钟,让我们一起来看看吧~

前言

2019 年,我研究生毕业便来到了政采云有限公司。时至今日,干过业务线也探索过中台建设,目前是政采云低代码平台前端负责人。在这 3 年不到的时间里,我给自己的成长划分了 4 个阶段。初识职场、向阳而生、破茧成蝶和相得益彰。

其实每个阶段我们都有一些应该做的事情和应该去锻炼的能力,大概可以总结为下面这张图。

这张图纵向来看是成长的 4 个阶段,横向来看是每个阶段需要配备的软硬实力。

初识职场对应的大概是应届生入职 3 个月或半年之间的这段时间,在这个时期作为一个职场新人,主要需要去适应职场节奏,公司的开发节奏,做好从学生身份到一个职场打工人的转变。向阳而生,是你在适应了新的环境之后快速发展的一个阶段,对应入职 1 年前后的时间。随着向这个阶段的过渡,你可能会感知到自己和刚入职相比产生了一些变化,在做业务的时候不再是一味的执行,而是可以带入自己的一些想法和思考了。此后随着你的不断积累和进步,你可能希望能够进一步的突破自己,跳出自己的舒适圈。于是你会来到破茧成蝶这个时期,大概可以映射为工作 1 年半左右的这样一个时间。在这个阶段中,你不再只是完成一项项的基本任务,而是要去着手尝试解决一系列的问题,你也开始渐渐的由最初的新人成长为可以帮助其他新人的中坚力量,甚至开始积极正面的影响团队更多的人,于是就有了你和团队的相得益彰

初识职场

刚刚入职的时候你会产生大量的新鲜感,这主要是由职场和校园的大环境不一致引发的。在学校里,你可能是先接触、认识你的老师和同学,经过和他们的慢慢磨合,熟悉起来之后继而会产生一些合作的意愿,比如想要和他们一起参加活动、比赛,一起做项目。但在职场,你可能和你的同事还没有熟悉起来甚至刚认识了没几天,就要一起协同工作,并且需要争取到比较好的合作结果。这是两种完全相反的合作过程。

另一方面,初入职场,你可能是第一次接触企业级项目,特别是数据量和业务复杂度与之前的在校经历相比会明显增大。与此同时,这也可能是你第一次经历多部门协作来完成一项任务。

这些接踵而来的“第一次”会为你带来大量的新鲜感,而我认为,新鲜感的背后是对不熟知事物的好奇,是件好事。它一方面能够激发你的好奇心,另一方面它可以在背后给你产生大量的动力,催化你的行动,让你想要更加快速的学习和适应这一切。

当新鲜感逐渐褪去之后,随之产生的可能是一些迷茫。你的周围是不熟悉的同事,你学习的过程中每天都在接触大量而又陌生的业务专有词汇,你不熟悉公司的流程规范等等。

其实我也有过类似的经历,这些现象对于一个职场新人而言是再正常不过的了。但正常归正常,我们不能一直这样下去,要想想怎么去解决和快速度过这一时期。

个人总结来看,有些小的建议可以分享给大家。

参与感

融入团队:你要去融入你的团队,今后所有工作的日子你都将和你的团队一起度过,甚至一起吃喝玩乐。但是吃喝玩乐只是表象,真正的融入意味着当团队有问题的或者需要你的时候,你愿意主动站出来承担。

敢于发声、主动:在新人时期,工作中可能会产生大量的疑惑和问题。如果你遇到什么不懂的地方,一定要多问,要主动地发现一些事情,无论是你的师兄还是你的 Leader,他们都会愿意去帮助你解决问题。

可能很多新人在初期会有的一个共通表现是,希望不要把自己暴露在比较显眼的位置,就像我们在上学的时候,不想被老师一眼发现点名提问一样(😏)。一些会议过程中,他们总是坐在偏后的角落,尽可能的跟上主讲人的节奏,但仍然会有一些不理解的关键点,却不敢张口去问。这样是不对的,你会整场会议下来依然一头雾水,不仅后面需要额外花费大量时间去消化,甚至可能影响你的开发。如果你也遇到类似的情况,可以考虑以下两个建议,其一,你可以在会前提前了解需求背景和文档,其次在会上做到不懂就问。

调整心态

心态转变:每一次新的入职都是一次新的开始,也都是你的一次“归零”的自我调整。可能有些同学在上学的时候特别优秀,也有同学可能在成绩方面不是那么的出众。无论是怎样的你,无论你的过去是怎样,从入职那一刻起,我们都将站在同一起跑线上并肩作战。

不畏不弃:“只要是协作,聊不来的人天天有”。这句话虽然不中听,但实际体会下来好像确实也是这样。工作中形形色色的人都有,不要因为聊不到一起就害怕和对方继续沟通,也不要因为外界给过来的压力就放弃自己的底线。

控制情绪:经历的多了就会发现,职场中最后只有自己来给自己买单,不要因为个人情绪让事情变得一发不可收拾。能控制好情绪在很多情况下往往能达到事半功倍的效果。

执行力

在你的执行之前,一定要先熟悉公司现有的规范和开发流程,在这个基础上去做好执行,并且要做到执行闭环。

执行闭环:执行闭环是指你不是写完这个需求的几行代码就 ok 了的,从前期的需求、交互、技术方案,到开发、测试、验收、发布,虽然你可能不是每一个环节的主角,但是一定要做好跟进,有问题能发现能找到你能及时处理。

事事有回声:在执行过程中,事事有回声可太重要了。假想这样一个场景:

虽然可能对方实际已经在解决你的问题了,或者当下在处理其他事情没办法抽开身去马上解决,但就是没有收到任何回复。抛开这些假设,如果换作是你,你会怎么想?

事情都是双向的,工作中还是要尽量避免这种情况。如果自己真的不能及时处理,哪怕回一个稍等,晚些再去找他,也比把人家一直晾在那里要好很多。一个良性的执行过程中,事情做到什么程度,有何进展,最好有一个主动的反馈。

熟知业务

想要成为技术专家,一定要先成为业务专家。我们都是工程师,是创造者,公司聘用我们是想让我们用技术能力为业务带来价值,所以我们的前提就是要熟知自己的业务,在这个方面,我有两点建议,即业务分享和分享业务。

业务分享:在你不熟悉业务的情况下可以多参加一些业务分享会,让自己快速上手。

分享业务费曼学习法open in new window。诺贝尔物理奖获得者理查德·费曼创造了费曼学习法,简单来说就是,你学习了一个新事物后,可以尝试用自己的话,不带行话术语地讲给别人听。在讲的过程中你可能会发现一些卡壳的地方或没有解释清楚的地方,那接下来就要找出这些问题所在,重新梳理简化,再去尝试给别人讲一遍。

换作我们的日常工作便是,学习了某部分业务之后,可以尝试去给别人分享,把对方讲明白,才是算是真正熟知这块业务了,或者可以去沉淀业务文档,学习的同时去不断补充。

向阳而生

在前期,可能一直是你的师兄或你的 Leader 在带你做一些事情,例如帮你拆解需求,做好技术方案之后给你分配任务。那么在接下来的这段时间,你可能偶尔会接到一些暂时超出自己能力范围的事情,或者你会发现他们开始把项目或需求逐渐直接交由你来负责。这意味着,你要开始学会独立支撑业务了。

独立支撑

例如我自己,我在此阶段期间参与了一个名为配置中心的项目,它承载了全公司业务的配置项。在参与前期只是迭代需求,后面逐渐过渡为自己独立负责这个项目。在深入了解这个项目之后,发现其实它在使用过程中会为用户带来诸多不便,甚至需要在不同场景或环境下多次重复性配置。基于这个背景,我当时提出了“一次配置,多环境同步”的方案,也在后续的过程中实际去协调了各个部门推动了这个方案的落地。

在这个过程中有几点建议可以分享给大家。

情况分析:如果真的遇到暂时超出自己能力范围的事,可以先坐下来分析一下情况。例如,我要解决某个问题时需要制定什么样的技术方案比较合理,需要哪几个部门协同配合。在我推动“一次配置,多环境同步”方案落地的过程中,就需要我的产品和后端同学一起来配合完成。

Owner 意识:你要去逐渐培养自己的 Owner 意识。简单来说,做完已经不再是基本目标,要想想怎么才能把事情做的更好。

请教和反馈:在自己独立负责项目的过程中,如果一旦真的遇到问题或者风险了,你也要及时向上反馈和汇报。有一种反面的例子是,假设 A 同学接到了一个需求,这个需求看起来很简单,但是技术上比较难处理,且前期并未评估到位。在实际开发过程中严重阻塞了进度却因为胆怯不敢向上反馈。最终 A 同学在项目交付时被上级领导点名批评。这种行为在职场环境是万万不可的。

总的来说,遇到暂时超出自己能力的事情时,不要慌,可以先尝试去解决。并且在解决的过程中,及时思考和沉淀,逐渐把它转变成自己能力范围之内的事情,而不是一直止步不前地需要别人来帮你解决。

沟通的艺术

在独立负责项目之后,你会发现你要亲自上阵和不同的人沟通了。沟通是门艺术。之前可能都是你的负责人把事情聊妥之后,告诉你要如何去做;或者你做某件事情的过程中发现问题,他们会来帮你处理掉。但从现在开始,你要自己去主动沟通了。

假如此时的你,遇到了如下场景,你会更喜欢 A 或 B 哪种提问方式呢?

如果是我,我会选择 B,因为这会让我感到在沟通的过程中更舒服。B 的沟通方式里有几个关键点:第一,他先去询问了对方当下是否有时间、是否方便帮自己处理问题;其次,他自己有先尝试解决,但却解决无果。

对同一件事而言,这些看似细微的行为,却能带来完全不一样的沟通感受和结果。所以在我们的日常沟通过程中,可以注意以下几个方面。

有备而来:当你有问题要请教别人的时候,不要自己想都没想过,上来就说不会。建议在咨询别人之前,可以先查阅相关资料,自己动手尝试一下,不要直接去做伸手党。

群策群力:当你在处理需求过程中和某一位协作方沟通产生分歧的时候,可以拉上这个需求的部分相关人员一起讨论,讨论的目的是去寻求利益的共同点,让利益最大化。

言谢:言谢虽然不是什么上纲上线的事情,但在别人帮助你之后表示一下自己的感谢会让对方感觉和你相处很舒服,在很大程度上也会产生希望能继续和你合作的意愿。

一些要持续做下去的事

除了上述提到的这些点,我还建议大家能够坚持去学习、实践、总结和沉淀。

理论与实践:我们是技术人员,技术不允许我们停止学习,也不允许我们止步于学习。要多写多动手,如果只学不写,岂不是纸上谈兵?如果写却没有落实到业务中,那岂不是只做了一个 Demo?要把学到的知识合理地运用到业务中才能发挥它真正的价值,你也才能从中不断提升自己的技术能力。

复盘与沉淀:每一次需求过后,尤其是大项目过后,要及时复盘和总结,对比自己在这次需求中的优缺点,发现自己的不足,有则改之,无则加勉。这个过程中最好也顺带去沉淀一些相关文档,无论是对业务的理解、技术的创新还是自己的总结,都将会对个人未来发展有帮助。

破茧成蝶

经历了上述这些过程,可能此时的你已经成长为了一名优秀的业务接口人。接下来,你可能想要进一步突破自己,跳出舒适圈了。那么,也就来到了我前面提到的第三个阶段,破茧成蝶。

我认为破茧成蝶的关键字在于,它意味着打破现状和突破成长。

成长的前提

首先思考一个问题,成长是什么?成长意味着你开发了多少组件?实现了多少页面嘛?还是等价于你加了多少天的班?

我觉得都不是。

我认为成长的关键词是**改变。**是我自己发生了什么样的改变,我又为我的团队和我的业务带来了什么样的改变。

想要成长,第一步要做的事情是找到自己的定位。如果单纯的在自我认知中给自己定位,往往会产生一些偏差,此时你可以向你的 Leader 或你的协作方来寻求建议和帮助。再或者,你可以找如下两位同学:

1、在自己同层级中寻找一位大家认可且比较优秀的同学

2、在比自己高一层级的同学中寻找同样一位优秀的同学

对比自己和他们之间的差异,你就会知道自己成长的方向和成长中欠缺的问题是什么了。因为你的领导是不会先把你晋升到下一层级,再看你怎么发展的。而是你出色的完成了当下该做的事情,并且你的身上具备了下一层级的闪光点,才会考虑把你晋升。所以,提前做好准备。

成长的标准

成长是有标准的,每个层级都有自己的目标,每个层级都有各自对应的关键词,正如下图所示:

如果你是一名 L5,那你要做好执行,至少要把事情做完才能满足最基本的要求,可以映射为初识职场阶段,你要保质保量的去完成分配给你的任务。如果你想要晋升为 L6,就不仅要把事情做完,还要思考怎么才能做的更好,也就是向阳而生这个阶段。其余的可参考这张图以此类推。

我的成长:技术反哺业务

在这个阶段的我为了去进一步突破和成长,选择了用技术反哺业务。

如果你也想用技术来反哺业务却不知道怎么去寻找这个突破点,可以从这三方面来考虑:

在 21 年年初,政采云快速发展,公司业务规模的增长速度远大于团队人力的增加速度,公司和团队提出降本提效的诉求,而恰好我自身也想要做进一步的技术提升,所以我从业务线转向中台建设,开始投入做政采云自己的低代码平台:无相。

无相,意味着搭建无定相,你可以在这个平台上搭建任何你想要的东西。我们通过这种配置的形式快速抹平不同维度下页面的差异化。时至今日,无相已经支持列表页和表单页的搭建,也在今年计划支持流程编排设计。

假如一个具有微小差异化页面的正常迭代周期是 4 人日,那通过无相来配置只需要 0.5 人日,每个如此的需求都会节省 3.5 倍的人力,这样的价值对于公司和团队而言是不可小觑的。

题外话:一个中台人的快乐与苦恼

到了中台我发现了一个有意思的现象,作为中台或是中间件,我们往往对外提供的是一些基础能力,随着越来越多的同学使用你提供的能力,你会感到快乐和成就感,但随之而来的也会有些苦恼。

特别是我做了无相之后经常会发现,有些同学用了你的东西,但凡出现一个报错,全都来找你,需求和答疑量与日俱增,我们不仅是开发,还变成了专业的客服。

有这么一段时间我一直在思考这个问题,后面也渐渐找到了一些答案。

为了解决这个问题,我们做的第一个事情是完善了各种对外能力的使用文档,并且开始做专场的分享,让大家熟悉你对外提供的产品,让他们了解正确的使用方式和排查问题的方法。

面对各个业务线提过来的大量需求时,要去思考和平衡,如果你是做工具类的能力,那么我理解它不应该耦合业务逻辑,是不是有些需求是可以拒绝掉的。

而面对大量答疑的时候,我们选择了去降低用户的使用成本,例如优化了一些配置方式,增加了一些配置示例,自动化地帮助用户处理一些易错的基础逻辑等等。

相得益彰

通过前面的经历,大家也许知道了如何适应职场、如何成长。既然团队给了我成长的空间和土壤,我也想为团队做些什么。虽然我把它单独作为了一个阶段,但其实它也是自始至终贯穿我整个成长经历的。

2019

2019 年 8 月,我和几个小伙伴在 Leader 的鼓励下一起创建了政采云前端团队(ZooTeam)影响力小组。创立初期,我们运营了掘金、微信公众号和思否三个渠道,让大家有机会认识我们。从创立到现在也收获了不少来自业界的肯定,我们蝉联了 2 年掘金最具影响力团队榜首、跻身思否 2021 年度中国技术先锋年度榜单团队、也开始和 InfoQ、腾讯云+社区等知名社区开展了相关合作。

2020

2020 年我们做了一件有意思的事儿。

不知道那年的你有没有被这样一个点不到的门困扰过那么三两分钟。没错,这是一份校招趣味闯关题,就是我设计哒,发布当天便收到了诸多网友的反馈和评论(地址请戳:政采云前端团队喊你来闯关了!open in new window)。如果你是一名资深开发,希望这个简单的游戏可以让你在工作之余快乐一下,如果你是一名校招生,那也希望你能通过这样一个快乐的方式来认识我们。

2021

随着影响力的不断扩大,越来越多的小伙伴想要加入我们,2021 年政采云前端团队的队伍也随之越来越壮大。

在和新同学合作的过程中,我发现他们很多时候对业务不是很了解,这导致有时去沟通一个需求需要花费大量的时间去铺垫前因后果。恰逢我自己这边也入职了新同学,那我能做点什么去帮他们快速成长呢?

以此为出发点,我做了三件事

1、制定新同学的成长计划。帮助他们快速了解入职初期在不同阶段需要做些什么事情。

2、我组织了整个政采云前端团队的新人培训。让大家有机会去了解我们的团队文化、业务和基建。

3、在公司内部的工程化平台上建立新人专区,希望帮助整个公司研发团队的新人快速成长。

一些小建议:如果你也像我一样想为团队做点什么,但又无从下手,可以先想想此时此刻你的团队需要什么,如果想不明白,你还可以问下你的 Leader,看看他们近期想要做什么,而你又可以帮他们做些什么~

2022

政采云是一个有趣的团队。

团队鼓励我们去多维度的发展和找寻自己感兴趣的领域去深耕。19 年到现在,我们会不定期组织内外分享,在技术思维和公司现有业务以及自己的兴趣领域不断发生碰撞之后,也产出了诸多基建。下面图中展示的仅是其中的一小部分,除了前文提到的低代码平台无相,我们还有前端前沿智能化 AI 的探索、实时的线上数据监测体系、便捷的项目构建发布平台等等。

也许在某个阳光明媚的下午,我们会来一场阳光草坪周会,也许我们也会在轻松愉快的氛围下脑暴新的技术方案,也许有更多你想得到和想不到的快乐,在你工作期间等着你去发现。

这就是我们,一个年轻而有有趣的团队,在这里,若你决定灿烂,山无遮,海无拦。

2022 及未来,未完待续,期待你的加入~

写在最后的话

最后我想说,当你选择工作的时候,如果觉得这团队或者这个公司就是你想要的,那你要沉下心来沉淀和成长,而不是一年一跳。因为价值是积累出来的,成长是磨练出来的。

希望这份成长经历的分享能带给你一些帮助。

Q&A

直播时一些小伙伴的提问,在这里也分享给大家:

1、自己技术很菜,但是毕业也好久了,怎么能往管理上发展呢?跳槽的话能直接面试 Leader 吗?

答:其实每个人的职业发展规划不同,也并不是每个人都适合做管理。建议先规划职业发展方向,在过程中找到适合的路。如果想做好技术团队的 Leader,前提要做好技术的储备,要保持技术的前瞻性才能带领你的团队更好的发展。同时你要储备管理能力,例如基本的梯队建设、人员培养、团队氛围等等。

2、极难相处的同事,为了完成任务使用的终极有效的方法是什么?

答:Leader。作为团队的一员,你的 Leader 是你背后强有力的支撑。遇到难相处的同事或者遇到难解决的问题,首先你要自己尝试去沟通解决,如果并不能获得一个比较良性的结果,可以考虑向上反馈,把问题抛给你的或者他的 Leader 去解决。

3、无实习经验的应届生写简历应该侧重哪方面?应该投实习吗?

答:面试官在面对校招和社招的侧重点是不一样的,应届生还是建议在平时的积累中多侧重一些基础知识及原理方面的知识,在简历中也可以写一些自己平时练手的小项目或自己博客、github 地址。你不一定需要经历过多复杂的项目,但需要你在面对你自己的学习过程和练习过程有思考有沉淀。

4、低代码会不会导致前端失业

答:说实话,我感觉不会完全失业,但会有一部分人力被替代,甚至可能行业人员会两极分化。我之前的 Leader 给我讲过一个事,他说看到我们每天在那里写页面写代码,像极了中世纪的纺织工在那没日没夜的工作。但是后来随着科技的发展出现了纺织机器,导致一部分工人下岗。低代码平台就像是制造页面的机器,我希望自己是创造这个机器的人,从侧面来说,其实也是行业对我们的要求变高了。

5、请问低代码开发平台里的组件是基于其他的 UI 组件库二次开发的还是完全自主开发的组件?

答:无相包含 3 类组件。1、前端基础组件库中提供的 UI 组件;2、根据政采云业务需求沉淀下来的通用组件,这是基于基础组件库进行二次开发的;3、业务自定义组件,这是业务方根据自己的业务规则或一些特有的交互方式,自主研发的组件,并通过在无相中注册后可以直接在平台上配置使用。

6、社区也有低代码框架比如百度的 Amis,好像也是开源的,用过感觉比较便捷,就是页面有点不美观。鱼鱼大佬当时有没有考虑过 Amis 呢?

答:其实政府采购业务的相关页面、流程和业界还是有一定差异的。基于这种使用场景和业务匹配度的角度,我们还是考虑自研。无相的初期只是一个表单搭建页面,随着不断的适配业务、不断的为业务解决问题,逐渐演变成了今天的低代码平台。当然,我们也会去持续学习业界的一些好的框架、一些优秀的设计理念,来不断丰富我们无相的能力。

相关链接

推荐阅读

Decorator 装饰器open in new window

[浅析 Snabbdom 中 vnode 和 diff 算法](https://juejin.cn/post/7067693810918096903 "浅析 Snabbdom 中 vnode 和 diff 算法")

[如何利用 SCSS 实现一键换肤](https://juejin.cn/post/7062496975454732301 "如何利用 SCSS 实现一键换肤")

[在 Vue 中为什么不推荐用 index 做 key](https://juejin.cn/post/7026119446162997261 "在 Vue 中为什么不推荐用 index 做 key")

开源作品

  • 政采云前端小报

开源地址 www.zoo.team/openweekly/open in new window (小报官网首页有微信交流群)

  • 商品选择 sku 插件

开源地址 https://github.com/zcy-inc/skuPathFinder-back/open in new window

招贤纳士

政采云前端团队(ZooTeam),一个年轻富有激情和创造力的前端团队,隶属于政采云产品研发部,Base 在风景如画的杭州。团队现有 60 余个前端小伙伴,平均年龄 27 岁,近 4 成是全栈工程师,妥妥的青年风暴团。成员构成既有来自于阿里、网易的“老”兵,也有浙大、中科大、杭电等校的应届新人。团队在日常的业务对接之外,还在物料体系、工程平台、搭建平台、性能体验、云端应用、数据分析及可视化等方向进行技术探索和实战,推动并落地了一系列的内部技术产品,持续探索前端技术体系的新边界。

如果你想改变一直被事折腾,希望开始能折腾事;如果你想改变一直被告诫需要多些想法,却无从破局;如果你想改变你有能力去做成那个结果,却不需要你;如果你想改变你想做成的事需要一个团队去支撑,但没你带人的位置;如果你想改变既定的节奏,将会是“5 年工作时间 3 年工作经验”;如果你想改变本来悟性不错,但总是有那一层窗户纸的模糊… 如果你相信相信的力量,相信平凡人能成就非凡事,相信能遇到更好的自己。如果你希望参与到随着业务腾飞的过程,亲手推动一个有着深入的业务理解、完善的技术体系、技术创造价值、影响力外溢的前端团队的成长历程,我觉得我们该聊聊。任何时间,等着你写点什么,发给 ZooTeam@cai-inc.com