产品经理与程序员段子都是从哪来的

业界 作者:CSDN 2021-02-22 23:50:49 阅读:55
作者 | 躬自听   责编 | 张文
出品 | CSDN(ID:CSDNnews)

在互联网的时代,产品经理和程序员无疑是这个时代里出镜率最高的两个两个职业,这两个职业之间的互怼,扯皮与冲突,正是流传于各种社区的职场话题与段子中最为常见的。比如

我司程序员和产品经理打架,公司给出的处理规则是,要么两人都辞职,要么就牵手一下午。于是... ....

“我们保证不改需求了!”“你们立字据!”

...


工作交流如此频繁的两个岗位之间出现各种故事都是正常的,但稍微熟悉这两个岗位工作的人都知道,需求能否实现,能否如期交付,需求能否不再变化,其实是这两个职位之间各种故事与争端的交织点。

在这篇文章里,我们想尝试着思考一下,这些交织点源头在哪里,而这两个岗位在软件项目中的各种日常,是否又是有必要的?这些日常是否是注定的呢?


产品经理和程序员职业区别


我们有必要重新审视一下产品经理和程序员这两个职位,他们在这个时代都具备着怎样的技能,有着怎样的认知。

对于程序员来说,他们的技能似乎太好定义出来了,只要“会写代码”就OK了,当然根据程序员的水平不同可以划分成菜鸟和大神,但是必要的条件真的就只是“会写代码”而已。而对于产品经理来说,技能的准备似乎就更为简单了,因为“人人都是产品经理”,所以似乎技能上的壁垒对于产品经理几乎是没有的,当然,在招聘的职位描述里,我们往往还会补充上“具有良好的沟通能力”以及“对互联网产品有着深入的思考”等等。

无论是产品经理还是程序员,似乎在合作推进软件项目这件事情上,除了招聘启事上可能写过的“具有良好的沟通能力和协作精神”之外,一切就只能靠着从常识与基础教育之中获得的感悟了。

“需求”生产流水线


回想一下产品经理与程序员的日常,我们会发现,大家总是围绕着“需求”在推进事情,产品经理要把“需求”交给程序员,而程序员则是要写个“需求”,之后又会把“需求”提交测试。产品经理与程序员,其实就是这个把需求转化为产品的生产线上,最为核心的两个零件。

读到上面,也许你会发现,这里给软件开发偷偷的加上了一个类比,也就是生产线上的生产流程。而这个类比恰恰是我们所有寻找的,产品经理与程序员之间各种故事与争端的源头。

软件与互联网的产业虽然没有了工业的隐喻中机器的轰鸣和机油的气味,但是却也从未脱离过工业潜移默化的影响。这种工业化的痕迹比比皆是 ,比如在软件运行的正式环境被我们称为“生产环境”(Production Environment);如今美国众多科技巨头的数据中心则是在19世纪美国的第一条横跨美洲大陆的铁路(Pacific Railroad)沿线修建的;无论研发还是产品,纷纷求职进入“大厂”之后则被称为一颗“螺丝钉”;“上线”、“下线”等软件项目中常用语都是工业时代的馈赠。

软件业是一个非常年轻的领域,随着互联网的繁荣和普及,更是让这个领域尚未长大就要面临如潮水般涌来的需求和问题。面对软件项目,当我们无所适从时,成熟高效的工业生产正是最合适的参考,我们自然而然的就会把工业生产的过程类比到软件的开发过程,当然也就不约而同的把工业生产线在脑海中的共同印象变成了对于软件开发过程的认知,毕竟,像流水生产线上一排排的产品一样交付的软件是一件多么令人期待的事情啊。在这个类比和认知的作用下,软件开发部门就变成了生产软件产品的流水生产线。

流水生产线的类比,正是我们对软件开发的基础认知,今天的企业在推进软件开发时,如何对部门进行划分,如何对职责进行界定,如何分配每个角色的任务都是在努力的把从原始需求到上线产品这整个过程流水线化。然后落地的工作,就是顺着这个流水线的方向把整个项目拆解成不同的工序,分工给不同的角色,当然既然大家都是在做软件,除了业务本身的差别之外,其他的工序和角色都是基本相似的。这些相似的角色缩减到最简单的版本,就是产品经理和程序员了。

在流水生产线的思维模型里,我们认为可以把产品经理和程序员的工作拆解开,把产品经理的完成的东西传送给程序员,然后程序员完成的东西再给产品经理,如此来回流动,就生产出了最终的交付产品。

一个可以高效运转的生产流水线,各个环节之间需要尽量减少耦合,换句话说,从前一环节拿到的东西需要十分可靠,不再需要退回去返工甚至重新加工,在流水生产线上一些不良品一般也是通过专门环节过滤掉。流水生产线的这种运作方式,放到了软件的开发这里,作为一个对于现实的预期时,就差的比较远了。


互相攻击与甩锅的背后


无论是产品经理交给程序员的产品原型与设计稿,还是程序员部署给产品经理的测试版本,相信是没有哪个产品经理和程序员会认为对方交给自己的东西是“可靠”的。不过无论是产品经理和程序员都期待着自己在一个平滑可靠的流水生产线上呀,而且deadline还在步步紧逼,于是这两个角色之间的互相攻击和甩锅就开始了。

软件项目的开发,与工业化生产,最大的不同点在于,即使是类似的应用场景,在实际的开发中即使不考虑开发者的不同,也会有着非常大的区别。工业时代辉煌的流水生产线所解决的问题是大规模的标准化的生产,而软件时代的核心的问题则是各种非定制化与个性化的问题。在生产线上我们很容易根据流水生产线的效率和时间计算出产能和交付的时间,而到了软件项目中合适交付甚至交付的东西到底是什么,都变成了玄学问题。当我们习惯的以流水生产线的预期参与到软件项目时,现实就会让参与的人员无所适从。


总结


应该说,面对滚滚而来信息与科技的洪流,工业化的思维是一个大过渡的起点,在前行的过程中反思,才能让我们从逐渐失配的工业化思维模式之中解绑出来,让各位产品经理和程序员远离内卷的漩涡,不再作职场段子的主角,走向新的篇章。

西北大学研发猴脸识别技术;小米造车未立项;Linux Mint 警告用户安全意识落后 | 极客头条

30 周岁的 Python,“虐”我 20 年

“误用姓名”,前哈佛教授炮轰中国学者“碰瓷”:“整件事都让人讨厌!

第一位图灵奖得主 Alan J. Perlis 的编程警句

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

关注数据与安全,洞悉企业级服务市场:http://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

图库
关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接