职场新人初入职场应具备怎样的竞争力?

我认为,不同职业的核心竞争力是不一样的,作为一个程序员,说一下程序员的核心竞争力吧:

学习能力,尤其是自学能力,你啥时看到那些有名的程序高手在论坛上问“学习 XX 该看什么书,如何快速学习 XXX,学习 XXX 有什么代码推荐”之类的问题,他们想学什么很快就能自己找到相关资料。这个行业发展太快,技术淘汰的速度也很快,3 年不学新东西就可能落伍了。

动手能力,都是看书看资料,当别人还在纠结看什么书,还在纠结书里的字句是什么意思的时候,有些人的几百上千行代码都已经能运行了。

耐心和毅力,做程序员兴趣固然重要,写自己喜欢的代码那是相当愉快的事情,但是程序开发中无论如何还有大量乏味无趣的事情,要能坚持,咬牙把这些做完。\

表达能力,能在大庭广众下,把自己的想法逻辑清晰流畅地讲出来,让人听懂。

以上几点是最基本的硬能力,再说点“虚”的吧:

学会聪明的问问题。这点很重要,问问题并不是说碰到不会的就去问,其实问问题也不仅仅限于去网上查资料,其实我更建议大家去推导出问题的答案,因为很多的问题都是实际项目中的问题,你在网上根本很难找到100%匹配的问题,如果你拿你的问题去网上问,也不一定有人能给你一个完整的答案。我给大家说2点,第一,看VS给的异常信息,第二,学会举一反三,因为任何的问题不可能完全匹配,但是大体的思路是正确的,如果你掌握了思路,那一切都很好办了,以后碰到类似的问题你也可以解决了,不用看那个固定的答案了。

要有危机意识。记得有个人曾经对我说过一句话:如果你在不该安逸的年纪安逸,那么你将在安逸的年纪不能安逸。这句话折射出一个问题,最危险的地方往往是最安全的地方,最安全的舒适的地方往往最不安全,世界对每个人不可能公平,物竞天择,优者生存,如果你经历过裁员,你应该懂的。如果你经常上Cnblogs你也许会觉得你还“行”,但是如果你去CSDN的话,你会发现很多大一的学生都比你工作了2,3年的人还要懂得技术,你说你有技术,他们大一就超过了你,你说你有兴趣,他说他可以每天熬夜写代码,试问一句,你有什么资本和他们去竞争?你缺什么,你缺时间,因为年纪越大,你的剩余时间就越少!

千万不能只学技术。作为一个.neter,上次去了家互联网公司面试,结果彻底被鄙视了,为什么?因为我懂的技术太多了,什么MVC啊,EF啊,NHibernate啊,有人可能会奇怪,会这些东西不是很好吗,为什么还被鄙视呢?因为他们除了.net framework以外,其他的东西根本就不用,也就是用不上!甚至连现在流行的MVC都不用,他们是所有的控件,底层的代码,都是根据自己网站的需求去额外定制!框架的作用是方便我们去使用,但是也会让我们变成填鸭式工作的模式,因为你只要用一个Helper类就可以解决所有的问题了啊!编程的精华是架构和底层,但是往往能真正懂架构的人是很少的,或者说是,懂架构的人多,但是能运用在实际场景中让她发光发亮的人 - 很少!编程思想很重要!