听前同事说我的老东家现在已经把Java技术栈全部转成.Net技术栈了,本来我的老东家就是使用.Net技术栈开发软件起家的,后来请了一帮Java程序员花了大约三年时间重构了公司的产品,结果兜兜转转,又从Java技术栈全面转回了.Net技术栈,并且现在老板急得要死,正在抓紧招人中。

老东家转技术栈

我最近在找工作,于是就联系了几个以前的同事,曾经的一位同事告诉我,之前的公司老板已经把Java技术栈的产品全部撤掉了,准备重新再重构一套.Net技术栈的产品。

我好奇问他为什么,因为据我了解,当初老板是花了大价钱请了一帮Java程序员来重构产品的,现在都好几年了,不说这几年花费的时间,光人力成本也得花出去百来万了吧,这时候又重构回.Net技术栈,老板不是有毛病吗?

可能看到这里,有些人会认为是不是现在.Net8出来了,.Net越来越好了,而Java收费了,所以导致老板决定换回.Net技术栈呢?

.Net程序员便宜

其实这部分原因只占很小的一部分,最重要的原因是,.Net程序员便宜!

说到这里,可能很多.Net程序员不开心了,其实我作为一个.Net程序员,也不得不接受这个现实,.Net程序员在大部分城市里,薪资待遇都要比Java和C++程序员便宜很多!

一些小的软件公司薪资是有天花板的,比如我上面所说的公司,Java我不知道,但是.Net程序员的薪资天花板是20K!再想要多,绝无可能了!

导致老板决定把Java技术栈换回.Net技术栈的主要原因,就是因为Java的研发总监要求老板给他涨薪,结果老板算了笔账,最后没有给他涨,所以这个Java的研发总监就辞职了!

说到这里,要提一下当初为什么公司要从.Net栈转到Java栈。

当初转到Java的原因

其实,这个公司本身活得挺不错的,属于那种饿不死但也吃不饱的那种状态。老板每年刨去开支,能赚个50来万就心满意足了。

后来,老板遇到一个机会,和一个比较有实力的公司签订了一个软件开发订单,光这个订单每年就能给老板带来几百万的收入。

但是,甲方要求老板给他们开发的软件必须使用Java写,因为甲方公司内部只有Java程序员,用Java写,甲方那边的程序员也可以参与进来。

所以,老板为了拿下这个订单,所以就招了一批Java程序员进了公司。

但是,这个项目最后只做了一期,后期因为甲方自己的原因,没有继续二期开发。

公司花了超出市场水平的薪资招了一批Java程序员进来,总不能让他们无所事事吧,所以老板就决定让这帮Java程序员重构公司的产品,把当时公司内的.Net程序员给边缘化了。

我当时在公司就是.Net岗,被边缘化以后我就离开了公司。

.Net程序员更有性价比

兜兜转转几年过去了,据说使用Java重构的产品最终没有什么起色,其实收益跟当初使用.Net技术栈时的收益差不多,但是人员工资开支却比当时给.Net程序员的开支要多很多。

而且,公司不光有App端、Web端的产品开发,还有PC端的产品开发,那帮Java程序员几乎只专注于后端开发,相对于以前.Net程序员除了App不能开发以外,其他的都能胜任这个优点,Java程序员对于公司来说,性价比其实是非常差的!

所以,当公司Java研发总监向老板提出了涨薪以后,老板就给拒绝了!最终Java研发总监辞职。

我不知道这个Java研发总监的薪资具体是多少,但是估计是接近30K的,这个薪资其实在.Net程序员里面,在大部分城市,几乎能请来大神级别的.Net程序员了,所以可想而知,为什么老板宁愿让Java研发总监离职也不愿意给他涨薪。

这里得提一下我当时在公司时我们.Net研发总监的薪资,据我所知,不超过18K!在我离职以后,研发总监也离职了,因为Java研发总监的薪资和.Net研发总监的薪资差距太大了!

当Java研发总监辞职后,老板要求公司剩下的所有Java程序员转.Net技术栈,有些不愿意转的,也辞职了!

这就是我的老东家将Java技术栈转回.Net技术栈的前因后果。

总结

从长远来看,老板的决策是对的。

一来.Net现在的确势不可挡,很多地方都要优于Java,至于大部分程序员所说的Java生态比.Net生态好,这里我承认,但是差距其实也没那么大,而且,其实目前的.Net生态对于这个公司来说完全够用且绰绰有余!

二来.Net程序员的薪资低,可能过去几年的确白白花了那么多钱和精力去开发Java产品,但是,未来的开支一样是存在的。我们这里Java程序员薪资一般都要比.Net程序员的薪资要高至少四分之一左右,只要重组.Net团队,过去白花的钱都会在未来的开支中省下来。

因此,我的老东家把Java技术栈转回.Net技术栈并不是说.Net有多好,而是.Net更有性价比,而且不少.Net程序员其实能力都接近全栈,对于未来公司的发展有更好的作用。

对于老东家的行为,按说我应该高兴,但是,我却怎么也高兴不起来!