公司级的软件过程实践系列文章,请参见连接。
背景
现在的软件行业已经被摧毁殆尽了。现在大部分互联网公司都在跟阿里学,学习阿里的成功模式。想通过复制阿里的方式实现自己的成功。所以,真个行业都在跟阿里学,学阿里的管理、文化、技术等等。但绝大多数公司不会学习阿里内部的工作流程、交付过程等。也绝对不会学马老师的另外一句话:“只知道挣钱是没出息的公司”。为什么呢?其实原因很多。
-
从业者的问题
现在互联网行业中的从业人员很多都是因为互联网行业的收入高,而义无反顾的投身进来的。这样就造成了行业内人员水平参差不齐。通过培训进入软件行业的从业者越来越多、未经过正规软件过程训练的从业者越来越多。这群人作者认为逻辑思维能力都欠佳的情况下更不用提很好的实现软件。
一个行业内从业人员的水平决定这个行业的高度。就像医生,必须是硕士及以上水平才可以,建筑师必须通过国家认证才可以。而软件行业,随便一个工作5~6年的人就敢称自己是CTO,技术总监,高级PM的人比比皆是。这些人有肯能连架构模式、CCB、DOD都不知道是什么,那他们能把企业带向何方就不言而喻了。
-
决策者的问题
决策者对于软件行业是一个工程技术类行业的不认同。就像建筑行业里面认为挖沟机驾驶员谁都可以干一样。决策者很多时候不理解我们所说的软件行业是一个知识密集型行业的说法。
决策者所关心的就是我找几个技术来,帮我实现我想要的东西就好。这群人不必要给我提出意见、建议,一切都必须按照我的来。每个决策者都认为自己是乔布斯,只要跟着我干,我就可以带领你们发家致富。
对于这种决策者来说,软件从业人员要远离。他们再和你合作一段时间之后都会抱怨软件团队不给力,而他们也不会在软件研发开始时告诉你他们想要什么。也不会论证他们想要的和市场上要解决的问题是否匹配。
一般不懂互联网行业的人,都是一群逻辑思维不严谨的人。对于严谨,谨慎的工程技术类专业人才来说,要不就cover住这个人,要不就不要和这群人合作。
摧毁因素
对于上面所说的两类人有一些共同的特点。这群人的特点是不能深入的理解与分析问题的本质,并针对问题本质进行问题本质的解决。喜欢流于表面的解决遇到一个问题解决一个问题,不能触类旁通。在这个基础上我分析了几个缺少的方面,在下面一一说明。
-
缺认知
现在有很多书都在说认知升级的事。按照我的理解认知就是一把没有刻度的尺子,对于同一件事情来说。不同的人在这把尺子上的刻度也是不一样的。有些人对于软件的认知就只有一个刻度,有些人对于软件的认知可能就会分成好几百个刻度。这就是认知的深度不同,导致不同的人对于同一件事的认知是不一样的原因。
-
不认同软件复杂度
软件复杂度的一个体现是所有人都说不清楚想要什么的情况下就要进行开发。不明确的需求,开发出来后改。如果是这样的一个实施过程,大家都没有算过成本对比。这种成本对比最少在1:10,之前想清楚想要什么,然后在投入实施的成本会比上来就动手实现的成本低得多。因为软件开发人员的费用是很高的。需要充分利用软件研发人员的资源,而不要被想怎么做这种低成本的事而干扰。 -
不认同前人经验
很多人都喜欢按照自己的意愿,从新创造一个什么东西。然后用来彰显自己的能力。这其实已经是一种无能的表现。因为《以史为鉴》就是能让我们借鉴前人的经验去改善现实中的情况。不过中国人都有这个特点,这要从中国人的思维方式说就比较大了。 -
不认同事物发展规律
对于软件过程中的各个步骤来说,不尊重,不使用。这些步骤、方法都是软件行业内经过数学方法验证,经过很多年实践得出的结论。就在这样的情况下形成的事物发展规律总结都不能得到尊重与相信。 -
不认同人的认知规律
人不可能一次把一件事情的认知提升到最高。不管是多聪明的人都需要有一个认知过程才能真正深入理解一件事情。对于这个过程在软件业内尤其重要,因为软件行业是一个“知识”密集型行业。知识密集型行业内部进行信息交换、沟通的成本就会比较高。以为每个人的知识体系,背景都不一样。在说同一件事时,每个人都是基于自己的知识体系,自己的认知体系进行理解的。所以即使是认同同一件事也非常有可能从不同的角度进行认知的。
很多时候决策者认为他只要说明一遍他的思路,然后所有人就都可以理解。信息传递过程其实是一个认知过程,也是一个复杂的,需要反复进行的事情。 -
不认同规则
我很早之前就非常认同一句话:
规则对于智者来说是指导,对于愚者来说是遵从。
而大部分国人认为规则是对自己的限制,这说明中国人是很不喜欢最受规则的。也不可能做到:
不从心底相信规则的力量。
最不到这一点就更不要提了解规则背后的意义。不了解意义只是照抄形式的情况下永远会失败。例如:国内的敏捷实践。
-
缺方法
很多从业者不认同方法的重要性,不理解方法怎么指导实践。而一味的认为不需要方法,现在这么干就挺好的、不需要改进。这样对于一个软件研发团队来说是可怕的。如果一个研发团队陷入到不学习,不改进的过程中就会陷入一个无法自拔的泥潭。永远跳不出来,没办法真正的成长为企业所需要的团队。
-
缺少对于未知的应对方法
绝大多数团队的方法是引入新人。但是引入新人对于团队来说是不能长期应对未知的。因为团队也不可能是所有未知问题都可以解决的。而且新人会被团队内部的氛围所同化。 -
缺少建立体系化思维的方法
不建立体系化的思维方法就没有办法跳出原来的坑。没有跳出原来的坑的能力,就没有办法为团队持续改进。 -
缺少问题分析方法
现在行业内遇到最多的问题是流程问题,而流程问题的分析能力,分析方法是绝大部分从业者所欠缺的能力。而业务问题,技术问题的分析也有着很大的短板。 -
缺少实践方法
根本方法去接受现实,所以就更不要提成为有理想的现实主义者。现实中的很多问题是可以解决的,但是在解决的过程中怎么实现理想就是我们接受现实的方法。有了这个 -
缺少体系化方法论
对于公司的发展,技术的发展,流程的管理没有很好的把控。不能看到公司未来的发展,一个人有未来的规划能力才能真正的成长为公司的中流砥柱。 -
缺思考
很多公司会以“忙碌”限制思考、会以业务压力限制思考、会以无知限制思考。限制形成学习性组织的情况下,还没有人能够为团队思考。这就是现在很多公司的特点。
而有时候甚至会发展成为:拿无知当光荣。我不知道这个该怎么做?技术上解决不了?业务流程不通?等等。
-
缺耐心
直白一点说就是给你发工资是让你来干活的,不要给我一个长远计划。不要给我说你实现不了。我现在就要。
我认为每个人对于团队来说都是一种合作关系,而不是一种雇佣关系。雇佣关系中肯定会有上下级关系。不能通力合作,就不能发挥每个人的潜力。不能充分发挥每个人的作用。
总结
互联网要改变的是什么?互联网要打破的是什么?从国内很多互联网成功案例中可以得出一个结论,互联网需要打破规则,改变关系。
而很多互联网从业者以无知当光荣,拿无良当忠诚。这种氛围充斥着整个行业你说这个行业能不快速崩溃吗?
网友评论