|
看到有人说现在.Net程序员难招,但是很多人没说到点上,其实并不是.Net难招,而是软件公司对于.Net程序员的要求太高!这个结症从我刚毕业的时候就普遍存在。具体是为什么,其实想要说清楚很难,但是我尽量说明白些,希望你能懂。

刚开始的时候,.Net做网站基本上没有什么优势,尽管后面的.Net MVC已经足够优秀了,可是因为安卓系统的出现,导致很多做Java的都转投了安卓的阵营,Java群体虽然大,但是被安卓分去了一部分,所以需要更多的人来充实Java群体。
此时,.Net就显得特别尴尬,因为像我这种.Net和Java都会的人,从.Net转到Java可以说基本上可以做到无缝衔接,因为.Net的C#跟Java太像了所以很多.Net程序员为了迎合大趋势,就只能转了Java。
.Net的尴尬还在于大家都在热火朝天地搞安卓的时候,此时出现了一个叫WP的东西。.Net程序员满心欢喜地认为自己可以像Java程序员一样,可以拥有“双端手艺”,结果WP失败了!这也彻底打消了很多人留在.Net阵营里的想法。因为最开始安卓程序员的薪资还是蛮有优势的,谁愿意这么一直被Java碾压呢?

很长时间.Net程序员的薪资都比Java程序员的薪资矮一截,就是因为.Net做不了Java能做的事情。但是实际上.Net能做的事情,很多Java也做不了,或者做起来比较复杂,比如说PC软件。Java想要写一个PC软件,会比.Net花的时间更多。但是呢,.Net的优势正好迎来了手机软件的大浪潮,所以就这点优势也被Java给抵消掉了。
所以,就在那段时间,因为有部分.Net程序员转投了Java阵营,导致很多公司招不到.Net人才。
而现在的情况.Net更加尴尬,因为像Python这种轻量语言的出现,连Java都撑不住了,何况是.Net呢?
.Net程序员目前很难招,一方面是能够把.Net吃透的人很少,因为.Net能做的事情太多了。像游戏、工控软件、工业软件、PC的各种软件、网站等等。但凡一个程序员在某一个行业深耕多年,其他行业必然不会熟悉,所以导致其他方面的知识比较薄弱。
打个比方就是现在物联网应用大多数都是.Net在做后端,涉及到的知识点可能就会有跟串口、PLC通信的,但是一个长期做网站的可能就不会这些,所以对于企业来说,并不符合他们的要求。又或者一个长期做网站的.Net程序员,企业要求他会Winform,这样的话程序员又不符合要求。
而且,同样是.Net程序员,C#是可以写Unity的,但是并不是说会.Net就代表会Unity,可是写Unity的人一定会用C#。
光写网站的.Net程序员就会有很多分支,有些公司用WebService,有些公司用WebApi,有些公司用Mvc。虽然它们之间区别不大,但是作为一个程序员来说,出于严谨,也只能说自己经常用的那些东西。
而PC前端目前.Net还有两个分支,分别是Winform和WPF。会写WPF的.Net程序员可能写Winform不会太吃力,但是写Winform的.Net程序员你让他去写WPF的话,Winform程序员不一定习惯。
但是做.Net的其实都知道,.Net整个生态里,自己虽然总有不会的东西,可是因为.Net它好就好在学习成本并不高,经过短时间的熟悉一般都可以胜任。但当一个.Net程序员去面试的时候,被问到了,答不上来或者模棱两可,经常就会被刷掉了。
我见过很多.Net程序员,在某一个领域工作了很久,结果去一个全新的领域,给公司的感觉就是能力一般。其实碰到这种事情.Net程序员会觉得很委屈,所以.Net程序员对于领域的要求比较高,不适合就不干,因为后面很可能会因此吃亏。
各种原因综合下来,导致企业招不到人,.Net相对于Java程序员来说,找工作花的时间也更久一些。我也见过一些公司招.Net程序员,明明有很多人过来面试,但是就是感觉没有合适的,一年半载职位空缺也很正常。
其实只要企业能够稍微放低一下要求,你会发现,哪怕是个只有两三年经验的.Net程序员,他也能胜任大部分工作了。
另外就是如果你现在正好是个.Net程序员,我的建议是不要频繁换自己的工作领域,很可能因为你的工作领域变了,导致企业把你看低或者当作新手。
对.net感兴趣,刚就业的同学欢迎加群交流学习。QQ群:168484404 |
|