你家的产品经理懂技术吗?

1.怎么看产品经理和工程师之间的冲突?工作中应该惧怕冲突吗?

邱岳:我认为应该去推崇这样一种企业文化:大家不要因为冲突导致以后跟对方没办法沟通。我知道很多公司是特别惧怕冲突的,希望所有的冲突都不要在面上发生,结果这些冲突有可能就会转到桌面下解决,最终处理的结果不是特别融洽。

在我的职业生涯中,我印象里跟开发人员的一次冲突,是因为有一个开发上的问题需要工程师加班解决,而当时在会上工程师拒绝加班,并且他的态度和情绪也有些问题,我也没有很好地控制自己的情绪,于是我俩当场就吵起来,这是我印象中比较深刻的一次争吵。

回忆起来,自己还是没有控制好情绪,在那个时刻我脑子里面想的已经不是我要解决问题。

池老师:我觉得可能是你遇到的人不对,每次跟涛哥(极客时间 App 大前端)说:“你怎么还在,赶紧回去。”涛哥说:“我要加班。”总是撵不走他,你需要找这样的同事一起工作。(笑)

邱岳:我作为一个产品经理,应该有能力和各种各样性格的人合作,他也许是平时工作高效,不喜欢加班的人,而我的目标是想要解决产品问题,或者说发布、解决问题,而不是让一个不喜欢加班的人加班,或者像涛哥这种特别喜欢加班的,最终要目标驱动,一定要管理和控制好自己的情绪。

你可以想一个更委婉的方法来解决问题,这也是我一个同事教给我的,他非常善于曲线解决问题。我之前是他们部门的 PD,最早在做 CRM。我负责一个大的部门,他是那个部门的负责人,他希望推成某个业务,对我来说目标比较简单,我就想直接提个提案再解决。

他说:“不行,小邱,年轻人不要太冲动。”他其实是不断的在曲线地柔和地来促成这件事情,而不是直接的把这件事情做到底。我一开始觉得他有点磨叽,我说你啥事不能直来直去,像硬汉一样的工作。后来我工作一段时间发现,直线并不一定是最有效的路径,有时候你需要一些曲线。

池老师:是的,在平坦的道路上曲折前行。我们可以开始进入下一个话题了。

2.产品经理和工程师之间的思维差异在哪里?他们想问题的角度、方式、出发点、立场等等有些什么不同?

池老师:两者当然是不同的。作为一个产品经理,他更多的会去关注产品的增长和交互,包括他自己设计的一些功能,能不能为产品带来更好的销售或者转化等等,还有产品的验收。

技术人员的关注点其实也在这些方面,一方面他实际上也会有产品经理的感觉,另外一方面,他主要会关注时间,然后技术实现,然后整个产品的稳定性,并且做这个功能会不会影响其他特征和开发进度等等。好的技术人员会比较看中承诺的时间,比如你说多长时间能做出来,希望我在这个时间段做出来,如果我承诺的话,那我是必须要去做的,这也是一个好的研发人员的素质,这些方面就会有些地方需要去平衡。

邱岳:我之前也有在专栏的一篇文章中提到过,我观察的产品经理,他们的工作偏前。在产品需求还没有形成的时候,他更可能考虑的是为什么要做,他们分析市场规模、竞争对手、用户,以及所有的商业逻辑和来龙去脉,他可能会在这个方面花费大量的精力,最终产生的东西是个 PRD,表明他希望产品做成什么样子,而 PRD 有时不会包含太多为什么做这件事的内容。

但工程师是从 PRD 开始,也就是从把产品做成什么样子开始,更可能考虑的是如何实现需求,比如说我的表结构设计成什么样子、我的链路怎么设计、服务器要多少台、怎样保证它的安全、保证产品稳定等等。

所以在这里产品经理和开发人会有个很大的远离,产品经理可能会觉得,我前期做了这么多的工作,最后整合出来,你天天说这个东西要做很久,因为产品经理不会理解工程师实现这些东西在背后要花费多少代价。他可能觉得不就适配个 IE 浏览器,你怎么会考虑说不安全,或者不稳定等等这么多因素。

那对于工程师,他可能不会看到产品经理在前期大量的准备工作,比如市场调研、经历调研,做的商业逻辑分析也好,他可能只是看到了 PRD,再加上很多产品经理写的 PRD 确实比较简陋,他就会说产品经理根本就不知道我们背后需要花多少精力来做这个事情,你只是说两几句话就走了,还天天埋怨我们做得慢。我觉得是两种角色所看到的范围不一样,导致他们的立场和对产品的判断不一样,从而导致了冲突。

我觉得解决这种问题比较好的方法就是,产品经理尽量往开发人的立场靠一靠,尽量能了解一下兄弟们把你写出的 PRD 实现要花多大的代价。而对于工程师,从 PRD 往前走一走,看看你为什么要做这个东西。比如做个分享功能,你为什么要做分享,你的商业目的是什么?用户目的是什么?你希望从分享里得到什么东西?剩下都在环境里,而不是只看 PRD,这样可以解决产品经理和开发之间的一些误会导致。

池老师:比如说产品经理可能花三天的时间,设计出了一个需求,然后把它转化成 PRD,研发人员可能需要三个月,或者三周去完成,这个时间的差距是比较大的,需要双方去填平这个鸿沟。

另外我觉得相互理解很重要,产品经理就是做这个事情,然后研发人相对来说实际更专注一点。接到一个需求,那我可能就要很长时间就要花在这个需求上边,而产品经理是应该做迭代工作,因为他不只是做出一个 PRD 以后就坐着等,他还可以做很多工作,比如说去协调设计资源,或者跟研发人员沟通业务逻辑,然后细化自己的设计,以及协调业务方的资源等等。

这些做完后,就可以迭代下一个产品的特性了,当下个产品特性设计完了,研发人员这边正好把产品开发得也差不多了,再交给测试人员,这时候研发人员就可以迭代下一个产品特性了。实际上目前这个阶段,国内还是相对比较依赖产品经理的。

3.不懂技术也可以当产品经理吗?是的,但是懂一点会更好

邱岳:我讲一下我对这个问题的看法,一方面我算是个技术出身的产品经理,另一方面我也跟很多技术背景或者不是技术背景的产品经理合作过,我在这个问题上的观点发生过摇摆。最开始我以为产品经理不需要懂技术。但我最近的观点发生了一些变化,开始倾向于产品经理或许懂一点技术会更好。

就像你说的,了解了一个东西的可行性和潜力,或者了解了一件事情有可能付出代价的时候,他直观的判断有可能会比较准确,这是一个产品经理很重要的能力,不需要用脑子去想,只是下意识地去捕捉到这件事情可行或者不可行?这个方向正确或者不正确?有多大的风险?

但最近这几年,我发现懂技术会成为一个弊端或者障碍,因为你自以为懂的时候,这个技术已经发展到很先进的地方,你以为不能实现的东西可能很早就能实现了,而这时候你误以为对技术的了解,给予对一个产品可行性或者成本的判断产生了偏差。这时懂技术反倒成为影响产品经理设计产品的一个障碍。

池老师:其实产品经理确实需要懂技术,但不能一直固守在一个陈旧的知识区域里面,不能用这些东西去跟工程师沟通。工程师他们是真正干活的人,他们一直在用实际的东西去做产品,而且他们属于特别喜欢追新的人,整天研究新东西。

所以作为产品经理,首先你要真懂,其次不能总是沉浸在自己以前的知识区域。当年我是写嵌入式的,嵌入式你懂吗?你老跟人谈这个不行,你也得跟上时代。

另外,产品经理还需要尊重工程师的意见,他们有自己的判断,但这种判断只是更好地去帮助他们和工程师沟通。如果工程师说,这个功能只能要两周的时间才能完成,我觉得还是要尊重他们的意见。

另外,还是要学会分析,工程师们会觉得,有些东西很难,你懂技术,你可以让他说说难在哪。如果他跟你说完了,你觉得的确很难。工程师在年轻的时候,也许是新手,或者说初级的工程师,他都会过于乐观,我的经验基本上是这样:新手会过于乐观。你给他一个功能,他说:“一星期保证给你搞定”,这时候你需要按照两星期去估。

邱岳:产品经理经常会觉得,这个问题很简单呀,怎么实现我不管,反正明天上线。上联是“这个其实很简单”,下联是“怎么实现我不管”,横批是“明天上线”。所以这个问题,我们两人的观点综合一下就是产品经理需要懂技术,但更好的呢,是需要懂工程师,然后尊重和相信工程师,给他加油打气。

池老师:还是要给他一些压力。

邱岳:这都是套路。刚刚池老师也说过,在做 Readhub 产品,因为我也是人工智能领域的初学者,不懂算法。我确实在一定的时间内,跟极客工程师、极客时间专栏,学到了很多跟人工智能相关的知识,我对于人工智能这个领域的理解,是做 AI 的产品经理是一定要去懂算法。

4.在人工智能时代,产品经理应该怎么去做?

邱岳:我觉得做 AI 的产品经理,是需要懂算法的。当然不是让你详细了解整个数学公式的推理过程,而是你要知道算法的大概原理是什么、能用算法做什么事情、能大概的了解算法的天花板在哪里。产品经理要做得事情是通过对业务流程的调整,保证你的产品在算法不达到 100 分的情况下充分发挥作用。

这句话什么意思?很多时候,大家做 AI 的产品会给算法提出个不切实际的要求,比如在一段文字里面识别出哪个词是人名,哪个词是地名,哪个词是产品名。你可能设计个产品,要求算法必须达到百分之百,也可能一百分的 F 值,百分之百的召回和百分之百的准确,在这个前提你的程序才能运转,那么你是永远没有办法交付程序的,因为所有人工智能的算法都不会达到满分。

在目前的情况下,产品经理应该了解算法的瓶颈和天花板在哪里,不要试图挑战这个极限,而是学会与这个极限相处,所以说产品经理至少粗浅地了解算法原理,以及一些相关的东西。

池老师:对于这个问题,我觉得二爷还是比较有发言权的,他在专栏里面有两篇文章专门了介绍 AI 产品经理的经验。一个 Readhub 看起来似乎很简单,好像一下午就能做出来,其实你看到的只是冰山一角,下面有各种自然语言处理技术、算法、聚合等复杂技术。

5.产品经理和研发,如何规划自己的职业规划?

邱岳:我先发表一下观点。我觉得作为一个技术工程师,首先要养成自己的基本功。我所见到的优秀工程师,并不会因为特别好的掌握一门工具而变成优秀的工程师,他们都有扎实的基本功,才能在发展的洪流里面快速地倒转腾挪,才可以适应整个行业的发展,所以能成为一个很好的工程师。

另外一点,对于一个优秀的工程师,你的发展路径很重要,当你能够写出足够好的代码,见过足够多的问题,然后能把他们修好,可以做很稳固、很好的架构之后,你去接触业务,然后就可以负责一点产品经理的东西,或者负责一点业务的东西,然后不断的向上发展。

从产品经理的角度讲,更重要的是修炼自己的人品,要把很多东西抛开,从实现、技术、产品去看,去理解人群等等,你可以把自己对世界和市场的一些认识,变成一个实实在在的产品,让它改变的人们的生活或者三观,这个是产品经理应该去追求的东西,或者是我蛮想追求的一个东西。我说完了,你对这两个角色的职业规划有什么建议?

池建强:你说的比较虚。我觉得产品经理,实际上应该分两个层次去说。第一个是在职场里面,产品经理在一个公司工作,是要用产品去说话的。他不是靠管人,或者说懂业务等,实际上不管他再怎样懂业务,都得把他的业务和人员展现出来。例如,你做了一个极客时间,这就是你的标签。如果成功了,这个成功产品的标签就永远会贴在你产品人的身上,这是非常重要的。

第二,关于职业路径,我觉得在一个公司里面,产品经理可以一直往上升,从产品助理到产品经理,然后到产品总监。公司的产品线多的情况下,你可能会分管一些产品线,也可能要统管一些产品线,产品 VP 等等一些比较高的水平上面。

如果作为技术人,他的职业路径比产品经理丰富一点,有时候我们觉得技术人员路径会更单纯一点,产品经理做了好多年再转技术,这个不是特别合适的。像二爷这样的“天才”,现在转技术还来得及,而像大部分的普通人转技术是来不及的,但技术人员去转产品经理是有可能的,因为这样的成功案例是有的,有些还特别成功。

技术人员有两条路,一是深入地去做技术,当然技术要和业务相支撑,就是说用最恰当的技术去完成最好的业务,另一条路是往产品方向或者业务方向去转,他还可以去布道、分享,包括去技术社区做一些事情,因此技术人比产品经理多一条路:我可以一直做技术人,也可以做产品经理。

这是从职场路径上大概划分,如果你再高一个层次的话,不管是产品经理还是技术人你都可以去创办一家公司。我原来是个产品经理,那我出来创业,做了一个很好的产品,这时候可能要有很好的 CTO、创业伙伴跟我一起支撑;我是个技术人,我也可以出来创业做技术产品,比如做一款传统的 APP 等,那我可能就要和产品、商务等地方做配合,所以从更高层次上讲,每个人都可以去创业。