如果新团队有一套新人融入计划的话是最好的,按部就班来就好了。

但是如果不存在,那就得自己想办法掌握生存之道了,这也是写这篇文章的目的。

团队成员

人永远是第一位的。

加入新团队要做的第一步就是了解角色分工,熟悉需要对接哪些人,上下游如何协作。第二步就是了解团队氛围,私下里面能聊得来当然最好,万一聊不来也别勉强,当好大头兵干活就行。

最后一点是关于办公室政治,有人的地方就有政治,心态上需要接受它的存在,至于要不要卷进去,就看你个人了。反正我对办公室政治很反感,这样的团队呆着也烦,趁早跑路的好。

你的Boss是谁

似乎这个问题很简单,理想情况下只有一个人管你。但是现实中可能名义上你的leader是A,实际管你的是B,甚至出现需要多头汇报的情况,还可能出现不知道听谁的问题。

一句话:能够给你打绩效的人就是你的Boss。在面对争议时,应该听他的意见。做需求的时候,也应该先做他的需求。

项目管理

了解项目管理也很重要,比如项目上线时间,项目的版本周期,临时版本多不多。

还有一个很重要的点是了解团队现在的OKR,这样可以知道团队现在最重要的事情是什么。

技术架构

先从架构入手,不要太关注细节。

对于接手新项目,第一件事情是要了解技术架构。包括用的编程语言/开发框架/技术栈,然后最重要的是系统架构。可以给自己列一个学习计划,最后跟技术leader做一个简短的review,需要达到自己能够画出系统架构图的水平。

开始工作

接着开始做第一个需求,具体怎么做可以参考之前的文章:如何做好一个大头兵

对于新团队,需要额外注意环境问题。如何搭建开发环境,如何部署到测试环境,以及后面的灰度环境和正式上线流程,这块可能很耗时间,要踩很多坑。如果组内没有良好的DevOps意识,也没有规范,那这一步会非常痛苦。

我记得过来现在的团队时,跟的第一个版本是我在开发环境都跑不起来的情况下上线的,因为涉及到GPU环境我本地搞了半天跑不动,找leader他不开发所以也不熟悉,另外找到负责这个模块的人问,还惊奇地发现这个代码仓库只有他一个人维护。

时间又很紧张,最后我放弃了折腾环境,直接写代码push代码。没有CICD我又打包不了,然后发现这边没有分支测试,直接就是集成测试,所以直接代码合进测试分支,其他人来打包,我那个代码在合分支之前都是裸写的,从来就没跑过。最后居然也很神奇地上线了,但凡有一点问题就GG了!

能够顺利上线第一个功能就完成了适应新团队的第一步。

找到大腿,抱紧大腿

说到大腿,有些朋友第一反应想到的可能是技术leader。但是技术leader一般比较忙,可能找不到人,或者因为不再负责具体的实现,对于代码细节已经不太清楚。作为新加入的开发人员,你需要面对各种技术细节,还有各种琐事需要随时提问,技术leader在这方面能够提供的帮助反而有限。

任何一个项目中必然存在一个核心开发人员,这个人没有管理职级,但最熟悉整个项目的细节,一般也是技术leader的backup,可以理解为“精英大头兵“。找到并抱紧这个人的大腿对在新团队的生存非常关键。

那么如何找到这个大腿呢?大腿通常具有如下特征:1. 开发人员有问题都会首先找他,然后才找技术leader;2. 技术leader会找他讨论技术方案和一些细节;3. QA、PM、PD等成员有事也会优先找他。大腿在团队中是一个枢纽的角色,很容易就能够看出来的。

找到大腿后,接下来就要抱紧大腿。通常来说,遇到自己不熟悉的问题直接找他就可以了,尤其碰到跟业务相关的,不要自己瞎看瞎想,先问他的看法,有没有建议,最好能直接问出解决方案,最后才自己动手去做。这样可以避免走很多弯路,不然会浪费很多时间,自己埋头想出来的方案还不一定好。

结语

写了一点加入新团队的生存之道,希望能够对你有所帮助。