见字如面,我是军哥!
我可以肯定和你说,绝对不是你当前会的各种框架、类库等技术,因为这些东西最多 3/4 年就会被新的取代。
那么,程序员的核心竞争力到底是什么呢?
今天就这个问题来聊一聊,希望对你有收获和思考~
1、编程能力
这个毋庸置疑,作为一名程序员,能写出高质量的代码,可以说是基本功,离开了这个,就像无根之木,无源之水,谈再多也没用。
一般来说,提升编程能力的第一训练场就是在实际项目中锻炼,除此之外你还可以和本公司的高手学习,多利用好自己的业余时间,平时多看一些开源代码,从模仿到动手尝试、再到创新。
2、学习能力
学习能力尤其是自学能力,你啥时看到那些程序员高手在论坛或社区上,问“学习XX技术该看什么书,如何快速学习XX技术”等之类的问题,他们想学什么很快就能找到相关资料。
技术这个行业发展太快,淘汰的速度也很快,3/4 年不学新技术就落伍了,所以从事计算机这行本质上需要终身学习~
3、 动手能力
绝对多数人都是看书、看视频、看各种资料学习新技术或知识。
为什么有的人学得快?因为当你还在纠结看什么书,还在纠结书里的字句是什么意思的时候,人家几百上千行代码都已经在生产环境上运行了。
所以,行动/实践大于一切,没有这个想快速提升都是空话。
4、 抽象和学会找到问题本质的能力
程序员在日常的工作中,会遇到各种复杂的技术/业务问题,能不能把它抽象和分解成简单的小问题,这个能力显得尤为关键,不会抽象思维和分解思维基本上很难很好地解决问题。
还有一个就是学会找到问题本质的能力,我们在日程的工作中要不停地追问为什么(比如,为什么做这个需求而不做那个?为什么这个场景用这种技术方案?为什么明明测试环境ok,上了生产就有bug?等等),来判断这个问题的根因是什么,只有找到根因或本质才能对症下药,才能真正彻底解决问题,否则大概率头疼治头脚痛治脚。
5、 沟通表达能力和向上管理能力
这个能力最重要也最难,就是能在大庭广众下,把自己的技术方案或和别人的不同想法,有逻辑并清晰地讲出来,并让人听懂,大多数程序员这个能力是欠缺的。
当然,还有向上管理能力,这几乎是所有高阶程序员的必备能力,做不好向上管理,无法和领导协调目标,大概率怎么努力都是徒劳的,你可以参考一下我之前写的文章《再次深入聊聊向上管理!》
最后,预计下周三晚上 21 点 15 分给大家带来一场直播分享,主题如下,直接点击下面预约起来~
「关于作者:军哥,前饿了么、贝壳技术总监,目前是一名自由职业者兼公司顾问,乐于结交朋友,也欢迎加我微信与我做朋友(公号输入框回复“w”即可),朋友圈做个点头之交!
另外军哥写了一些,关于个人如何快速成长、深度思考、程序员或产品经理能力模型、架构,OKR干货,技术管理等电子书资料,公号后台回复 “9”获取,不谢。」
以往热文推荐:
更多精彩,关注我公号,一起学习、成长