国内一些大型软件企业现状

熊先生 电商 703 次浏览 国内一些大型软件企业现状已关闭评论

过去,国内有一些大型系统集成的软件企业,早在10年前他们做的主要是商业智能,现在转向所谓高上大的大数据产业。一般研发中心都在北京等一线城市,在各个省市有自己的分公司或项目组。当然他们都通过了行业相关资质。如CMMI-5,ISO9000,但是实际上只是个表面工作,都可以用钱买的,只是为了资质。在各省市的项目组仍然是混乱的软件过程,从总公司拿一套系统的源代码过来,修修改改,就强行给客户上系统,客户不清楚细节,后面发现了许多BUGS,又开始疯狂改BUGS,最后变成项目到处扑火。这和软件危机差不多了。试问如果他们按CMMI5,ISO9000标准来做项目吗?每个项目只要能按CMMI2过程就已经算不错了。CMMI过程其实让我们软件开发过程有章可循,防止变成软件小作坊。现在他们还是这样子。其实可以看看软件项目成功之要素中小型软件企业开发现状与项目管理现状

Research-Development_mini

      技术含量低。而这类系统集成软件公司本质来说,除了一线城市的研发中心,其它分公司没有什么技术含量可言,不会对软件研发精益求精。另一方面,由于BI类系统做到后面,主要是做业务,什么KPI之类的都是取决于熟悉业务体系才能制定的。技术到这时只是一个工具而已,并且已经有一些总部研发出来的工具,项目领导只关注是快速完成项目,不关心技术,不关心团队成员的技术成长。例如,我们经常写SQL语句,都知道SQL语句不同的写法将有不同的性能。他们不会关注这一点儿的。早在10年前,笔者就已经开始关注SQL语句与数据库的性能调优。另外,10年前就开始阅读<<解析极限编程>>,这是我们向往的软件开发模式,但回到现实这类的项目组没有用。回到那些系统集成所在各省项目组,可以说不是做软件研发,而是做”工程”。有一些项目实施现场真的很艰苦的,用报纸铺地上睡觉为了赶项目工期,真是IT民工的体验。对于无知才毕业的大学生,以为这就是做软件研发的工作,IT加班就是这样的,在这样场景下,有的人在未来几年会离开的这个行业。回顾一下,实际上你参与开发软件或系统被越多的人使用,越有挑战性,越有技术含量。系统用户群体越庞大,越有价值。这就是为什么互联网公司技术要强于一般的公司。先不谈高精尖技术,你真的是在做软件研发工作吗?

      加班多。这类公司文化中带着加班的文化,并且是低效的,就是你事情做完了,也希望你留住公司,领导希望看到你在公司。当者管理层说出来时,他们还不好意思讨论。到这儿让我们联想CoolShell起<<加班与效率>>中提到的:“当一个管理者的智慧无法衡量一支团队的产出的时候,他就会把“工时”当做最后的救命稻草,死死抱住——这是他唯一听得懂的东西了。” “提高效率,并不是加人,也不是干更多的活,而是,你这么多人干出来了多少有价值的东西。”然后笔者再反思行业巨头公司微软,Google等公司为什么他们没有强制加班的文化,他们仍然能够创造价值与影响力。加班的原因比较多,大部分都是由于项目管理过程所导致, 包括售前不确定项目边界时,就把合同签订了,把项目工期确定了。请问在需求范围与边界没有确定的时候,确定工期是多么不科学的事情。本质上他们不懂项目管理,另一方面完成不顾后方支持团队艰辛,就变成了销售挖坑,技术填坑,这是一个团队吗?有人说可以敏捷开发呀,边开发边确定需求,那是边做边改模式。可参考软件开发模型与过程改进,关于项目管理可以参考项目管理的技能介绍。所以不能一味满足客户需求,因为需求是没有边界的,一味满足客户无休止的需求,整个项目完全就是亏本的。这其中包括软件研发各个环节的成本,加班的本质就转驾于技术工程师身上,所以这就所谓为加班而加班了,软件研发过程一直以来就是复杂的。加班抹杀了团队学习时间,如果你发现你一直在做重复的熟悉的工作,本质上没有什么成长,这是危险情况的,每天回顾一天你都学习到什么了,是否有持续精进。现在IT行业风云变化,团队需要花时间自我学习,不是一味血汗加班做项目。团队每个成员是否有成长。公司让员工加班不是在创造价值时,本质也是剥削的行为。员工总加班,这说明他们效率不高。效率不是每个团队各自的效率,而是整个团队对整个产品负责的共同使命,这样才会现整体的效率。没有整体的效率,只有个体的效率,最终也等于没有效率。相反,IT是个高压力的行业,只有学会工作和生活的平衡,才有可能把压力转变为活力。这些又联系到公司整个文化,看看企业创新文化与等级观念人才公司环境与企业文化吧。以人为本,方能立于不败之地。

Go