在我不算长的开发职业生涯中,曾不止一次地遇到过让我怀疑人生的项目经理。
并不是说这些项目经理能力或者人品不行。而是由于他们过度的微管理,又将开发者的工作想的太简单,常常搞得项目脱离正轨。
比如,一些经理总是爱把“不就是”三个字挂在嘴边。不就是JSON”、“不就是UI”、“不就是前后端交互”……
用“不就是”来形容任何一件事都只能显示出无知,和对团队的沟通的不重视,对问题的漠不关心。
如果都像他所说的一样,细化算法 “不就是性能调优”,异步线程管理 “不就是线程间转换”,Core Data或SQL存储管理 “不就是本地存储”。那产品还做得出来吗?
一个好点的项目经理会听听你的意愿,是否需要他参与到复杂的项目中来,甚至改变一些最初的想法,而差劲的项目经理完全不会听你的解释。
在他们眼里,实现前后端交互就好像给手机冲个电一样容易。
这是非常危险的,因为他们不尊重你的工作,也不可能留给你足够的时间。
即便你刚刚交待过需要1-3天甚至更长的时间来开发和调试,他们仍然会不时地催你完成。
如果你思考过其他行业的运转模式,你很难相信,其实这种情况只存在于科技行业。我甚至还以为我们是在创新呢!
其他行业是否会让专门学管理的人来管理团队呢?
拿我个人经历来说,在开启漫长的编程职业生涯之前,我曾当过学校业余的田径运动员、厨师、音乐人、音效师,还曾申请进入部队去做网络工程师,但由于先天心脏病被拒,后来在开始学习计算机以后,还在自行车店做过销售。所以我会根据自身经历,分析一下我接触过的这几个行业的情况。
我常用“管院经理”来称呼那些仅有管理相关的理论知识、没有行业经历的管理者。那么,在这些行业,他们能担当管理职位吗?
“管院经理”当田径队教练?——很差劲
尽管学校田径队远不及专业水准,但却让我了解到这个行业的运作模式:你很少见到没有过运动员生涯的教练。若是让“商学院经理”当教练,恐怕吃不消吧。
“管院经理”当主厨?——完全没戏
当实习厨师的时候,我由一位副厨管理。副厨,明显是有一定资质的,正因为他有着你无法达到的技术水平,才有资格去管理一个厨师团队。所以很显然,无论副厨还是主厨,必定都是厨师出身。 而要让“管院经理”管理厨师团队,是根本不可能的。
“管院经理”管理音乐创作?——很差劲
乐队尽管有管理者,但其更像是 “工作的发现者”,而不具体音乐创作的领导者。 当然还有一种情况,就是经理签约唱片公司了。这样的经理可能会是一个没有音乐背景的人(其实,舆论对于这种情况褒贬不一)。但是无论如何,“管院经理”是无法领导音乐创作的。
“管院经理”管理音效师?——可以接受
音效师的工作,或是协助音乐家、制作人和主管进行音乐创作,或是与演员、导演和制片人紧密合作来制作电影音效。
这其中,制片人(或导演)通常扮演了管理者的角色他们并不需要具备音效师相关的工作的经历(当然有则更好)。所以,让“管院经理”去管理音效师,是可以接受的。
“管院经理”管销售?——可以接受
在自行车店做销售时,我得经理就是店主。从技术角度来看,我、或是任何没有自行车运动经历的人都可以胜任这个职位。而店主是一位荷兰的骑行爱好者,在退休和开店之前一直在半职业车队骑自行车,虽然有很多自行车相关的经验,但在销售领域,这些经验并不是硬性标准。因此通常认为,“管院经理”可以去管理销售,尽管“管院经理”通常不会在销售领域求职。
“管院经理”当军官?——很有差距
我不了解部队里的情况,不过根据朋友的经历来推测的话,没有军事背景的人通常不会参与作战指挥。虽然“管院经理”可能会通过其他途径进入像五角大楼这样的机构,但是,没有实践经历一样会被人忽视。因此可以断定,让“管院经理”去管理部队,估计也会吃不消吧。
以上只是我接触过的几个行业。
其实在销售领域,一旦步入市场,即便是销售副总裁、销售团队经理,也很难谈的上“拥有实际销售经验”。
除此之外,还有一些我没有接触过的行业,诸如法律或医药,但从那些从事相关行业的亲戚朋友那里了解到:无论是让“管院经理”去管理医生、当医院院长,还是成为律师事务所合伙人都是天方夜谭。
最新的管理策略是:摒弃项目经理
为什么其他行业经理大都具备行业经验,而我们行业却不是这样呢?
在工程领域,一个没有项目经验的人绝对不能担任项目经理的角色——很抱歉用了“绝对”两字,但这确实是我们亲身经历,反复验证得出的结论! 这种经理泛滥的情况必须该终结了。
管理者宁缺毋滥
这种说法听起来很极端。但并不仅仅只有我一个人想到。Hacker news网站上就有相关的话题讨论,这些网友一致认为,使用Aha!进行项目规划加上Pivotal Tracker进行任务分解来制作项目蓝图,似乎是一套可行的方法,并且少数公司已经有过成功的先例。
Hacker news:
https://news.ycombinator.com/item?id=16434089
Aha!:
https://www.aha.io/roadmap/technology
Pivotal Tracker:
https://bug.testin.cn/landing.htm?channel=saas_tg_bdBugjp&utm_source=baidu&utm_campaign=G12&utm_content=Bug%E7%AB%9E%E5%93%81&utm_term=Pivotal%20Tracker&utm_medium=cpc
也许你可能会想“并不是所有经理都很糟糕啊”,但是,在科技行业,我所共事过的经理中,95%都是糟透了的。 同时我还有两个很有力的观点:
如果以极度糟糕作为衡量的底限,未免太低了。
我遇到的那5%稍许理想的经理,100%都具备工程项目经验。
如果用资质较高的工程师取代传统项目经理来管理团队,会不会是一个更好的选择?
这种想法,我们尝试了数十年了。问题就在于:缺乏有意愿做管理的工程师。
毕竟谁也不想一开始就被分配到管理岗位。所以,这种办法也不可行。
不过再怎么说,管理层在公司还是有一席之地的。毕竟协调不同部门、分配资源、解决冲突都需要有部门层级的管理人员。而且,我并没有低估管理层为公司带来的好处。但是在项目层面,甚至是团队层面,完美的运作是不需要他们的。
我们已经有产品经理负责传达产品需求、帮助工程师排查故障了,也有技术实力深厚的敏捷专家(Scrum masters)来协调团队的日常交流,不过 Scrum masters的职责仅限于传达信息,并提供沟通渠道。
所以我们不需要项目经理更不需要劣质的项目经理,尽管过去我们一直在重复这个错误。
是时候进行创新和改革了——摒弃项目经理。
相关网站:
https://hackernoon.com/lets-have-no-managers-instead-of-managers-with-no-engineering-experience-e8b7cd29d398
【今日机器学习概念】
Have a Great Definition