仓库源文站点原文


title: "如果是我来做项目经理" date: 2016-03-01T20:56:00+08:00 tags: ["思考"] draft: false

toc: true

我所理解的项目经理

以前的公司之前是没有项目经理的,只有产品经理,或者说,产品经理和项目经理是同一个人。

去年年底入职的这家公司,新项目的人员分配是这样的:包括项目经理和我在内的4个后端工程师(PHPer)都是新招来的。

从12月初到现在的3月初,不到3个月的时间(中间包括春节)项目现在进度终于接近尾声了,天天加班的日子应该算是熬到头了。

这期间我也算是对项目经理工作职位有了一定的了解,我认为一个项目的核心关键人物就是项目经理。

产品经理只负责整理需求,然后给出需求文档还有原型图。

开发工程师负责写功能模块,项目经理就是来分配任务和把控时间,可能会随身调整项目进度的人。

因为项目时间比较紧急,项目经理也参与了写代码。

<!--more-->

乔尔测试

乔尔测试是 Joel Spolsky 在2000年8月提出的一个超简单的软件团队质量测试方法(出自我春节看的《软件随想录 卷一》):

1. 你们用源码管理系统吗?
2. 你们能一键编译么?
3. 你们做每日编译么?
4. 你们有bug数据库么?
5. 你们在写新代码前修改以前的bug吗?
6. 你们的进度表是最新的么?
7. 你们有软件规格说明书么?
8. 程序员的工作环境安静吗?
9. 你们使用了能买到的最好工具吗?
10. 你们有测试人员吗?
11. 你们面试时会要求应聘人员写代码吗?
12. 你们做过走廊可用性测试吗?

这篇文章距离现在已经快有16年了,但是有几条我认为对现在依然有用。(在这里我不得不佩服作者的思想,中文的世界真是太落后了)

这个测试不一定是100%有效,但是确实能看出一些情况。按照这三个月的项目经验,让我来一一回答这个他的问题:

你们用源码管理系统吗?

我们用的是 git。这个算通过了,但是比较坑爹的是团队里面不是每个人都会 git,但是身为一个项目经理你一定要玩转 git。

你们能一键编译么?

我们是 PHP,没有编译这一说,但是按照现在的这个尿性,我们肯定是不会一键 XX 的。

你们做每日编译么?

也没有这一说,但是我会每天下班之前把最新的代码 push 上去。

你们有bug数据库么?

有,用的是明道,公司一直在用这个,内部搭建的,凑合着用吧。

你们在写新代码前修改以前的 bug 吗?

不修改,我们都是先写功能最后在统一测试。但是现在是一个特殊时期,因为现在项目是从0到1的过程,以后肯定会先修改以前的 bug 在写新代码的。

你们的进度表是最新的么?

这个我认为是最坑爹的了,刚开始项目经理用软件画甘特图规划项目来着,但是真正开始写项目的时候,都没按照那个来,而且他画那个图我只 在我们开会的时候看过一次。所以我们从开始写代码之后就没有什么项目进度表了,也有可能项目经理自己有一份文档在更新吧,反正项目组的其他 成员是不知道项目进度的,也不知道什么功能做了什么功能没做,只知道个大概。

技术总监也老是在群里催进度啊。

你们有软件规格说明书么?

这个还是靠新来的产品总监给力,写了比较详细的需求文档。大部分功能都写了,也算比较详细,应该有80%了。

说实话这算是第一次看到需求文档的详细设计,之前的产品经理能给你画原型就不错了。

程序员的工作环境安静吗?

这个还算可以吧,办公室是大客厅,上班的时候自己待上耳机基本上就可以集中精力了,当然肯定是比不上晚上加班的安静。

你们使用了能买到的最好工具吗?

公司 Mac 都不给配置,双显示器都没有,主机配置倒是还可以,只能说一般,软件就不说了,在中国大家都懂的。

你们有测试人员吗?

这个有,但是都是功能性的测试,压力测试什么的还是考自己吧。

你们面试时会要求应聘人员写代码吗?

这个我们公司倒是没有,其实我也比较怕面试写代码,因为平常考 IDE 写代码依赖性太强了,很多东西记不住。

你们做过走廊可用性测试吗?

走廊可用性测试是指,你随便从走廊抓过来一个路人,然后要求他们试用你刚写的程序。如果你这样测试了5个人,你能发现产品在易用性方面95%的问题。

答案是没有,但是公司老板对交互这块倒是很看重。

项目遇到的问题

如果我来做项目经理/产品经理

以上就写这么多吧,最后送给大家一句乔布斯的名言:「Stay hungry, stay foolish.」