程序员这个行业,是一个区隔度特别高的行业。不少人短短几年就可以成长为高级工程师、架构师、首席架构师,而另外一部分人很可能工作10年还是初中级工程师。的程序员能达到百万年薪,而入门级或者初中级程序员可能只能拿10万年薪。为什么会有这样的区别呢?撇开年龄、经验,的程序员身上有哪些特性呢?
北大青鸟鲁广校区的老师高速你,为什么程序员有的月薪2W+,有的却只有五六千。
一、强大的思维逻辑
对于一个程序员来说,你的思维逻辑有些地方其实需要异于常人的。经典的笑话就是:女朋友让程序员买包子,如果遇到卖西瓜的,就买一个。结果就是,程序员买了一个包子回家。为什么?因为他遇到了卖西瓜的。这个虽然是一个笑话,但是在代码层面,业务流程图上,确实可能需要这样来理解的。所以,一个程序员首先需要培养属于程序员自身的思维逻辑,不然,你对于设计文档的理解就可能有问题。
二、良好的编码习惯
简单点说就是,注释,命名规范,编码规范。
为什么我们必须写注释?因为一个月以后,你可能看不懂你的代码了。为什么要遵守命名规范?因为一个月以后,你可能看不懂你的代码了......所以,一定要习惯写注释,按照命名规范和编码规范来严格完成。细节体现了对工作的认真程度!
三、学习能力
IT行业是技术快速更迭的行业,整个环境进化的非常快,你不学习,就等于落后了。学习要有针对性,别今天学ruby,明天学python,后天php的。首先要认清自己的目标,自己短期目标是什么,1年后,3年后,5年后的目标是什么。结合这些目标,确定自己的学习计划,人的精力毕竟是有限的。当然,多掌握几门编程语言也是好的,可以扩充自己的知识面,重要的是为自己的目标服务。
四、重视沟通能力的培养
沟通包括程序员团队内部的沟通,与其他团队的沟通,与Manager的沟通等等。可以先学会和你的Manager沟通,让他来教你其余的部分。许多公司都会设置Manager与组员的1:1,一个有效率的1:1应该大部分时间有组员来主导。这需要你在1:1之前花足够多的时间来考虑要问的问题,并且提前1天发给Manager,让他有机会思考答案。
许多人对此不太重视,或者只问非常具体的问题而不是一些开放性问题,这样你很难在你的Manager身上学到东西。如果你渐渐懂得如何利用1:1的时间,它很会成为你在工作中单位时间投资回报率的活动。