你好,我是bilibili主站技术中心总经理王昊,今天想跟大家分享的话题是技术、产品和管理的不同视角。

我们在工作中难免会跟技术、产品、管理等角色打交道,那么不同角色的世界观有什么不同呢?怎么平衡多个角色之间的关系,怎么协调多角色团队的工作呢?

技术、产品、管理眼中不同的世界

技术眼中的世界有4个关键词,分别是工作、设计、选型、优雅。他会关注自己的设计方案是否优秀;该选用什么样的技术选型才合适,比如是选用SQL还是MySQL;自己的代码是否足够优雅等。

产品眼中的世界也有4个关键词,分别是用户、需求、方案、细化。他会要求自己理解用户,了解他们的需求,并满足他们的需求;针对用户的需求提出相应的解决方案,并将方案细化到可执行程度。

管理眼中世界的4个关键词则分别是目标、指标、拆解、梯队。他关注的是自己是否能达到目标和相应的指标,如何对任务进行合理拆解并制定阶段性目标,如何建立完善的人才梯队,做好人才储备等。

这三个角色眼中的世界都是不一样的,这导致他们看待同一件事情的视角也是不一样的。

技术人首先看到的是工作,一个确定性的工作,而且技术人特别喜欢解决确定性问题,有输入有输出。一个任务的要求是什么、边界在哪里,确定这些问题之后,他就非常容易把它分解开,并把它完成。

技术人的追求在于,他希望自己在做这些事情的时候,够优雅、够简洁、够高效。而产品解决的往往是非确定的问题,比如好,不好;好用,不好用;流程,不流畅;酷,不酷等,这些都是没办法做具体的、确定性的界定的。

举例来说,工程师面临的问题,可能是把宽带节省30%,把QPS从1700提高到2000等,都是非常数字化、确定化的。而产品经理不是这样的,他们面临的问题,往往是让用户更满意、让用户觉得产品更厉害等,都是非确定性的问题。

而管理跟技术和产品都不一样,管理面向的是目标,他关注的是指标,比如这个产品月活提高30%,成本减少50%,梯队规模控制在1000人以内等,都是数字性的具体指标。

由于大家的视野和视角不同,彼此之间会产生很多隔阂和误解,网上很多段子就是由此而来。而避免这些情况发生最好的方法就是加强沟通,具体可以从以下3个方面着手。

  1. 以团队实现为目标,把自己的视角从程序员拔到更高的高度,从团队价值的角度出发,思考和对话。
  2. 换位思考,多去想想如果你处在对方的位置,你会怎么想怎么做,这样的换位思考能有效避免形成误解和误区。
  3. 用对方能听懂的语言做表达,很多时候,技术人员习惯用技术语言来表达,比如异地多活很重要,一个典型的技术语言,但产品经理或管理者可能不清楚这个词具体是什么意思。因此,技术人员在跟对方沟通的时候,需要把技术语言翻译成产品语言或指标性语言,比如“在任何异常情况下保持服务稳定很重要”,这样,他们也更能理解你所做的事情的价值。

技术如何转型产品

对于技术人来说,一般有4个职业发展路径,第一个是从工程师到研究员到高级研究员,最后成长为科学家,是偏专业研究的一条路径;第二个是从工程师到高级工程师到架构师再到主任架构师,这是偏工程实现的一条路径;第三个是从工程师到项目经理到经理再到部门总监,这是偏管理的一条路径;第四个是从工程师到产品经理到高级产品经理再到产品架构师,这是偏产品的一条路径。

对于程序员来讲,如果最后以CEO或COO作为自己职业发展的目标,那么可以换一个方向,尝试选择后两条发展路径,试着培养自己的产品思维和管理思维。

先来看产品思维。其实不同产品经理的侧重点各有不同,可能在技术人员眼里,他们都叫PM,但其实PM各有不同,有的偏交互的,做用户产品;有的偏策略的,做商业产品;有的偏运营活动的,还有的偏活动策划型等,每种产品经理的世界也各不相同。不过,所有的PM都有相同的特点:

  1. 他们都有改变世界的理想,这一点很重要。程序员的理想是什么?是这个事儿做得得酷,未必是我一定要改变这个世界。但好的产品经理不是,他们一般都有一个改变世界的理想,这样才能推动他们前进。
  2. 相对理性的技术人员来说,产品经理一般会更偏感性思维,特别是偏交互型的产品经理,他们的Sensitive更强,能敏锐的捕捉用户的需求。
  3. 在产品经理的思维中,他们会先考虑一切都是可能的,比如飞机不用轨道就能起飞,在他们眼中应该也能实现,因为这样才能放飞自己的想象力,这点跟技术人员有很大的不同。
  4. 产品经理常说就差一个程序员了,他们一般不会考虑实现的问题,在他们看来,具体怎么实现,都是可以扔给工程师去解决的。

技术转产品的优势和劣势

以上这些都是我观察到的产品经理思维上的特别之处,跟技术人员有很大的不同,如果技术人员选择走产品这条路,具体该怎么走呢?有哪些需要注意的地方呢?

先来看,技术转产品的话,有什么优势?

  1. 技术人员有较强的逻辑思维能力较强;
  2. 技术人员知道什么可能实现。

具体来说,技术人员有更强的逻辑思维的能力,就会有较强的全局视野,做事情就会更有计划性,知道怎么把任务做好拆解,在具体执行中分成几步去做更合适,这一点很重要。

同时,因为技术人员知道什么可能实现,他就不会被技术团队忽悠,反之,一个不了解怎么实现的产品经理很有可能会被他的技术团队忽悠。做到以上两点之后,技术人员就能从源头开始强有力的把控整个项目的进展,这是非常重要的优势。

接着来看,技术转产品的话,劣势在什么地方?

  1. 太过注重可实现性。这在技术人员做工程的时候,是一个很好的优势,但当他进入另外一个角色的时候,就可能变成劣势。因为太注重可实现性的话,就会限制自己的想象空间,会被制约想象力。因为很多东西在一开始的时候都是不可实现的,而正因为它们当初的不可实现,才给了我们更多的机会。
  2. 缺乏同理心。在技术人员眼中,世界一般都是客观的、数字化的、Coding化的,但是真实的世界都是由人组织构成的,所以需要我们用心去感受别人是怎么想的,这个功能为什么用户喜欢或不喜欢,这样的同理心,技术人员会相对欠缺一些。
  3. 思维太过理性。然而产品有时候需要的是感性,当理性的思维碰上感性的需求,就会产生冲突。举个例子,一个产品有10个功能需求,一般技术人员会思考怎样用最少的代价把这10个功能都实现了,最后可能每个功能都只做到60分或80分。但其实,重要的不是把功能全部实现,而是选择其中的一个作为突破点,做到120分,这就足够了,其他的都可以不做。所以,性价比不是决定性因素,有突破点才是决定性因素。这一点,很多从工程师转到产品经理的人都不容易参透。

结语: 今天跟大家分享了技术、产品、管理的不同视角,每个角色都有各自不同的世界观,为了避免产生隔阂,技术人员需要从以团队实现为目标、换位思考、用对方能听懂的语言做表达三个方向出发,锻炼自己的沟通技巧。

同时,技术人员有着不同的职业发展路径,转向产品,以产品架构师为目标是不错的选择。而当技术人员选择转向产品时,需要克服自己太过注重可实现性、缺乏同理心、思维太过理性的短处,发扬自己逻辑思维能力强、了解可实现性的长处。

你觉得技术、产品和管理的不同视角主要体现在什么地方呢?技术转型产品时需要转变哪些思维呢?欢迎你在留言区分享。

感谢你的收听,我们下期再见。

作者简介

王昊,bilibili主站技术中心总经理,曾历任百度基础架构部架构师、高级技术经理,网页搜索部副总监,移动应用部总监,是百度分布式存储领域的早期开创者,推动了百度分布式存储技术的自研、应用。

(本文整理自bilibili主站技术中心总经理王昊在ArchSummit大会上的分享,有删减。)