> 文档中心 > 经验|如何在大厂里高效跨部门协作?

经验|如何在大厂里高效跨部门协作?

 说到跨部门协作,还是要从之前参加的百阿培训(阿里文化&价值观培训)讲起,当时有个议题就聊到入职阿里这段时间面临的最大问题是什么?

其实这个问题,我在9月份写的一篇文章里有提到过,原文如下:

不得不说在阿里做项目的沟通成本是比较高的,因为你的兄弟域可能分布在"五湖四海",甚至是国外。如果你是主测,那么你就要负责全链路质量保障的责任,协调&沟通各域的测试同学的测试进度、项目风险;上线时候要紧盯线上监控和报警等问题。

我在阿里做测开 · TesterHome

基本上每个组都 写了 跨部门协作 难。拋出问题,自然要解,关于怎么解?讲师没有直接给出答案,而且让每个小组去“寻找”答案。
我当初入职也没多久,自然这也是我当下面临的问题,然后小组就每人发言,分享下工作中是如何解决这样的问题的,当然也有在base地西溪园区的小伙伴 请教师兄,最后大家一起总结下让我作为小组的分享“官”做了分享。虽然当时分享的内容实在记不到了,但是工作一年多了,跨部门沟通已经成为常态,想要更高效沟通,还是有一些所谓的“套路”(其实就是要学会看人、摸心理、保持利他心态)。

大家工作是真的忙

根因是业务复杂度高,架构设计使然。从业务架构上来说,阿里这边是微服务架构,与单体的复杂系统不同,开发者需要开发和管理一系列相对简单的服务,而这些服务可能以一些复杂的方式交互。这些服务之间的相互协作是通过一系列与具体技术无关的消息协议来完成的,这些协议可能是点到点形式的,也可能是异步形式的。例如你要淘宝购物,而你完成一笔下单支付,则需要涉及的域有收单、收银、金融、会员、网关等服务,这些服务往往是不同的开发团队负责,也就是说你如果是负责收单域测试,那你就要了解其他域的服务,理论上负责上游业务的同学沟通成本要高,下游的业务同学沟通成本相对较低,所以下游的服务一般考虑平台化。

而如果你发现调用链路在金融域挂了,在排查问题时,就要找到相应金融域的开发或测试同学,当然这些同学往往不在一座城市,例如我的合作团队就分布在杭州、广州、上海、新加坡。其实这已经不单单是跨部门沟通了,还是跨区域、跨国家沟通了,所以有时候还会用到英语沟通。

如何提出一个好问题?

  1. 问题自查,排除不可能因素
    大家都知道,微服务测试的重点就是契约测试,简单理解就是上下游服务调用约定的参数传递测试。就是xx业务,你要怎么传递什么给我,我才返回正确内容给你。而当你遇到下游服务报错时,不要慌,第一步一定是要问题自查,而不是上来就@下游服务通知给他一个链路,让别人去看。到头来人家发现是你传递的参数问题,反而会给别人不好的印象。以后你再抛问题,人家会降低对你问题的处理优先级。
    问题自查非常重要,一是能提升自己问题排查能力,二是降低沟通成本。

  2. 提炼问题,一针见血。
    为什么这么说?因为懂开发的同学都晓得,一条链路涉及七八个服务的调用,以下图为例(没画出来异步链路),如果用户下单支付后,一直没有返回支付成功的结果,那么如何精准定位问题根源呢?一笔支付失败,按道理讲,整条链路都有可能存在问题的。那么,我们可以通过链路日志分析各个域报错的地方,按照经验来说,一般问题根源在链路头部或尾部,可以重点排查这两部分的报错日志。

由图可知,如果支付宝服务报错,同样报错会传递给上游调用者;而如果收银报错,则下游链路一般是触达不到的(也许服务没调用金融之前就结束了)。

如何解决别人的问题?

正如上个问题一样,你有求于别人,别人同样有求于你,一天24小时,大家的时间是相同的,不多不少。在负责项目的过程中,如果别人有求于你,找你排查问题,对于这类问题,我的建议就是

首先,将每天的工作按照轻重缓急排优先级,项目上重要工作优先做,非项目相关抽空做。

其次,如果事情不紧急,告知别人问题解决的时间。

总结的几个协作原则

总而言之,跨部门协作仍是沟通问题,还是需要从心理学的角度思考人与人之间沟通的心理。减少沟通GAP,高效协作一般要遵守以下原则:

  1. 态度和情感交流很重要

如果你平时见面招呼都懒得打,别人要你协作的时候,各种拖拉、延误,等到你需要帮忙时候,就嬉皮笑脸,各种抖窗,谁愿意理你?或者,你找别人办事,颐指气使,态度傲慢,谁愿意给你处理?所以,找人合作,态度和礼貌很重要。

  1. 充分肯定对方的帮助

在对方推进事情的过程中,我们可以在项目群里给予充分肯定,表示这个项目之所以顺利完成,很大程度上归功于同事的配合、努力,以及扎实的基本功和优秀能力等等。这样做,愿意帮你的人会越来越多。

  1. 开诚布公

错的不要解释;务必不要争执;不打断对方说话;微笑再微笑;出现问题及时同步信息。

  1. 找到对的人

跨部门合作,需要找到对的人,因为一个域的开发同学每个人都会负责不同的业务,建议花点时间了解下对方部门的开发的工作职责,当然我喜欢把自己的职责写到个人简介里面,这样别人找我办事也可以知道我是否是他找的对的人。

  1. 远程沟通注意礼节

有时候,需要协作的同学不在同一个办公区,这样就要借助于钉钉远程视频,建议视频打好招呼,找一个安静的地方,将事情的上下文先讲清楚,再聊问题。

  1. 线下有机会面基

如果有出差的机会,可以和平常有交集的同学一起吃个饭,扯扯谈,拉近距离。

往期推荐

接口间参数传递的一种解决方案

经验分享|测试工程师转型测试开发历程

浅谈Mock平台的设计思路

接口自动化测试框架设计思路

接口自动化测试框架实践1:接口测试概述

我在阿里做测开