产品经理与开发团队(或工程团队)的关系是最重要的关系之一,所以我从开发团队开始讨论。软件开发人员是一个有趣的群体,但倘若你没有技术背景,你会感到他们往往是一群不太容易相处的人。正如早先提到的,谷歌公司之所以只聘用有计算机科学背景的产品经理,是考虑到任何缺少技术背景的产品经理将无法赢得开发团队的尊重。开发人员对缺少技术知识的人缺乏耐心,这一点完全可以理解;对他们而言,编程语言、结构、软件架构、操作系统、网络,以及硬件操作是每天工作的具体内容。每一项都有着自身的规则和限制条件,一个开发人员需要协调所有的限制条件,就像解一个多维的填字游戏,才能让产品真正地工作。出其不意和不切实际的设计是令人愤怒的。
真正出色的开发人员能凭直觉从一组软件需求中辨别出,产品在从愿景变为现实的过程中,哪里较为复杂,哪里是性能的瓶颈,还会产生其他哪些困难。之后他们也许会遇到一个此前没有发现的故障,存在于组装产品所依赖的第三方软件的许多不同构件之一,这迫使他们要么重新思考整个方法,要么下大功夫设计迂回开发方案,绕过这个难题。开发人员就像汽车修理师,仅凭引擎转动的声音就能判断出哪里的气缸盖衬垫泄露,并且在下午结束前就能拆卸并修好出故障的零件——开发人员比汽车修理师更厉害。他们是奇迹般的工作者,能将一个产品从愿景变为现实并让其看起来很简单。
如果你真的想惹恼开发人员,下面几个简单的步骤就能做到:
没有任何技术知识,也没有任何学习意愿。
描述产品需求时含糊不清。
低估任务难度并宣称不可能那么难。
从不使用产品。
毫无预兆地改变想法,并期待交付时间与原先一样。
将产品失败的责任全部推到开发团队身上。
当真想推动某事时,像个孩子一样喊叫跺脚。
宣布决定时永远不给出背景和原因。
纵使你根本不知道怎么做,仍开始对如何实施某个特性指手画脚。
使用你根本不知道什么意思的技术术语。(更甚一步:不合语法,用介词来结束句子。)
在做出一个技术决定之前从不跟开发团队的任何人商量。
跟用户承诺某些特性,事先却不曾检测一下是否可能实现。
从不跟开发团队一起庆祝产品发布或庆祝赢得用户。
另一方面,如果你想和他们很好地共事,就要努力理解他们所应对的难题,这一点大部分公司的许多人都忽视了。
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26