当前位置: 首页 > 科技观察

为什么大公司还在采用过时的技术!

时间:2023-03-12 20:41:39 科技观察

背??景这篇文章来自一个朋友问我的问题,所以博主努力给他洗脑了几个小时。突然发现应该有很多朋友有同样的疑问。所以把它写下来。很多刚毕业的程序员朋友都有一个执念,想进更大的公司,上市公司,行业知名的龙头。为什么大家都想去大公司?因为很多人认为公司越大越正式。开发技术要好,与时俱进,流程要更加规范。话说回来,还有这种想法的朋友,请抱紧你们的爪子。然而等他刷完了《剑指OFFER》、《编程之美》,费了九牛二虎之力才进去之后,却发现和自己想的完全不一样。他发现自己所在的大公司:(1)代码乱I。比如一个发送Http请求的Util类,有三四种。开发者A封装一个,开发者B封装一个,公司框架自带一个。二。到处都是Ctrl+C和Ctrl+V的味道,更何况连作者都没改,照原样照抄。三、日志样式多种多样,缺乏统一的标准。每个人都有自己的一套日志风格。重点是有些关键步骤不写日志。四、有些几千行的类,关键步骤没有注释,一个方法有几十个参数,随处可见。(2)开发流程混乱I.一个项目组的IDE和JDK不统一,比如Idea和eclipse。不过重点是将idea和eclipse特有的配置文件上传到服务器。二。根本没有文档。比如你要改一个需求,OK,去Debug代码,根据断点反转原来的逻辑是怎么实现的。反正不解决问题就好了。三、程序员白天大部分时间都在和bug打交道,抱着磨蹭的心态工作。反正只要能搞定新的需求,就可以做功能测试,项目就可以如期上线。至于代码有多垃圾,无所谓!(三)技术落后1、四五年前的技术还在沿用,比如大量的JAVA代码还是用JSP编写开发。二。没有考虑架构的许多方面。比如使用了消息队列,但是根本没有做持久化处理,不担心数据丢失,没有可靠性保证。服务间传输数据时,重要信息完全不加密,直接明文传输。三、性能调优就是上面说的各种脑残。如果您被深深感动,请再次握住您的爪子。那么为什么会这样呢?原因是人员水平。在大厂工作过几年的老员工有没有这样的经历,身边牛逼的老员工基本都跑了,剩下的员工基本都是平庸的。大部分人在工作中其实都处于重复劳动状态,也就是所谓的拧螺丝的工作,技术水平无法提高。那么在这种工作的性质下,就会诞生两种人:(1)平庸的人。这类人只满足于能够完成工作中的要求,并不关心代码的美丑。俗话说,代码不坏,只要能运行。当然,这样的人并不是缺乏提升技能的能力,而是由于惰性,缺乏清晰的规划,缺乏提升技能的意识,时光荏苒,想跳槽却无处可去。人们成为老员工。说到这里,我们赶紧回想一下,是不是整天没时间当借口,然后明天明天,小心成为老员工。另外,大公司基本不会裁员,手上的技术水平已经可以应付工作了。即使他们努力学习一堆新技术,也没有用,所以这种人可以继续舒适地生活。可以对比一下身边的同事。一个毕业后在这家公司工作了十年,一个十年里在三四家公司待过。哪个更高?(2)Awesomepeople这些人一般在工作中有很强的责任感,对代码有很高的追求,对问题有独到的见解,回去后会不断学习和提升自己。然而,这样的人所学的东西通常没有发展的空间。比如,可能会出现下面的对话:程序员A:“老??王,这个地方不能这么写,会有XXX个bug。”老王:“你懂什么,公司刚成立的时候,我在这个项目组,就应该这么写。”所以这种人学的东西,发展空间不大,即使有发挥的空间,也很快就会离开。因为在IT圈,只有跳槽才能拿到高薪。在这个这点,大家要明白,各大厂都有严格的加薪制度,不会因为你做了特别牛的贡献,就让你的月薪一下子翻倍。而且,如果你加薪了,你们公司其他人呢,加还是不加?所以很多公司宁愿给新员工高薪,也不愿意给老员工加薪,就是这个道理。公司现有的薪资与能力不匹配,在IT圈的人都会听到一句话,B级公司为A级公司培养人才,A级公司为S级公司培养人才。所以,不要当你结束时不要感到惊讶d你身边没有大神,因为大神都跑路了。重构成本当一个系统的代码成为祖传代码时,其业务规模和复杂度远超你的想象。当我们开发新的需求时,我们会在原有的基础上精心修复。例如,可能会出现这样的对话:“谁让你乱改这个模块的代码,你知不知道因为你改了,XX模块不能用了?”程序员A:“我……只是想让代码看起来更好看。”老王:“你以为我不知道这样写很折腾,乱改有问题,你反抗。赶紧改回来。”其实你看得见的问题,老员工看得比老员工看得更清楚。你更清楚,也许其他人比你更清楚如何解决它。但为什么老员工不做呢?因为,老员工都明白,技术上的东西,并不是100%确定什么都不会发生。如果出了问题,谁来扛?再打个比方,你月薪10K,你用了5个月,业绩提升了10%。从你的角度来看,你是幸福的。但是站在公司的角度,靠,我亏本了。还不如花20K再买一台机器。我给你投了50K,还要担心你会不会跑掉。因此,从改造成本来看,又增加了。再加上很多中层领导基本上都是在守着自己的一亩三分地,不是无所求而是无所求。所谓祖传密码的出现,其实是整个部门的责任。如果你一个人重构开心,以后说不定整个部门一起加班,谁来干这种吃力不讨好的事。而且最重要的是,如果技术负责人级别和开发流程没有改变,你的新代码几个月后就会变成所谓的祖传代码。当然可以,但这并不意味着这些技术项目无可救药。例如,有一天你的对手发布了一款击败你的项目的产品。这个时候,只能大刀阔斧的改了。不管怎样,试一试,说不定还有退路。公司性质事实上,大多数公司只注重商业价值,而看不到技术价值。在一些大厂有一个很有趣的现象。产品经理的薪水高于技术人员。因为他们认为无非就是增删改查,随便找个应届毕业生就可以了,没必要花大价钱请牛逼的人写。所以,很多中层管理者就是所谓的没写过代码的销售员,或者一行代码都没写过的产品经理,然后就很搞笑了。会出现如下情况:“这个功能,你看看,要多久才能实现。”研发人员:“大概下个月十五号左右吧。”产品经理:“什么!这么久啊。刚一月初一,下月初一,一定要上。”研发人员:“我!!!!!这个功能XX比较复杂,需要一些时间。”产品经理:“你当我傻吗,要不然……可以实现,但是为什么要这么久!”研发人员:“我!!!产品经理:“下月初一,如果做不成,公司的损失你承担,我承担!””所以,在一个看重商业价值的公司里,不管你多牛逼,就算你是代码大神,写出来的代码也不好看。说到这里,博主的朋友不服他辩称,“我们可以在前期设计好规划好之后再着手开发,减少马虎代码的可能性。”“的确,我承认这样做可以减少出现错误代码的可能性。但是,谁都知道需求是个善变的小姑娘,每天都在变。你的设计再牛逼,也经不起频繁的变更需求啊。其实在某个点,没必要把代码当成艺术品。应该能接受适当程度的瑕疵。只要能在那个点跑起来,就可以跟踪BUG,基本上就可以有所作为了。相信对于任何人来说只要时间足够,人家都可以把代码变成艺术品,但是有什么用呢。等你完成了,黄花菜就会了凉了,关键是快上线赚钱,这是你KPI的体现阿大牛写不出优秀的代码,换句话说,你完全有可能把原来的架构再推导一遍以后挣钱以后。我们要明白,写代码是为了赚钱,而不是雕刻一件所谓的艺术品。如果把写出优秀的代码比作一种感情,请问感情重要,还是钱重要?感情能让你买房吗?OK,分清轻重缓急,赚钱才是硬道理。审视自己,希望大家好好审视一下自己,因为重点不是为什么大公司还在用过时的技术,而是为什么只能进用过时技术的公司其实每个公司都有一个所谓的对标部门,而且这个部门的技术通常是可用的。但是,这样的部门通常是最难进的。因此,您将前往可以接种疫苗的部门。努力吧,孩子们。好吧,让我们考虑一下。如果有什么问题,也可以给我留言。总结是废话,废话,废话。一堆,希望大家看完后有所收获。在工作中,不断完善自己,少抱怨。