奶奶个腿!来了个40岁的项目经理,给人整自闭了
我开发的第一个正式的系统,是我做得最难受的一个系统,难受的地方,来自项目经理。
第一个项目
第一个正式的开发任务,是在我正式参加工作的第二周接到的,公司准备做一个内部的考勤管理系统。
在这之前,我只做过毕业设计之类的小项目,开发模式基本是:自己提需求,自己完成。
考勤系统,算是第一个正式的、有用户使用的系统。
功能大致包括考勤、请假、工资结算、各种内部的报表功能...
项目的人员配备:1个项目经理、2个中级开发、2个实习生,我就是其中的实习生之一。
由于是第一个项目,当时经验还十分欠缺,连“业务”二字是什么意思都搞不明白,项目用到的技术栈也不熟悉(即便在这之前给了一周的时间给新人做培训)。
并且没有前端开发人员,所以前端代码也需要自己写,一时间貌似要学很多的东西,压力还是挺大的。
最开始是一名中级开发带着我做,相当于找了个“师傅”带带,他会给我分配一些简单的开发任务,很多不明白的地方他都会给我讲,所以虽然感觉到比较艰难,但也不是扛不住。
但是情况在一个月后发生了变化,随着工期越来越紧,大家工作量都开始加大。
很多业务和设计上的问题,这位中级开发也不清楚,就让我直接去对接项目经理,直接和负责人沟通。
由于不是核心项目,公司在人员配比上没有安排产品经理,所以系统界面风格、操作流程,全都是项目经理一个人负责把控。
当实习生直面项目经理的时候,问题就出现了... ...
我听不懂他在说啥
项目经理大概有四十岁左右,看上去比较严肃,据说以前是做C++的,后来才转的Java,从事开发很多年了。
他给我分配任务的方式,和之前带我的“师傅”,就有些不一样。
每次我听他给我讲完之后,我基本不知道该怎么动手。
在这之前,“师傅”会给我讲,这个功能需要做哪几个页面,可参考哪里的功能、需要有增删改、还需要加几个xx功能的弹框,大概需要用到哪些表。
听完这些,我就能自己鼓捣出一个大概的功能雏形,完成之后再找“师傅”看一看,不对的地方再修改,完全可以正常推进工作。
而项目经理就讲得粗糙一些,他会给我讲:这个功能未来谁会使用、需求是谁提出来的、最后要达到什么效果,基本上到这里就结束了。
用到的表,我需要自己根据文档、数据库、相关功能,去连蒙带猜自己找,界面功能应该是怎样的操作流程也不清楚,只能根据系统的整体风格,按照自己的想法来做。
通常一个功能,需要前前后后调整很多次,开发起来非常难受。
我印象非常深刻的一次是,当时遇到一个不清楚的问题:界面上某个内容输入到底是用下拉框
还是输入框
?如果是下拉框,相关参数我应该从哪里获取?
我就去询问项目经理,这位老大哥听完我的问题之后,就开始给我讲这个需求是谁提的,这个功能是做什么用的,相关联的功能大概有哪些,最终要方便使用人员达到什么目的...
一通讲述下来,二十分钟过去了,我回到工位上的时候,脑子都是蒙的:他给我讲的啥?咋没听懂?xxx又是一个什么新的概念?
本来我已经知道那个功能应该怎么做了,听他一番话之后,我突然不明白他希望我做些什么。
他给我讲那些内容,对于我的开发工作有帮助吗?
而且,我只想问一下,界面上如果用下拉框,那么下拉框的数据从哪里获取。
他完全没有回答我,我去问了个寂寞。
是不是我的理解能力有些问题?我忍不住开始怀疑自己的理解能力。
不止我听不懂
这时候,我把困惑给另一个实习生讲了一下,他就坐在我旁边,我俩交流很多。
“头疼,我之前也问了xx,也听不懂他在说什么,给我扯一大堆。”他这样回答我。
我当时松了一口气,貌似... 不是我的问题呀。
后来这个系统缝缝补补、修修改改,折腾了好几个月。
最后连带我的“师傅”,也开始抱怨难搞呀。
那段时间,几乎就是靠熬,硬撑过去的。
大家在一个没有做到把控全局的项目经理的带领下,都感觉到了艰难,系统应该怎么做,似乎他也不太清楚。
需求没有理清楚、操作流程没有想清楚、给下面的成员讲不清楚...
这就导致了开发时间的大量浪费,返工很多。
这就是我印象里,做的第一个系统,可以说非常难受了。
其实这位老大哥只是不怎么会项目管理,他自己干活还是非常多的,一点都不偷懒,但就是没有把这个小项目给统筹好。
这件事给我的启发是:除了提升硬实力,软技能也不容忽视,别只知道埋头工作,也要抽时间补一补自己的短板呀。
好啦,今天就唠到这里,咱们下期见~
来源:了不起的程序员(ID:great_developer)