从实习到入职:与你分享我在政采云的工作和成长

avatar
@政采云有限公司@政采云技术

这是第 68 篇不掺水的原创,想获取更多原创好文,请搜索公众号关注我们吧~ 本文首发于政采云前端博客:从实习到入职:与你分享我在政采云的工作和成长

前言

大家好,我是 2020 年秋招入职政采云公司的前端开发者,作为疫情年的本科毕业生,想与大家、尤其是 2021 届毕业的弟弟妹妹和哥哥姐姐们分享一些技术以外的事情,比如,我作为一个菜鸡小萌新,是怎样接触到政采云这样一个公司,在政采云工作给我带来了怎样新奇的体验,跟随着优秀的同事们我学到了什么,这也是对我自己的一个总结吧。

以人为镜,可观来路,知远方。我年轻愚笨,文字拙劣,愿能不辜负你阅读的几分钟。

相逢于秋招

我是 2019 年的秋天的时候接触到政采云公司的。

当时,秋招大场,各家宣讲开得如火如荼,“政采云”这个名不见经传的公司名被淹没在了浩荡浪潮里,它曾经确实没引起我的注意,即使提前搜索了相关资料,看到了某招聘 APP上贴出的本公司图片,也几乎没有产生多少“我想去这家公司”的想法,而且,尤其是了解到政采云是关于面向“政府采购”的 to G 的业务时,让我实在是有点心慌:它与一众竞争得如火如荼、团队气氛年轻热烈的 to B 业务公司相比,这样的业务内容会不会让工作氛围变得有些单调、重复性高?同事关系比较复杂,技术氛围不强?

后来旁听宣讲会的时候,就打消了我的一部分疑虑,一开始,公司播放了一个特别炫酷、热情又有创意的宣传视频,先在我心里怒刷了第一波好感,猜想这里的工作也会比较有趣。接着,一下午的宣讲会上,公司的 3、4 位 Leader 们陆续出席,各自从自己擅长的角度详细地讲述了公司的业务和发展方向,又让我觉得他们有认真地对待校招生,从行为上尊重和认可我们,当做一起共事的人、当做平等的朋友,而不是把我们当做不谙世事的新人,需要被单方面捶打教导。

后来,经历了两波面试以后,当我忐忑地等待三面的面试官 @堂主 进行下一场灵魂拷问,却没想到他自顾自地跟我展示了很久自己团队开发的谷歌插件、桌面应用、搭建系统、埋点系统,几乎忘了我才是来面试的人,短短几分钟下来,让我觉得这个神秘高手(其实进去后才发现是前端部门的老大)很坦率有趣,很务实,也对自己团队的技术力量非常有自信,如果我在这里工作,想必也能跟着大家一起努力,得到更快的进步和成长。

没想到,一晃一年过去,去年秋天那个凭着直觉懵懵懂懂跟着来到政采云的傻学生,如今已经在这一家公司度过了冬、春、夏,从秋招走向了实习,又从实习走向了入职。

从学校走向工作

入职培训 + 企业文化

以前在学校里是没有入职培训这样的东西的,我从心底里总觉得类似的活动都是一些场面话和套话,也很难想象到这些官方活动能给人带来什么实质性的提升,但是参加了公司针对新人的“百乐门”和针对校招生的“青云计划”以后,又真实地感觉到,关于提到的企业文化,诸如“客户第一”、“诚信”、“持续改善”、“自驱”等,自己的对很多事的看法心态都因此发生了巨大的变化。

以前在学校里,我是很难深入理解“合作”的,觉得“合作”充其量是和同学朋友好好相处,学生干部负起责任,参加合作性比赛的时候各司其职、互相理解,真正的学习生活还是要靠每个人读书练习,有些“各顾各的”的意味吧,而且,一遇到组织班级活动的时候,就难免会出现不配合、意志不集中的情况,而这种问题,在工作上肯定是需要避免的。

我们的工作生活中常常会牵扯到不同的角色,作为一个开发来说,前面有业务方、有产品去调研,对于不同岗位来说,每个人都是一块各有所长的七巧板,每一次版本的迭代、项目的落地,都需要各个环节稳中求好,更进一步。每个人都会有自己的看法,倾听、理解、表达、确认、同步,其中每一步都变得尤为重要,而这些,是我当初处于未毕业、或者刚毕业的人,是不能一步登天地领会的,也需要一次次培训的过程中耳濡目染地理解,通过一个个小游戏亲身体会——“我们应当如何达到合作共赢的终点”。

承担业务的基础:工作排期

以前我在学校里的时候,是不太注重排期和目标的,脑子里总会有一种“计划赶不上变化”的想法。虽然也能知道自己最近想学什么,还不至于浑浑噩噩枉度光阴,但是也确实很难和别人同步分享,做到完全可控,这在团队合作的工作中,是非常不合适的。

在工作中,我们的每一天任务和进度都应该有计划,这样才能保证无差错地按期交付,有延期风险才能及时解决。对新人开发者来说,也只有做到心中有数,才不会一直是一个“被安排工作的人”,既可以避免加班过重,也能避免无事可做,让我们慢慢具备起独立肩负起责任、承担业务的能力。

关于我学习到的在开发之前需要协作排期的步骤,画了如下的简单示意图。

开发成本和实际效果

我以前在实习和在学校里做作品的时候,思维比较简单,很少会注意和评估开发成本,如果安排了什么困难的任务,总觉得延长开发时间就可以解决了,但是来到公司以后发现事情不是这样的。

每一日的工作时间都是一项支出,而开发的实际效果是这份支出带来的意义,当支出配得上意义的时候,我们才可以肯定支出是值得的,否则很可能就是一种“浪费”。假如存在开发成本和实际效果不对等情况,我们需要提前和产品人员说明,可以协调出一个可实现的临时方案,再慢慢迭代,或者争取宽限的时间,就像买东西一样,尽可能地做到物有所值,而不是盲目开发。

而至于他的效果好不好,我们可以通过公司的埋点系统查看它的点击量、浏览量等,判断它的使用率,也可以去问相关的业务方、产品方、运营方来收集有效的信息。

互相沟通,两相权衡,目的在于更好地完善这个作品,而不是一味地争吵、给自己加压,又或者埋怨同事,这些都不是我们所期望的。

同心同德做事,快快乐乐生活

之前未出学校大门的时候,深知自己总是被称为“象牙塔”里的孩子,对社会、工作的“毒打”总是会抱有一些不确定的担忧,比如会不会有同事不配合工作,推卸责任,会不会有复杂的办公室斗争、上下级关系之类的,但是来到公司以后,就会发现,这种担心是多余的。

公司的人员结构非常扁平化,不论是几级部门的 Leader 都不会有架子,不论是技术还是业务,有什么问题都可以当面提出,大家也很乐于讨论和分享自己的观点。我们工作的时候尽心尽力,开会的时候尽情发散头脑风暴,而余下的时间在周围的饭店、KFC 一起吃吃喝喝、玩玩闹闹,关系甚至比同一个班级的同学还和乐融洽。

就活动而言,百乐门是我最早参加的活动了,对新入职的同学开放三天的培训 + 实践活动,其中也包括户外拓展,将每一批新人组成 6 到 8 人的小组,一边游湘湖/西湖,一边打卡景点、完成任务,有点像电视上的综艺活动,也是为了让我们彼此留下一个印象,一段回忆、当然,最后也给我的手机里储存了许多好看的照片。( ˘͈ ᵕ ˘͈ )

公司鼓励我们跨部门了解业务,增进感情,每年都有外出旅游的 outing 经费,钉钉的云社区里会发出组团帖子,贴上令人垂涎的美食和超级动人的美景,鼓励怠惰在家的小宅们一起游遍中国的大江南北。在工作之余,还能再钉钉窗口里接受到跨部门的小哥哥小姐姐一起出游的邀请,还是很快乐的呀!

每个月都有生日趴,原来没有疫情的时候,给当月过生日的同学开 party,有可爱的小姐姐组织我们玩游戏、切蛋糕、分水果,不过最近几个月因为疫情不能聚集,所以我们跳过了玩游戏,直接收礼物和吃吃吃。✧ʕ̢̣̣̣̣̩̩̩̩·͡˔·ོɁ̡̣̣̣̣̩̩̩̩✧

除此以外,公司还有周年庆、俱乐部、图书角、年会和其他活动,不过我比较宅,对于爬山、游泳、羽毛球之类俱乐部就了解不多了,相比更外向爱玩的同学会乐在其中。

每逢圣诞节,还会每人发一个毛茸茸的吉祥物小蜜蜂——“采宝”,来公司多年的哥哥姐姐度过了一个又一个圣诞节,办公桌上已经拥有了许多个毛绒小蜜蜂,而去年圣诞节我刚刚拿到了我的第一个“采宝”,希望未来可以拥有第二只,第三只吧。

工程师文化

领走一位导师

我记得之前秋招的时候,有很多公司都会说:会有导师制,会好好培养新人。相信每个刚毕业的同学都有这样的期待,但是就我本人的经历,在前东家实习的时候,这种“培养”每次都提、但每次都不能落到实处,时间长了,对市面上各家公司宣讲会上所说的“导师制”也就不太相信了。

想想也是——大家各忙各的,每个人都有自己的任务要完成,都有代码要写,谁会管你呢?

但是出乎意料的是,在政采云公司工作的过程中发现,无论是主管, HR,还是导师本人,都是很在意“导师”这一角色的。除了小组的同事们都很友好、每个人都可以当技术上传道受业的“导师”以外,安排的导师也会经常凑来“关怀”自己的学生。

有人常常耳提面命,勤加督促总要好过自己孤军奋战,而前辈们随口提到的开发、工作、合作经验,也都是我们这些新人宝贵的财富啊。

校招生培训的“青云计划”里,曾经放过一个电影片段,我觉得能对这段“师生”关系有一个有趣、更形象化的表述:

“你想学习功夫吗?”

“当然。”

“那么我就是你的师父。”

——《功夫熊猫》

撸一些代码,服务自己

除了工作产出以外,我们团队有很多给自己用的产出,比如用于投稿前端小报的系统、增进学习的谷歌插件、自己开发的博客、桌面应用、校招闯关游戏,和一些自动发稿的脚本等。这些虽然比不上服务于业务的、更大更优秀的代码作品,诸如能够显著提效的自动化表单系统、能够反馈实际效果的埋点系统和性能测试系统等,但也是我们这些的一些实践。

我最近跟随公司里的小姐姐一起,参加了校招闯关关卡的设计和开发,看着大家兴致勃勃地撸代码、“玩”技术,也让我产生了许多兴趣,想更深入地参加到“用代码建设生活”的过程中,努力发现身边可以提效、可以用机器代替人力的方面。

而在这个过程也让我们更加认识到,人不是生产代码的机器,代码才应该是服务于人的工具,包括我们公司的产品,以及市面上一些耳熟能详的互联网产品,诸如滴滴、美团、淘宝等,其实也是服务于人的工具。

当我认识到这个因果关系以后,才觉得,工作其实没有那么枯燥——并不是工作在驱赶我们,而是我们在追逐技术和生活。

分享、沉淀、输出

比起作为一个学生、在学校里孤军奋战地学习编程,公司更能为我们营造一种共同开发的氛围。大家各自遇到的难题、拥有的感悟都可以拿出来交流,也许是某顿午饭后,也许是某次周会上,七嘴八舌,更能碰撞出思维的火花,这也让开发生活不那么枯燥了吧。

除了分享以外,每次分享后还需要梳理清问题的产生、原因、解决等,详细整理记录下来,这就是“沉淀”,如果没有“沉淀”,分享就只是“空口白话”、“纸上谈兵”,很快就忘记了,沉淀的过程需要我们查阅更多的资料,更加结构化地表述问题,罗列方案,对比优劣,你能够把问题挖掘到更深的层次,而不是仅仅停留在“解决了”这个表面上。

“输出”则是我们在掘金、博客、思否上发表的技术文章,“输出”是“沉淀”的终点,是更大范围的“分享”,以此形成一个良性循环。

其实立志要产出技术文章的人想来不少,但是也贵在坚持,有大环境的督促,希望我们每个人也能在“分享”、“沉淀”、“输出”的道路上,愈行愈远。

CodeReview

CodeReview,直译过来的意思是代码评审,也就是我们每次 commit 代码前,有人专门地查看你的写法是都得当,是否可以优化,并给出建议的过程,这是我加入团队后才慢慢接触到的一项活动。

之前在学校里,自己写的代码都是自己看,这样很难知道编码的局限性、考虑不周的地方在哪里。加入政采云团队后,才意识到这样“野生”撸代码非常不利于新人的成长和进步。

团队提倡 CodeReview 的好习惯,即便我们自以为非常小的功能,非常普通的 CSS ,都值得检查,比如我们要怎样封装代码、怎样组织数据流向、甚至包括怎样命名对象和函数、怎样组织代码文件、怎样理解业务,都大有可以互相学习的地方。

学无止境,“从完成到更好”的路该如何走,永远是值得我们去讨论和思考的问题。而每一次的 CodeReview,都是一段不起眼、却又坚实无比的阶梯。

理解需求与交互:假如我是一个用户

什么是用户呢?

相信很多刚毕业的学生都是很难讲清楚的——或许可以对此夸夸其谈,却也总是纸上谈兵,当离开学校,加入公司团队以后,才知道一个专业的团队会对用户理解到什么程度。

我们用户的身份是什么?要怎样定位其年龄范围、性别比例、电脑系统比率、使用 IE 比例?用户在不同区域内各有什么使用习惯,买家、卖家、经销人、审核人等不同角色之间的关系是什么?他们在其他平台的使用习惯,现在的期望,真正的诉求又是什么?这些答案都需要我们自己思考。小到字体的字号、颜色,大到业务的战略发展,都与用户、与我们息息相关。

刚毕业时,我理解的前端就是接收产品、视觉方面的需求,像一个流水线上的工人一样,配合后端,加工产品,再放到流水线上传递给测试,最终到达标准,产出产品,但是来到公司以后,才发现团队对我们的期望不是这样的,团队期望我们能从自己开始,设身处地地理解用户,优化需求和交互。

我亲眼看着我们的开发为页面重点、信息展示量等交互问题争论不休,也看到产品开会时拉来业务方,用实例阐述这个功能的意义来说服我们,我想,这是对彼此不同岗位同事的尊重、也是对整个项目、我们产品的尊重,是公司几百人之间的凝聚力。身在其中,我也渐渐地融入到了这样的工作习惯、工作方式中来。

以每个人的倾力思考促成产品更好地实现,再用产品带来的收益回馈每一个员工,其实是这样一个良性循环。

成为更好的自己

提出问题前先给出自己的答案

团队 Leader 开会的时候,总会说到这样一句话——“我们提倡不懂就问,却不希望你只是被动地接受别人的答案,你的答案可以不对,但是不能不思考,要带着自己的答案问问题”。

乍一这听些话,总觉得很像学校里老师的教导,而实际上,却从没有一个老师对我提出过这样的要求。后来,我渐渐理解了这句话的意义,并乐于按照这种方式去做,这次也想通过分享文章把我们团队的智慧分享给大家。就我个人而言,我的表达渐渐变成“出现了这样的问题,我可不可以这样解决”、“这个地方我不太懂,是不是因为这样的原因”。

在每一次分享答案,被别人纠错的过程中,我们才能知道我们的答案距离最好的解决差了那些,我们的考虑方向有什么偏差,在未来,我们才可以不“复制”别人的解决方案,而是在此基础上创造出更妥善的解决方案。

最难得的是可靠

“可靠”这一点也是我在学校里、作为一个学生很少注意到的,诸如按时完成期末作品、转达老师的通知,这些都太简单了,还算不得可靠,而且,相信很多人的学生时期,都是通过临时抱佛脚、加班加点地做完的吧,这样就更难以达到工作中的“可靠”的要求了。

在工作中,我们需要预先对时间进行正确评估,对每天的任务和进度都能准确把控,尤其是多个项目交叉推进的时候,更容易手忙脚乱,这时候更容易忽略一部分事情,造成一定的风险。好记性不如烂笔头,对每个项目进度进行记录,对每一天的安排记录,及时跟进,按时汇报,将大家的信息同步,为成功和失败负责,这样才会接近“可靠”的要求。

世界并不是非黑即白的

“世界并不是非黑即白的”——这是我们团队对入职新人的要求,老大也在开会时多次提到。我最初还有点疑惑,为什么招聘的时候会有这个要求,想来也许是为了减少工作中的冲突和争执,更好地进行管理吧,但是后来又慢慢了解到,“非黑即白”其实也是一种思考的惰性,让我们不去想中间灰色的部分,长此以往,会限制我们看待世界的角度。

我很感谢团队有这个指导思想,可以时时在心里提醒我们去开拓更多、更广的视角,这样在今后的技术学习和个人成长中,都能够为我们提供无限的可能。

一起为政采事业添砖加瓦

每天坐地铁、乘公交的时候,我们总觉得自己是一个碌碌终日的平凡人,吃饭、睡觉、上班,日复一日,淹没在人海中再没有一丁点影子,但是我们是不是也可以有自己想做的事?任务是死的,但任务的意义是活的,能清晰地意识我们在做什么,为世界带来了什么,不也是一种幸福吗?

如今,互联网技术如擎天大厦拔地而起,以更先进、更透明、更便捷的互联网技术服务于国家、服务于政府也必将是大势所趋。作为编程的开发者,我们写的一行行代码,便是构建这个互联网时代、构建这个国家的一砖一石,我们在试错、在尝试、在开拓,就像数千年前的革新者一样,一往无前。

我想,也许我们每个人都平凡卑微,都不曾拥有“障百川而东之,回狂澜于既倒”之力,但是,能以我们所学之能,为建设和创新政府采购事业添砖加瓦,为这个时代开辟一种新的可能性,想来也是一个不错的选择吧!

总结

在这个世界上有许许多多的公司,也有千千万万的开发者。在辛苦与收获并存的光阴里,我们从不孤独,而前路依然宽广明亮。

以上是我个人在政采云的体验与工作经验的分享, 2021 年校招在即,期待这里有更好的你与你在这里更好的未来。

推荐阅读

编写高质量可维护的代码:数据建模

如何推动前端团队的基础设施建设

招贤纳士

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

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