最近看了下产品经理的书。聊下感受。
在开发的职业生命周期中,包含码农,产品经理,项目经理,老板。现在站在码农这个角度看世界,好像看的不是很清楚,就用古代战争来比喻下软件开发吧。
程序员相当于士兵,开发技术相当于格斗术,身法。程序员需要的是技术实力,士兵需要的是格斗术,在战场上要能干掉敌人,保护好自己,并取得战斗的胜利。
产品经理相当于谋士。谋士需要出谋划策,需要分析敌我双方的实力,需要给将军以建议。产品经理,需要代表用户,给开发提需求,让开发做什么,不做什么,满足用户需求。
项目经理相当于将军。将军统筹全局,对战争的结果负责,保障粮草供应,在士兵一定的情况下,保证战争胜利,提振士兵士气,上,对皇帝负责,下对士兵负责,并听取谋士的建议。项目经理在资源一定的情况下,在允许的时间内结束项目,上对公司领导层负责,下对程序员负责,并听取产品经理的建议。
一个软件系统的开发, 就像一场战争。
将军站在山顶上,纵观全局,怎么进攻,怎么打,往哪里打,什么时候进攻,什么时候撤退,这些都只有将军知道,他并不需要下场亲自作战。
作为士兵,看信号旗就好,负责自己身边的敌人,战胜对方就好。
作为谋士,就要在平时研究敌方,研究敌方将领性格特点,士兵战斗力,地形等,然后给将军提建议。
再看下士兵的职业发展。
拿破仑说,不想当将军的士兵,不是好士兵。不想当项目经理的码农,也不是好码农。
作为士兵,首先要格斗术好,能打败敌人,立军功后,就可以晋升为小队队长。作为小队长,就要有打法,组织人员,编排队形上战场,慢慢成长为大将军,指挥千军万马。没有战斗经验的将军,比如说赵括,只会纸上谈兵。当然将军也懂谋士。
那么作为码农,首先要写过几年代码,经历过各种复杂系统,然后这些经验让他成为项目经理,带领团队完成任务。
结论:
作为码农,不能一味的只知道写代码,还要想想项目经理做的事,学一点,然后,在合适的时候,接受项目经理,去做更大的事。