An image to describe post 总结几点“上不得台面”的技术领导经验

图片来源:pixabay.com

关于如何做好技术领导,市面上已经有无数的文章、书籍、课程。无可否认,许多书籍或课程的质量是相当不错的,也确实提供了相当有高明的洞见,但是这个话题似乎永远有讨论的需要,永远没有终结的一天。今天,我打算“反其道而行之”,来谈几条“上不得台面”的经验。

为什么要谈“上不得台面”的部分?这还得从我的亲身经历出发。

大部分技术领导都是从一线技术人员成长起来的,做了很多年技术,尤其是技术做得还不错的人,大概都有这样的特点:不喜欢多说话,性格比较温和单纯,说话不怎么拐弯,遇到问题喜欢动脑筋钻研,相信规则,热爱学习等等。

表面上看起来,不管遇到何种问题什么挑战,这些特点都有利于解决问题。但是在这些特点之下,潜藏着技术人员对世界的认知,比如“高内聚、低耦合”、“单一责任”、“边界清晰”、“彻底自动化,减少对人的依赖”等等原则,已经成为潜意识中的惯性。

如果选择专家路线,只要按部就班向前走就可以,如果要成为技术领导,势必要面临许多新的挑战。但是大家未必意识到了,这种挑战未必只是原有方向上的障碍。对许多人来说,世界也是系统,只不过是更复杂的系统而已,坚守之前工作中已经被经验证明的原则和方法,这是再正常不过了。

然而,世界并不是系统,或者严格点说,并不是“IT系统”。

所以一些普通人看来“稀松平常”的东西,对技术人员来说却无比困难,因为要改变的不仅是原有的行为方式,甚至是颠覆之前的原则和价值观,某些挑战甚至不是让人感觉“不屑”,而是“不齿”。这,就是我说的“上不得台面”。

但是如果我们承认成长需要认知升级,也就必须承认我们需要不断颠覆已有的认知。那么不如索性掀起桌板,看看“上不得台面”的到底有哪些。

第一,关系真的非常重要。

我刚刚工作的时候,技术负责人是非常耿直的人。因为团队不大,所以大家的交流很密切,谈的话题也很多,除了讨论技术,另一个主要的话题就是埋怨财务、行政的“不给力”。上班不专心啦,办事不专业啦,经常迟到早退啦等等。每次说起来,都觉得特别有共同语言,特别看不起这些“不干正事专门找事”的人。结果,开发团队和财务行政之间,就维持着特别微妙的关系,打起交道来总是彬彬有礼,但又小心翼翼。

那时候我以为,既然系统要边界清晰、职责分明,既然搞技术的就是很实在很踏实,那么和搞财务行政的一定是两股道上跑的车,换了工作才发现不是如此。

新公司技术负责人的技术也很好,更让人惊奇的是,他和财务、行政甚至各种“不干正事”团队的人相处都特别融洽,总是笑脸相迎,人家也特别愿意跟他多聊几句,无论是否工作相关。我正在琢磨,写程序已经足够忙了,为什么还要抽出那么多时间跟人打交道,却逐渐发现了特别的好处:办什么事情都特别方便,办报销时没有那么死板,不会因为晚了几分钟或者填错一个字,就被冷冰冰地说“下次再来”;公司有什么福利计划也能提前知道,有些东西知道公司会发,自己就不用提前买了;招人的时候,会得到更多的简历和更立体的判断,把自己看好的人弄进来的难度也容易多了……

从这以后我深刻理解到,公司的运作是不能像程序那样,按照规矩硬梆梆执行的。在不同的人、不同的职能、不同的部门之间,一定有无数的空白或重叠。关系好,就可以很柔韧地解决,关系不好,就只能机械地解决——机械地解决,最后受影响的还是自己。

我真心建议,无论你在哪家公司当技术领导,合作部门的关系很重要的,一定要要花心思去维护。如果实在没有那么多精力,起码要重视和财务、行政、人力的关系,避免“想招的人招不进来,想提拔的人提不上去”的尴尬。

第二,不要有“完美自动系统”的执念。

技术人员最大的成就感来自哪里?对许多人来说,来自一个自动化的系统,只要点一下“启动”,它就自动运行,完成各种问题,最终得到想要的结果。如果其中还需要人工干预,大家都会觉得这系统做得还不够好,还不够完美,还有可以完善的地方。

完美自动化的系统,单纯作为技术追求来说是没有问题的。但是身为技术领导,有时候你大概需要破除这种执念。

许多年前,我曾经做过一个“通行证”项目。这种东西,说白了就是“统一登录”,把原来散落在各个独立系统的账号用一个账号打通。这个系统技术上的挑战并不大,数据上的挑战却很大。原来各个独立系统的用户账号是彼此隔离的,所以John、“小强”之类热门ID或者热门昵称,可能在各个系统里分属于不同的人,统一起来就会打架。

整个统一登录的开发很快就结束了,但是数据迁移方案着实让大家伤透了脑筋。前后讨论了四五天也没有找到合适的方案,无论哪种方案,总归有一小部分用户受影响,无法完美解决。

老大知道此事以后非常诧异:“一个这么小的问题怎么能困住这么久?” 他先让我们去调研,看看各种方案影响的用户有多少,都是谁。然后大手一挥,选择了其中一个方案:跟这些用户沟通,实在不能照顾他们的老账号了。作为补偿,我们可以额外给这些用户一些积分或者权益。如果实在不行,就不要这个用户了……

虽然我们当时看得目瞪口呆,但后来的情况证明,他这么决策确实是对的,确实保证了统一登录系统及时上线,对于实在照顾不到的用户,因为做好了沟通和补偿,也没有发生问题。

在后来的工作中,我经常听到技术领导讲“这个太难了”,或者“这个太复杂了”,或者“这么做的成本太高”。但是我仔细去看,许多时候之所以“太难、太复杂、成本太高”,原因是他们对完美自动化的系统有执念。如果破除执念,告诉他们“只要解决80%就可以”,他们很容易设计出只用30%的成本的方案,这就已经能产生很大的效果了。

那么,剩下的20%怎么办?其实,只要你和上下游团队关系好,剩下20%用人工,也不大会有人反对的。

第三,不要死等,死等等不来合格的上游。

“需求还没想清楚,让我怎么开发?”

“连自己想做什么都说不清楚,怎么能开发?”

在无数的公司,我们都听到这样的扯皮。从技术团队的角度开发,确实需要责任内聚,保证“专人办专事”,也需要保证开发力量被高效使用,不要被徒然浪费。目标不清楚,当然不能贸然行动。但是从技术团队之外来看,无论什么原因,问题终归是没有解决。

我以前也是这样,后来才从其他人身上看到了不一样的办法。

那时候我在的公司里,客服团队和仓库团队的矛盾很大。仓库需要收货、拣货、发货,很辛苦,也总容易出纰漏。但是客户不会直接和仓库员工沟通,每次都是和客服沟通,把怨气直接撒到客服头上,甚至直接向公司更高层投诉客服不给力。其实在许多公司,客服只是内外沟通的窗口,没有那么大的权力来调动资源,满足客户的一切诉求。

从这个问题刚暴露开始,客服的负责人就在想办法解决问题,不断给仓库团队各种反馈和压力,努力让他们“工作更给力一点”。但是无论怎么想办法,都不能有效解决仓库员工的问题,客诉仍然在源源不断地产生,公司老大仍然在源源不断听到抱怨。

正在我们发愁这个死结如何解开的时候,客服负责人自己出手了。他安排好自己的工作,三番五次往仓库跑。不只是像原来那样给仓库反馈——“昨天又有多少客诉,涉及多少货物”,还深入了解了仓库员工的工作处境和工作流程,虽然这根本不是他份内的事情。我印象最深的是,有次与他一同去仓库,快到仓库之前他拉住我说:大热天,仓库的同事肯定很辛苦,我们买几个西瓜带进去吧……

几个礼拜之后,在“越位”了解仓库的具体工作情况并和仓库的同事建立信任之后,客服负责人提出了一套全新的仓库工作流程,并且得到了仓库同事的充分认可。等到这套流程真正落实,以前每天让大家头痛的客诉也就烟消云散了。

了解仓库的工作细节,并不是客服份内的事情,为仓库制定新的工作流程,也不是客服的权力。但是“越位”并不是什么坏事,重要的是它真正解决了问题——解决了别人的问题,顺带也就解决了自己的问题。

如果你是技术领导,我真诚建议你在工作中不要奢望分工职责会像系统架构图那样严密清晰,也不要死等“合格上游”。如果真的等不来,不妨大胆走出去,凭技术领导的缜密逻辑,一定会受到欢迎的。

第四,柔软你的身段,学会扮演。

靠谱的人有什么特征?搞技术的人通常认为,起码要沉着冷静,不能光图嘴皮子痛快。当面一套背后一套,多半不是靠谱的人。所以,演员肯定不会是什么好人,见人说人话见鬼说鬼话,谁都不能相信。

但是我们也需要知道,即便是在技术团队里,只要人稍微多一点,不是所有人都有相同的性格,相同的行为模式。更不用说在涉及更多人的,更大型的组织里,一定有五花八门的人。

那么,如何与各种人打交道?要想永远“做真我”,“以不变应万变”,除非你的职位足够高,或者威望足够高,否则多半会碰的头破血流。大家对你的评价多半是“噢,那个人,就是那样……”。

我亲眼见过好些不错的技术领导,发现他们虽然有自己的风格,但是无论谈话、做事、写邮件、开会,在不同的场合,对不同的人,其实都会有微妙的变化。甚至换了公司,也会变换自己的风格。

这种变换的依据是什么呢?据我观察,目的是让环境更融洽,更合作更顺畅,让目标更容易达成。团队太沉闷了,就多开开玩笑,哪怕自己不是很外向乐观的人。团队太辛苦了,就多安慰鼓励下大家,哪怕自己并不是很善于言辞的人。同事信心不足,就多说一些鼓劲打气的话,哪怕自己本来不是一个情感外露的人……

为什么需要这样?人的天生个性固然是各不相同的,工作和协作中的空缺也是各不相同的。打个简单的比方,你的个性可能是正方形,工作中的空缺可能是三角形或者长方形。如果你不是足够重要,必须让外界来适应,那么更重要的事情就是去填补工作中的空白,让正方形“变得”像三角形或者长方形。唯如此,工作才能顺利进行下去。

一般人这样做,很可能还要担心副作用,被人认为是虚情假意。但是技术领导多半不会担心这个问题,因为技术领导本性往往是忠厚沉稳的,他稍微脱离“老实木讷”的刻板形象一点点,大家都更愿意理解为体谅而不是伪装,从而产生良性的互动。真正的难点,在于技术领导者需要克服对“扮演”的刻板印象和天然反感,让自己以更合适的角色融入到不同的环境当中。

李小龙说:be water, my friend。那其实是很高的境界。不过身为技术领导,总是一副花岗岩似的身板也不太合适,起码,你得给自己裹上一层泥嘛。

注意,我说的是“学会扮演”,而不是“学会表演”。如果技术领导热衷于“表演”和“表现”,甚至经常把不是自己的功劳抢过来戴到自己头上,很可能得不偿失,引起技术人员的广泛反感。

第五,自己的钱真的没那么重要。

在技术人员的思维惯性里,世界应当是规则清晰、条理分明的。公司的事用公司的钱,自己的事用自己的钱,这不是多少的问题,是性质的问题。

但是技术领导或许一定不能这么想。我亲眼看到过两名技术人员的经历,可以作为很典型的例子。

一开始,两个人的起点差不多,技术不错,但都不善于交际。但是不久之后,两个人就显示出巨大的差别。

一个家伙很快领悟到,在涉及多人的复杂环境下做事,获得对方的好感和认同是很重要的,所以加入新群第一件事就是发红包(虽然金额都不大),日常再经常找一些名目请大家吃饭,很快就赢得了广泛的认同,做得风生水起。另一个家伙尽管技术也不错,但对金钱看得很重,不说主动请人吃饭,哪怕别人起哄让他请吃饭,最后也往往落得不开心。我曾建议他说,既然不会找机会,收入也还算不错,不如每个月固定留出几百元来请大家吃饭。几个月之后他告诉我说:这些钱确实不多,但不行,我就是过不了自己内心这关,觉得我辛苦赚的钱,不能这么花……

在我看来,无论时间也好,代码也好,金钱也好,都可以看作解决问题的资源。只要确保自己没有邪念,在金钱上确实不必太计较,把“花自己的钱为公司办事”上纲上线,当成不得了的大事。

我曾经遇到过很不错的实习生,但是公司制度限制,并不能给实习生开应得的报酬,所以也很难留住真正优秀的实习生。我的对策就是自掏腰包,购买Filco机械键盘、Kindle电子书等等作为礼物或者奖品,表达自己对他们/她们工作成绩的认可。虽然如今公司里的奖励一般都值几千元,我这点小礼物实在比不了,但它们全部收到了良好的效果,既增进了个人之间的信任,也增进了他/她们对公司的信任,最终结果无一例外是皆大欢喜。

如果你是技术领导,我建议你一定要想清楚“为公司的事,花自己的钱”,其实并不是什么大事。公司的事情做好了,自己也会有收获的,只是有时候收获可能来得晚一点而已。

畅销书作家刘墉曾经有一本书的标题是:“我不是教你诈”。这也是我最后想补充的。在我看来,身为技术领导,对技术的敬畏、诚实谦和、尊重客观、力求平等,应当是始终不变的坚持。但是,在坚韧的骨骼之外,让身段变柔软一点,总不是坏事。

An image to describe post 总结几点“上不得台面”的技术领导经验

如果您认为本文有意思,欢迎长按识别上面的二维码订阅。

“余晟以为”虽是个人号,但只用心做原创,不虚张声势,不故弄玄虚,不带节奏,力求定期更新,只为和你一同探索世界,分享致中平和的观点。