• 什么才是程序员的核心竞争力?

    2015-04-13

    如题所说,我现在是个刚毕业的小本,野鸡学校,而且不是正统的计算机专业,现在踏入了程序员这一行,到底什么样的技能才是真正的程序员的核心竞争力,换言之,我在工作的前几年,需要累积什么样的技能,之后才能更好的和老板要工资,提要求吗?程序员自己总结了一下几点:
    1、学习能力
    尤其是自学能力,你啥时看到那些有名的程序高手在论坛上问“学习 XX 该看什么书,如何快速学习 XXX,学习到什么有什么代码推荐”之类的问题,他们想学什么很快就能自己找到相关资料。这个行业发展太快,技术淘汰的速度也很快,3 年不学新东西就可能落伍了。
    2、动手能力
    都是看书看资料,当别人还在纠结看什么书,还在纠结书里的字句是什么意思的时候,有些人的几百上千行代码都已经能运行了。
    3、耐心和毅力
    做程序员兴趣固然重要,写自己喜欢的代码那是相当愉快的事情,但是程序开发中无论如何还有大量乏味无趣的事情,要能坚持,咬牙把这些做完。
    4、表达能力
    能在大庭广众下,把自己的想法逻辑清晰流畅地讲出来,让人听懂,更能让所有人佩服你能力是适合自己做程序员的技术等等。
    5、那么技术呢?
    技术不重要,有了以上几种能力,市场上需要什么技术,很快就能掌握了。程序员一个坏习惯就是上来就写很大一坨代码然后再执行,不知道一个模块一个模块来写来测试,执行出了问题不知道设置断点,缩小范围逐步分析。断点分析非常简单,将整个代码中插几个中间输出,观察哪个环节出了问题,或者观察每个环节的系统开销,对调错和性能优化都非常重要,高手们大概认为这是 ABC 的东西,但是就这玩意我看到的大部分程序员都没有这个习惯。