记录并分享下在客栈第一次做的几点经验
首先做个自我介绍,我叫“老谭”,也被人称为“6分钟先生”,嘿嘿,这个不多说!
这两天在客栈完成了第一个开发项目,
对接近20天的工作做个总结,
顺便跟大家分享下。
工作时间
因为早上有时候要送女儿上幼儿园,
或者早起去打篮球,
回来冲个凉、吃个早餐啥的,
一般工作时间跟平常上班工作时间类似:
- 早上9:00 - 上午11:30
- 下午2:00 - 下午6:00 (如果下午去接小朋友,下午4:00多休息到晚上)
- 晚上9:00 - 晚上11:00 (看项目进度,如果紧了,晚上也会花一两个小时,如果松了,就休息)
个人体会:
在家办公,自己的时间把握要非常好,因为不定会有一些事情打断。
另外,无论是不是在家办公,其实坚持定期锻炼都很重要,
但对于在家办公的朋友来说,这个更为重要(因为至少省下了上下班坐车的时间了,哈,不用白不用)。
远程协作工具
这里我把coding.net和tower都算在内。
到目前为止,
在第一次里用过的工具有:
- 微信 (日常信息沟通,必要时语音沟通)
- QQ (前期需求沟通时用过语音聊天)
- 程序员客栈(主要管理项目的里程碑,非最小颗粒的任务)
- tower(主要管理当前版本最小可执行的任务,把客户也拉进来好让他知晓整个过程)
- coding.net (代码托管,感觉它有在中国范围内代替github的潜力)
- 客户提供的一台linux服务器(由于负责的是后端开发,部署了git更新代码,尽量做到持续发布)
个人体会:
我习惯把客栈、tower、coding在浏览器中同时打开,
并常年不关电脑和浏览器,
这样有了新的进度,顺手就去这几个更新下进度(这样能尽快知会到客户和客栈平台)。
新的进度还会通过微信截图的方式,及时发到客户的讨论组里,
因为有时候客户也不一定开了客栈和tower。
项目需求沟通和确认
虽然在项目开始的时候,已经尽可能地跟客户一起,
把每一个细节都沟通确认清楚,
并明确自己理解了客户所描述的,
但在做的过程中还是发现自己漏掉了一两个地方(还好不是很大的遗漏,哈)。
如果在前期的需求沟通中做好这么几点,
可以减小后期项目的风险:
- 在接手项目的时候,把客户的需求文档下载下来,仔细阅读,并尝试去理解每一个细节;不明确的先一一记录下来在沟通中逐一明确;
- 督促客户提供需求的时候尽可能用图形和流程图来描述,纯文字的容易产生理解上的歧义;
- 需求理解差不多之后,跟客户约个时间,逐个逐个把自己的理解跟客户进行确认,并把前期不明确的点一一明确;
- 提交客栈里程碑之前,先在tower里创建项目,并把本期和后续需要做的非常具体的任务列清楚,这个一来让自己有个梳理的过程,二来也方便后续客户知晓整个开发过程;
- 根据tower中列好的详细任务,再结合项目的功能点,按照一个里程碑最长不要超过3天的规则(当然如果每天都能有可完成的里程碑那会更好),把里程碑定下来;
- 再约客户一起将里程碑和tower中的任务清单,大致过一遍;客户可能不能把握和理解每一个具体任务跟需求的对应关系,所以如果在任务名称前面加上需求里的功能点做说明,更容易让客户理解;
当然,需求的理解、任务细分、沟通和确认都需要花费一些时间,
建议客栈后续可跟客户商量,把这部分时间也酌情考虑进去。
关于持续发布
这一点目前有很多相关的工具可以用上,
我暂时是用git手动去发布,
在本地开发、测试好了,
然后到客户的开发机上用git pull一下。
持续发布个人觉得,即便是上线的产品,
能做到的话,也尽可能地做到,
这个不单单是可以让客户和老板感知到你所做的工作有产出,
更重要的是让产品尽快推向市场。