周五的时候,特别郑重的在“简书”里写下一个标题“响应式编程”。然后这个周末茶饭不思的就在脑子里一直构思这篇文章,总记得“老赵”在几年前写过类似的东西,各种找他的博客。最后发现是自己记错了。想了很多以后发现并没有太想好怎么写响应式编程,反而发现了这几年技术转型之路的一个大BUG。
1
我刚入行的时候没有传统IT企业和互联网企业的区分,只有国内的软件公司和外企之分,我们那时候的梦想都是如何才能进微软、GOOGLE、IBM。网上总有前辈高人说,千万别去大公司(这个论调和现在倒是完全一样),大公司的软件架构全都是自己独特的,进去后就再也不会写别的东西了,想跳槽都跳不了,里面的东西外面完全不用。当时心里其实有两个念头,反正哥们也进不去爱用啥用啥;大公司真任性,这么多现成技术非要自己搞独特的。
现在这个年代,已经没有太多人说外企了,大家都是讲传统和互联网。技术大一统啊,大大小小的公司都在2-3套技术框架中选一套自己合适的完事了。弄熟一套走到哪也不陌生。
2
我过去一年的时间,工作的很大重心一直都在招聘上。实话实说越招心越凉,开始的时候还能挑挑,是有很多好手的,后来就实在没得挑,基础不错就进来吧。团队人员也一直在更替,支援出去一些技术很棒的人,也有人重新选择了工作或者公司。随着时间的发展公司对技术的要求也越来越高,但是又很难找到技术很好的人,简直是个困局啊!为了解决这个问题,绞尽脑汁的想怎么才能吸引到优秀的人才、团队成员的能力怎么持续提升。努力想了很多办法,去提升团队技术、提升工程效率。这个周末本打算写的“响应式编程”也是为了提升工程效率的,构思过程中,我忽然给了自己一个假设,是不是从根本上就错了,是因为没有布好局所以导致了现在这种局面。这个念头出来以后,越想越觉得其实真的是从头就做错了。
3
几年前京东是用.NET的,可能是因为版权费、也可能是因为当时的技术老大比较喜欢Java,公司的技术就逐步全转成JAVA了。当时觉得还是蛮好的,Java程序员薪水高呀!其实回忆一下,当年.NET已经有了Mono也可以拥抱开源、可以避开版权费的,技术发展到现在的话微软有.NET Core,官方的开源版本。不知道当年为什么生生放弃了庞大的技术积累,转去了Java。
我定义转Java是目前困局的主要原因,因为早期京东一直使用.NET所以在Java上很多年都没有什么优势,没有优势就吸引不到顶尖的技术人才,没有顶尖人才就构建不出自己的技术优势,周而复始往复循环,没有比这个更恶性的循环了。可能好不容易培养或者吸引到几个技术挺棒的,但是他们又会很容易追随更高的技术氛围而去,白给别人做了嫁衣。
4
如果不转Java还用C#呢?请看目前整个技术圈的状况,这几年其实没有大公司用C#了,所以如果京东坚持用C#的话,就等于一家公司拥有了整个C#圈的技术资源,凡是做C#的梦想就只能是进京东。当年专用Mono,用C#去应对这样的高并发、高访问量,这么多年一定已经在C#技术上积累了大量的技术框架。一个技术语言里面的唯一大公司,同时积累了大量的开源框架,这不简直就是那个技术的最高殿堂吗!自研框架扩大影响力的同时,又能培养自己的尖端技术人才。推广开源框架就等于推广自己的技术理念,每一个精研技术框架的技术人都是京东的后备人才,他们的梦想一定就是进京东。
微软每年在中国培养过百的MVP,积累了10多年了,这是多么庞大的技术储备库,微软自己又不用。如果没有放弃C#,我们坐拥这么庞大的人才库还有什么可愁的、有什么不能做的,完全可以用语言做壁垒在国内建立二元的技术体系和某友商分庭抗争,你的技术体系我不用,我的技术体系也绝不会看上你。所以我个人认为当年放弃C#体系是巨大的失误!
5
放弃了C#等于放弃了话语权,因为人家发展了那么多年的Java,哪是你想追上就能轻易的追上的,你要多投千百倍的成本和精力才有可能跟人家站在同一起跑线上。但是已经领先的人又不会停下来等你。整个圈子都用同样的技术,甚至都用某友商的技术框架,就等于整个技术圈都在给对方培养技术储备,精研框架的人谁不想去框架的发明者那啊!
大公司一定要构建自己独特的技术体系,参与改造开源框架也好、完全自研独特的技术框架也好,都是对技术人巨大的挑战和提升,自研的过程就是团队技术升级的过程。放弃了这个过程就等于放弃了升级之路,放弃了大团队的优势,生生把千人的技术团队和3-5个人人小团队拉到一个水平线上。
小公司,要采用跟随战略,因为小公司撑不起来一个技术体系,非要个性化等于断了自己的人才之路。
大公司,绝不能采用跟随战略,那样等于放弃了自己的技术壁垒,把自己置于别人的资源池中,只能苦苦挣扎!
网友评论