代码改变世界

如何提高生产力(二)、软件的开发与采购

2016-10-11 10:37  GPS视频平台产品经理  阅读(1622)  评论(2编辑  收藏  举报

随着薪酬上升、劳动力人口萎缩以及文化变迁,公司利用廉价并卖力工作的员工获得优势的日子已经过去了。对于工厂制造企业连招聘一个技工都是很困难的事情,而软件企业招聘一个熟练技术的程序员更是很难。

人工成本的上升已经让行业感受到了很大的压力,制造企业的做法一般是:

1.将工厂迁往中国内地和东南亚等地;

2.引进先进自动化生产线,减少用工,采用机器人;

3.将非核心零部件交付第三方工厂采购,这样可以降低员工人数,提高生产效率,降低整个产品的生产成本;

4.对业务进行重构,将模块业务通过ODM的方式打包交给第三方工厂生产,自己主导产品设计、市场营销和用户体验;

而对于软件企业,还是停留在无奈抱怨发牢骚的阶段,离职多,招人难,员工要钱高不出活,眼睁睁的看着企业低效率高成本的运作,制造企业还可以升级生产线,用机器人等来提高自动化程度,软件公司却不能用机器人来替代程序员编程,也需要未来有可能。软件企业要想降低成本,唯有提高生产力,在提高软件质量的同时,还能缩短软件交付的时间,和时间赛跑,才能制胜。

很多企业虽然不是软件企业,但是有软件开发和团队,他们的企业是通过软件团队开发一款软件产品,然后再通过运营团队来运营获取利润的,简单的两步棋,第一步没走完,就死掉了,为什么?一支军队携带的粮草供应是有限的,在长途奔袭的情况下,如果贪恋中间一座城池,又久攻不下,就得玩完。所以不要低估软件开发的凶险,很多公司都是软件还没开发出来就结束了。

软件企业为什么一直没有应对成本上升好的办法?

1)软件企业老板总是把眼光放在薪酬上,其实项目的成本是有薪资*时间来决定了,时间才是大头,软件老板,对于软件开发效率大多没有深入研究,软件开发的周期都是拍脑袋决定的,而实际的开发周期总是温水炖青蛙一般,缓慢而坚定的一拖再拖,不以老板和客户意志为转移,为什么会这样?因为软件开发是比较特殊的抽象工作,有一个可怕的现象就是埋地雷,老板和市场压得紧了,就给你埋地雷,就是埋地雷,这个是老板们知道也不敢面对的事情,一个项目,你催的太急了,下来死任务,必须要在某年某月某日上线,那就给你买地雷,偷工减料,该是混凝土浇筑的,给你塞秸秆,先上线,后续再慢慢整改,造成任务交付的假象,我们称之为虚假交付。

2)由于没有企业制造的概念,没有采购意识,所有的工作都是从无到有的开发,所有的弯路都要从头至尾的摸索,成本自然高。关键是大家都习以为常,潜意识的认为向外采购,是增加了企业的开支,即使是买包卫生纸,都觉得增加了成本,而由于自己开发增加了开发周期,加大了项目成本,则没有人关心,老板对于人力递交的工资表,每个月少则几万元,多则几十万元的工资支出,都是没有任何反对意见的签字的。我们可以思考下小米手机,如果它像我们软件企业一样所有的东西都自己搞,黄花菜都凉了。

3)项目风险评估往往走形式,项目吃紧的时候就增加人手已经被证明是个愚蠢的办法,属于火上浇油添乱,现在就更加愚蠢了,因为前几年还勉强可以招到人,现在根本招不到人,临时加急招人属于痴人说梦话。但是我们仍然可以在项目会上听到有人这么说,明知道自欺欺人,领导也是没办法,总不能来个项目,对老板说做不了吧,只能硬着头皮做,后面的事再说吧。

4) 软件开发不同于工厂制造的一个因素就是预热时间长,项目虽然启动了,但是一大堆人迟迟进入不了状态,表面上很忙,实际上一行代码都没有写或者写了个Hello word,各种开会,写各种垃圾文档,ppt, 没有思路便在网上查阅各种技术文章,构思所谓的设计和技术选型,开会推倒再设计,这种低效状态能惊人的持续几个月,这几个月的人吃马喂的成本有多大,没人关心。做项目最怕犹犹豫豫,放屁一样的小事,要审批开发走流程好几周,反反复复,当断不断,拖拖拉拉,这是很可怕的,因为天上一天,地上一年,公司耽误一天的费用,也许够一个开发人员吃上一年。

所以软件企业要提高生成力,必要对于薪资*时间这个公式要花点时间进行一个深入的思考,学习制造企业,无时无刻的关注自己的生产效率。否则项目失控,则成本上升,最后就是白忙活一场,不该省钱的,不想掏钱,该控制成本的却失控了,搬石头砸自己脚。

软件企业应该通过以下手段来应对成本上升:

1)提高软件开发效率,如果交付周期缩短1/3,就可以应对薪资上涨的压力了;

2)通过模块化采购,来降低软件开发成本,缩短交付周期。

    在制造企业里,为什么要采购?

    1)有技术门槛或者含量的,自己没有能力生产的,或者生产的质量赶不上供应商的,比如三星手机,高端机的CPU芯片用的是高通骁龙820芯片,低端机用的是自家工厂生产的;

    2)没有技术门槛的,但是自己如果生产,由于没有规模效应,无法摊低成本,如饮料瓶,产品外包装等;

     软件企业的采购也是要秉持这两点,不是说没有技术门槛的,就自己搞,自己团队实在不能搞的再想办法找人开发,这种观点大错特错,很多项目经理之所以错误估计软件开发周期,就是因为觉得这个功能简单,那个功能容易,结果看上去容易简单的事情,要想做的一点毛病没有也不是三两天就能搞定的事情。要想一想自己公司为什么不用一个正式员工来天天帮你们打扫卫生? 虽然容易但是琐碎、耗费时间的事情,正好是必须要交给别人做,而你正好抽出时间来做有价值的工作。很多项目计划的技术方案都是高大上,为什么做出来的都是普普通通的?这就是因为他们没有意识到时间是有限的,团队的时间都浪费在普通功能上和天天修改这些bug的上面了,那就没有时间去做更复杂和更有创意和挑战性的工作了,这就是我说的打仗的时候长途奔袭的战略了,如果在其中一个小城池上久攻不下,后面就要完蛋。

     我以前在已经公司里做技术总监,公司仓库需要一个库存管理系统,老板非要我们开发,我说我们的开发人员,一个人一个月的工资成本至少要1万元以上,而市面上的成熟的库存管理软件只要5000元就搞定了,而且自己开发的库存管理软件,第一版是不敢直接拿来用的,如果库存统计有错误,那对于生产经营的损失,开发团队也承担不起。

     采购,其实不是网上随便抓个供应商就可以的,也不是价格越低就用谁的,我们原来做车载视频监控,车载摄像头是通过采购零件自己组装的方式生产的,外壳、机芯、电源线、铜柱等8家供应商,都是经过不断的试探,建立起来稳定而又长期的关系的,不会轻易换其他家的。软件的采购也是如此,需要寻找的是对于行业理解较深的,来建立自己长期而又稳定的关系的。很多人不理解这一点,动不动就找个外行的外包公司,这些外包公司里全是不懂行业经验的低工资的软件开发人员,你想想他们能够给你开发出来什么好的软件产品? 再说了交给外包公司开发,外包公司延期了,你能有啥办法,能去法院起诉他们吗?

     最有效率的采购和雇佣,本质上都应该是解决你的业务短板,有明显的互补作用,而不是简单的扩大的团队的规模,如果你找了个人和你一样是个不太了解行业,那他只会加大你的成本,而无助于提高生产力。行业门槛深似海,里面有很多坑,如果你不熟悉,一个坑一个坑的填,你的成本不高才怪呢?我以前的一家公司的老板就很聪明,公司当时做一个财务软件,一帮开发人员搞了几个月,进展缓慢,老板就直接从外面挖了一个专业会计人员,和开发人员直接一对一互助,这个项目做完后,那个会计人员本来是以兼职的身份,也不会编程,但后面还是被老板留下来了。

3)通过兼职或者雇佣专业人员来维持人力弹性

    制造企业如果市场需求量不大的时候,可以停掉生产线,员工放假、半薪等方式来避免空转造成的损失,软件企业可不敢。专业人员是一种稀缺资源,薪资待遇要求又非常高,我们通常招聘不到,招聘来了老板又呲牙咧嘴觉得养不起,但是我们可以通过市场化来共享资源,在有项目的时候,可以利用一下,则没有项目的时候,就不再花钱,这样保持一个较好的人力弹性,避免空转。

    软件企业通常以为兼职就是低工资半薪雇佣一个饿的要死的卑贱之人,总是想压价来维持兼职或者雇佣第三方顾问,这种方式,有水平的人,谁会给你干? 保持高弹性的准则在于重赏之下必有勇夫,你获得了高素质的技术资源,又不用五险一金的支出,避免了空转,维持了一个好的弹性,别人得到了一个好的价钱,这才是合理共赢。试想真要是有水平的人,又不缺钱,谁会和那种斤斤计较算计的企业建立稳定成熟的关系? 为什么背后有风头支持敢于烧钱的创业企业总是有大牛加入,比如锤子手机团队,小米团队有摩托罗拉、华为等牛人加盟,唯品会团队中有京东、阿里的牛人加盟,因为他们很清楚,要和时间赛跑,就不能顾及哪一点薪资钱,要想招聘到高素质的人才,不高于市场行情20%,根本找不到人。

总之:软件企业必须要像羚羊一样,每天睁开眼,就是要不断的和时间奔跑,这样才能生存下去。

如何提高生产力(一) -养成交换的习惯