华为在这三十年的发展中,从开始的“炮轰华为”到现在的“支持华为”,一个深深触动我的认知:“质量,是客户最基本的需求,因为它‘天经地义’、‘不言而喻’的性质。因此,它往往是客户永远不会拿来谈判的需求。但是,如果基本的质量关切得不到保障,客户最基本的需求得不到满足,则其它一切无从谈起。” 华为现在的产品和解决方案已经在 170 多个国家安全稳定运行,并因此积累和赢得了全球数万客户的信任。
华为现阶段开始注重软件研发,追求打造可信的高质量产品,信中这一句“在确保可信的前提下,要在性能、功能、扩展性等方面做好权衡;慎重地定义我们的模块与接口,真正做到高内聚与低耦合;我们要遵循权限和攻击面最小化等安全设计原则,科学设计模块之间的隔离与接口,提升安全性。”我们平时经常在课本或者教材书上看到,但是从毕业的师哥和师姐那里听到的都是他们所在的公司很少关注这些,老师们上课也和我们说过,一般的中性和小型公司都是以结果为主,公司高层一般在乎的都是什么时候拿到产品,而不是产品开发的过程,一般只有大公司会强调软件研发的规范。软件工程从出现到现在已经很成熟了,从任何一个软件的需求到最后的交付,都肯定会有一个适合的流程,只要按照这个流程就能开发出理论上完美的软件,但是人本身就是一种变量,因此完美的软件从未被研发出。
软件开发最重要的还是遵循规范,正如信中这一句“我们要从最基础的编码质量做起,视高质量代码为尊严和个人声誉。代码就像是高楼大厦的一砖一瓦,没有高质量的代码,可信的产品就是空中楼阁。我们要优化并遵循公司各种编程规范,遵从架构与设计原则,熟练使用各种编程库和API,编写出简洁、规范、可读性强、健壮安全的代码。”充分的说明了规范行在软件开发中的重要性。正如人们常说的一句话‘没有规矩,不成方圆’,软件开发也是如此,我们只有严格遵循相应的规范,才能开发出满足客户需求的软件。软件失败的原因85%是人为因素,客户、项目经理、需求分析师、程序员等都是软件研发中的重要组成部分,只要有任意一部分没有按照规范操作,都会增加软件研发的复杂性,从而降低软件的安全性,最后研发的软件不满足客户的需求被拒收。
进行提升软件工程能力与实践的变革的公司并不少,但是很少有能够进行实际行动的,很多都是在文字上进行变革,很少落到实处,从信中这一句“由轮值董事长徐直军总负责,公司初始投入20亿美元,计划用5年时间,在ICT基础设施领域实现为客户打造可信的高质量产品的目标。”可以看出,华为是用实际行动来进行软件工程能力与实践的变革。空头话谁都会说,但是真正能做到的公司只是很少一部分,最终成功的也就是这部分真正进行变革的公司。
读完这封信后,在信中发现自己很多的不足正如信中所描述的一样,以后需要加强自身硬实力,严格按照正确的软件工程规范来学习、写代码等。等我毕业以后,刚开始可能也会和师哥师姐一样,进入的公司不要求规范,但是自己并不能和他们一样,要严格的要求自己,只有这样做,才能增加自己的资本,在将来面适大公司的时候给自己增加更多的机会。
--
FROM 106.121.10.*