作为从事Java开发十余年的老司机,有私活也一直做的,说下我的看法和定价标准。
个人自身背景
我本人从事Java开发十余年,技术出身做到管理,所以公司开发那一套无论技术还是管理我基本上都清楚,至少大方向上面都懂。
我的团队开发,前后端框架都是我自己写的,在这个上面进行二次开发实现业务逻辑。所以你可以认为技术选型是我自己决定的。
团队介绍
因为我的项目都是采用前后端分离的方式开发。团队前端有三个人其中一个是app开发,后端我自己有时候也会参与,算上我自己后端有五个人。需求说明书制定一个人,测试一个人,美工一个人。全算上团队成员不算少。但是每个单独的项目其实没这么多人参与。
我参与的环节
我只参与项目合同签订、需求采集、设计、计划制定跟踪,偶尔会参与后端开发。这里,我想说的是合同签订、需求采集、设计、计划制定一定要参与。这里有人会说,需求采集团队有人为什么还要参与?我觉得不参与你接下来制定开发计划之前的wbs是做不好的,只有很清楚的知道需求,才能做好wbs和设计。而wbs会直接影响你给团队成员定价。
我的报价方式
我报价有两种,优先是我自己估算工作量,精确到小时。然后团队成员在所在公司上班月薪我是知道的,我就拿他们月薪除以21.5再除以8得到结果乘以1.2,就是他们给我干活的时薪。为什么要乘以1.2,因为私活都是熬夜加班,所以适当多上浮点。
如果这个报价团队成员有意见,而且最终我们沟通后达不成一致,那么我就把这个项目要他参与的东西告诉他,让他报,再看看实际情况进行沟通。直到最终达成一致。如果无法达成一致,那就换一个人做。这就是团队成员那么多的原因。
无论是我给客户的交付还是团队成员给我的交付,都是敏捷式的。付款也是按照敏捷的方式交付,对应每个交付周期也会有单独报价。
激励机制
对于开发,如果做出来的东西因为bug多导致延误工期,对应的人这个交付周期的钱会扣除30%。对于测试,如果系统上线后很多低级的bug或者没按需求实现的bug没测试出来,那么也是要扣除一些钱的。
做的比较好的,做完后会给他的总价钱再上浮10%。这些会在合同里很详细的列出来。
这么做的原因就是保证团队成员的责任心。
总结
你要保证团队成员互相不知道彼此,有问题你可以先查看再转发问题。如果他们互相能沟通,那么最终可能会给你带来麻烦,比如串通抬高报价。
你要知道整个开发过程,这样在报价的时候才不会被瞎报,做到心里有数。这点我觉得是先决条件。
严格按照交付周期进行交付,严格按照计划执行。