无知经理综合症

你的经理自己开发过网络应用程序吗?我认为这是经理人必须具备的一个相当重要的特点。就像一个初级医生会向一个自己也曾是初级医生的医生汇报工作,或者一个教师会向一个自己也曾是教师的校长汇报工作一样,一个软件开发人员也应该向一个自己也曾经历过这个过程的人汇报工作。

显然,在小型团队中(例如,小型设计公司兼做网络开发),工程经理可能并非绝对必要。如果经理们理解在必要时将决策权交给程序员的必要性,那么这种做法就会很奏效。但是,一旦规模扩大,就需要有一个结构。

诸如聘用谁、解雇谁、如何解决技术债务问题、哪些元素最需要关注等等,都需要由开发人员做出决定;此外,这些决定有时还不能以民主方式做出,因为这样做会导致委员会设计。在这种情况下,就需要工程经理。

在大型团队中,总有一名开发人员 90% 以上的时间不是在写代码。

我想更进一步说,网络工程经理不仅要有技术背景,还要有网络背景。开发 Java 应用程序的开发人员与构建 PHP 网络应用程序的开发人员可能完全不同,因此,这样的工程经理应该相应地了解这门学科,拥有一定的网络经验(尽管不一定非要使用一种特定的语言)。