带着“答案”去提问
Contents
前几天,一位美国团队的负责人跟我谈到了他团队里的两位工程师。其中一个工程师每周和他一对一沟通的时候都提出了好几个技术性的问题,诸如:
- 调试过程中发现本地环境遇到一个错误跑不起来
- 在测试环境下面各种参数如何调节
- 压力测试中发现的一些新的不及预期的现象
如此等等。总结下来,他感觉这位高级工程师更像是一个 Problem Maker,在不断地需要他介入到特别细枝末节的地方,给出具体的意见后才能进一步开展工作。
相比之下,另一位工程师则会在一对一沟通中除了汇报主要进展外,也会提出一两个接下来需要重点关注的问题。不同的是,那位工程师除了抛出问题外,还会提出几个他考虑到的可行性方案,并虚心跟他讨教。这位负责人笑着跟我说这样的团队成员才是他心目中称职的“高级”工程师,是典型的 Problem Solver。
这个案例彰显出“带着答案去提问”的重要价值,尤其在远程协作或者大型组织等沟通渠道弥足珍贵的环境中,这种能力更值得重视和培养。接下来我们从几个方面阐释其中的内涵。
答案让问题变得更完整
在提问问题时,提供可能的答案可以帮助澄清问题的意图,并给出更为清晰的上下文。例如,假设你想问一个关于旅行目的地的问题:“我应该去哪里旅行?”如果你只问这个问题而没有提供任何上下文,对方可能会很难给出有用的建议。但如果你提供了一些可能的答案,如:“我正在考虑去巴黎、东京或者悉尼旅行”,那么回答者就可以更好地理解你的兴趣和偏好,并给出更具针对性的建议。
在技术性问题中也是类似的,如果只是说“我们应不应该在这个项目中使用 React Query?”那么对方并不知道你是建议使用这个工具,还是看到一些现有方案的问题所以在考虑一些业界流行的方案,还是有什么其他意图。但如果换成“我们应不应该在这个项目中使用 React Query?我发现这个内部系统里其实主要的客户端状态都和服务器数据交互相关,这种场景 Redux 显得臃肿了,看起来 React Query 是一个更好的选择,另外一个我了解到的方案是比较轻量级的 SWR”,估计对方就会很快领会你的问题是觉得 React Query 以及 SWR 这类新兴工具可以更好地处理服务器数据交互类场景。
抛砖引玉提升沟通效率
在提问时准备的“答案”并不需要是最优的,它们更像是大海中的一座座灯塔,指明大致的方向即可,可以为对方提供一些参考,避免回答重复或不相关的信息,并促进进一步的讨论。
举一个简单的例子:小张在开发一个新功能的时候,发现需要用到的一个工具函数已经有多个版本的实现了,它们有些略微差异但是本质上可以通过一个通用方法解决。然后他去组里跟大家说:“我们代码仓库 xxx、yyy、zzz 这几个方法重复了,我们能不能重构下?”
在另外一个平行时空,面对同样的问题,小李做了一些简单的分析后,是这样跟大家沟通的:“最近我在开发一个新项目的时候,发现已经有 xxx、yyy、zzz 都用来处理数据分组问题了。我简单看了下它们各自的实现,其实是可以通过传递一些参数来整合为一个方法,重构完能减少上百行代码。或者也可以考虑直接使用一个流行的开源工具库里的 groupBy 方法。我目前想到这两个办法,权当抛砖引玉,大家一起看看怎么解决比较好呢?”
对比两种方式,明显第二种信息量要多出很多。相信如果你是他们团队中的一员,看到小张的问题你会觉得这几个方法可能有问题,但是还得实际看一看。但看到小李的描述,你应该大概已经知道这几个方法大概率是不同人不同时期添加的,属于技术债务。而且看起来引入一个比较标准的工具库会是一个更好的方案。当然,进一步可以去分析为什么这些工具函数会出现如此多的重复,是不是因为缺乏文档、缺乏规范等等。
除了提供更为丰富的信息,与问题相互印证之外,这些解决方案也提供了借鉴意义,让大家的讨论不再是天马行空,而是有了基本的“锚”,话题会围绕这几个方案的优缺点逐步展开,甚至往往能够引申出更加合理的新方案。这里其实是有一点心理学的概念的,做选择往往比给答案更容易,而且更有启发性。在《程序员修炼之道》中有一个“石头汤”的故事,本质也是类似的。
抛砖引玉,有的放矢,最终达成的效果是大家可以更有效地沟通,进而更快地达成共识,促进产出。
主动思考带来更多成长
发现问题是第一步,能够主动思考并提出有效方案是更高能力的体现,是第二步。相比较而言,这种意识的培养比技术的提升更容易,但效果却出乎意料地好,可谓极具性价比。初期的“答案”可能有些初级,但你的沟通对象至少会认为你非常负责任,也对他们足够尊重,做了一些功课才来请教他们。随着这种思维模式的贯彻和深入,你会找到更多有效的办法去寻找更优的方案,例如先与团队里的领域专家沟通、使用 ChatGPT 咨询建议、进行 PoC 进行简单验证等等。日积月累,你可能就会进入第三步:给出各个方案的优缺点,并陈述你的推荐方案以及理由,这足以表明你已经具备了一定的判断力和决策能力。上级和同事们看到你积极参与和贡献解决问题的能力,会加强对你的信任和认可,从而获得更大的发展空间。
换个角度来看,实际上带着答案去提问本质上是站在对方的角度去考虑问题,甚至是站在团队负责人或上级的角度去综合评估最优解。这种格局带来的提升动力非常强劲,对个人能力的全方面提升相当重要。
小结
在遇到一个新问题时,直接将问题抛出去既不专业也不负责。其他人可能会感到一头雾水,因为缺乏一些关键信息云里雾里。如果其他人发现这个问题其实行业内或团队内之前曾有过经验,或者认为提问者完全有足够能力搞定,也会降低对提问者的信任度。相反,如果每次遇到一个新问题都能够主动思考,准备一些初步的思路甚至解决方案,往往会给对方如遇春风的感觉,有助于快速达成共识。更重要的是,这种思维方式能够提升一个人的格局,为后续的发展进步奠定更为坚实的基础。