厦门Y0 2019-11-02
产品经理与程序员,又双叒叕出事了!
据网传,这次是因为产品经理给程序员提了一个和五彩斑斓的黑同级别的需求,就是要求研发开发出可以根据用户手机壳的颜色来改变软件主题色的小需求,导致程序员忍无可忍。
作为公司里的“冰”与“火”,作为现实派与理想派的两大派系,如何和睦相处,已经成为互联网公司最难解决的难题。
当事情已经过去一天,我们应该冷静下来看待此类问题。
我们采访了几位程序员,看看他们是如何与产品经理沟通和生存的。一个经验丰富的程序员,不仅要懂得技术,还要懂得研究产品经理的心理,甚至懂得给产品经理设置逻辑陷阱。
▼
►程序员A和产品经理B在一家互联网公司的同一项目小组工作,为了推出用户体验更佳的产品优化版本,B向A提出需求。已知该需求并不合理,然产品经理B相当强势,问A应如何拒绝?
A. 陈述理由,直接拒绝
B. 以子之矛攻子之盾,让产品经理推翻自己
C. 寻求援助,找更具影响力的人说服
D. 被迫接受
程序员由于岗位职责所限,往往在工作中陷于被动,他们在面对产品经理时,有时并没有充分的话语权。
越来越多的公司开始重视产品和技术团队的和谐。大多数公司的绝大部分产品经理,正逐渐改进提需求的方法。但需要注意的是,需求不合理导致程序员技术资源浪费的情况仍是行业普遍现象。
勤勉而又被动的程序员,如何合理地拒绝产品经理的不正当需求?
▍首先要确定确实不能做
Blake,现年三十多岁的他出任CTO一职,在技术与产品的良好协作方面拥有自己的心得。Blake指出,每一种选项都没有错,选择哪个,要根据具体情况具体分析,但首先要确定该需求确实不能做。
他认为,以下几种情况,程序员可以合理驳回需求:
根本不可能实现的需求
不能实现还说个啥
Jason是某互联网公司的一位研发人员,他的产品经理想让系统在图像识别等功能上达到良好的准确率,帮助用户更好地使用产品,达到理想的效果。
在实际工作中,程序员有时会遇到一些技术水平难以实现的需求,比如图形处理等。实际上,此类需求在一些顶级互联网公司也无法做到最好。对于不以技术见长的公司,可以说根本不可能实现。
这个时候,程序员可以顺理成章地拒绝。
逻辑不通的需求
大胆提出质疑
产品经理:A→B→C
实际情况:A→B→D
在日常工作中,产品经理时常会预设用户使用行为,根据想当然的逻辑提出产品改进建议。但这种预设行为有可能存在逻辑不通的情况,或者即便逻辑成立,用户在使用中发生此种行为的概率却不高。这个时候,程序员可以提出质疑。
实现起来特别麻烦的需求
看上去的“小功能”实现起来并非易事
由于迭代时间的要求,产品经理时常会规定实现需求的时间。但某些需求在解决过程中非常细碎而麻烦,即便技术水平可以实现,占用的时间也远超预期。
这种情况下,如果不是特别重要,程序员可以进行商议。
投入产出比不划算的需求
如果性价比过低,可以考虑不做
Lucy是一家互联网公司的测试人员。今年8月的一天中午,为了配合正在进行的活动,产品经理临时提出一项H5需求。公司迅速投入产品、研发、测试人员协同工作,并于晚上11点上线了正式版的H5,但这款H5仅传播一个小时就于当晚零点下线。后来,大家认识到这个决定浪费了过多精力和资源。
技术人员在面对产品经理的需求时,要考虑开发需求的优先级顺序,同时注意需求是否划算和必要。如果性价比过低,可以考虑不做。
▍产品经理也有很多迫不得已
如果产品经理提出的需求确实属于不靠谱的行列,程序员可以采用以下方法应对:
1、明确指出问题
每一项需求都要经得住推敲。产品经理难免会出现思考不充分或存在疏漏的情况,这个时候,程序员要直接明确地指出存在的问题,敦促产品经理重新进行梳理。
2、强化职场沟通的能力
每一类职业都会影响从业人员的性格。由于职业特点,程序员对于技术任务的专注往往会淡化他们在职场上与人打交道的能力,比起产品经理,存在更多的被动性。因此,程序员应主动培养职场沟通的能力,以便在工作中更好地转达自己的态度和观点。
3、引入外援,一起讨论
在实际工作中,往往会出现程序员和产品经理谈不拢的情况。此种情境发生时,如果实在无法说服对方,可以多找几个人一块讨论,客观层面上将道理越辩越明,从而消除产品经理的不理解,达到自己的目的。
4、寻求leader的支持
通常情况下,大多数产品需求不仅来自产品经理,更源于公司领导的构想。但一些想法在研发人员眼中却存在明显的问题。这种情况下,如果遇上强势的产品经理,或是公司领导的意愿,程序员的意见将可能不被重视。此时,程序员可以向上级leader寻求帮助,获得支持。
5、熟悉产品经理的特点
程序员与产品经理处在不同的岗位,拥有不同的诉求,但拥有同一个目标,即做出好的产品。因此,程序员需要认识产品经理这个人,了解他做事的方式、喜好,本身的优缺点。在此基础上,遇到分歧时可以更快地明白症结,通过合适而有效的方式说服产品经理。
6、对产品经理进行“威慑”
Daisy是一家互联网公司的测试人员,她发现,在实际工作中,很多产品经理虽然考虑到了研发,常常却忽略了产品需求在测试阶段是否可行。面对这种情况的屡次发生,她开始考虑用软硬兼施的办法,遇到实在不能接受的需求,她会直言:“不要以为你很牛逼,再牛逼你就自己做!”
她认为,在某些情况下,程序员可以摆出强势的一面应对产品经理。
7、决定要做的,也要想出切实可行的办法
一项功能是否真的需要开发,有时候会有很多决定因素。最终仍然决定要做的工作,程序员应想出切实可行的办法。如若没有实现的路径,只能给出做不了的解释。
8、敢于拍板,为拒绝需求承担责任
Jack是一家公司的资深程序员,在几年的工作中,他逐渐培养出自信果敢的一面,面对不合理的需求会给出明确的理由,并表示为自己的判断和决定负责。
他认为,专业的程序员,应当做到为自己的职场行为负责,只有这样,才能在与产品经理的博弈中拥有底气。
9、必杀技:为产品经理设计逻辑陷阱
Arvin是某互联网公司的工程组长,面对不靠谱的需求,他最擅长的手法是,在与产品经理对接的过程中,利用自身逻辑思维能力强的优势,引导其掉入需求中存在的逻辑陷阱,无法自拔,从而主动放弃,推翻之前的需求。
“我是一名从事了10年开发的老程序员,最近我花了一些时间整理了一份最适合2020年学习的c/c++项目实战以及基础教程干货,这里是编程爱好者的聚集地,欢迎初学和进阶中的小伙伴。工作需要、感兴趣、为了入行、转行需要学习C/C++的伙伴可以跟我一起学习,技术大牛、学习资料助你早日成为一名优秀的程序员,希望你也能凭自己的努力,成为下一个优秀的程序员。
学习企鹅群:720168573
▍产品与程序的相爱相杀并不是没有原因
此项必杀技,是他与产品经理斗智斗勇的心得。但这项必杀技的使用前提是,确实是从技术角度不能支持的想法。
在任何一家互联网公司,优秀的产品都需要程序员和产品经理的共同协作。产品经理的工作不仅需要程序员的配合,有时更需要技术人员的匡正。
与全盘接受相比,偶尔的拒绝也有其价值。只有在这样的层面下,产品和技术,才能为实现真正好的功能做出贡献。
-END-