Wednesday, January 11, 2017

从2016考核同事反馈想起的--如何成为一个优秀程序员

(1)遇到压力、困难,没有正确解决方法 
  因为只要工作,都会有压力,大小不同而已。逃避无疑是面对压力时,当时成本最低的方法,但长远来看也是代价最高的方法。 

此言不谬,面对问题想都不想就去问别人,如果运气好,别人告诉你的答案,你可以很快解决了,但是这对你的个人职业生涯成长又有多大的帮助呢? 就好比是蝉退壳的时候,必须要要经历一段痛苦的蜕变过程,如果你觉得它太痛苦了,帮他扒皮退掉,这种蝉是没办法飞起来的,甚至都没法成活。换个思维方式,把所有的困难和挑战都当成自己锻炼的机会,和提升的平台,只有这样下次遇到新问题才能比较快的找到思路。都说学习重要,我觉得信息时代最重要的是学习学习的能力。


(2) 主见于开放心态(Open)
领导明确交代的问题,不要太多发挥自己的主见,甚至固执己见。 要听从,如果是询问你意见的问题或者开放性的问题可以发挥。领导都喜欢听话的员工。在自己能力还不够强大的时候,绝对服从吧 (想想日本军国主义,你的待遇好多了)~

(3)提升快速学习能力
跟定足够时间,谁都能学会,所以,优秀程序员的一个非常厉(ku)害(bi)的技能就是快速学习能力。除去被逼迫的成分外,这是一个非常实用,堪称看家本领之一

(4) 感到无力或恐慌的时候:
想想最极端的结果,降低无力感,如果最快的结果也是能够承受的,那还有什么是输不起的呢,更何况通常最坏的结果都不是最坏的,最坏的是由最坏的结果所引发的内心恐惧,焦虑和不安的负面情绪

(5)在选择学习一门新技术时,最大化它与你现有知识库的差异性。 及优先学习那些你完全陌生的不懂得,差异最大的,而不是相近的。 比如:你已经学会了C语言,你有两个新语言要学Python 和 C++,按照此原则你应该学习Python ,因为Python跟C语言的差异要远远大于C++跟C的差异。因为只有这样才能最快的扩充你的舒适区。

(6) “最后我建议每个程序员都应该经营一款自己的产品,它可以是一款app,一个网站或是一个开源软件。除非你是一个创业公司的早期员工,不然你可能没有机会将 所有学到的技术或是理念都付之实践,有很多人想成为全栈工程师,最快的捷径就是打造一款自己的产品。任何一个设计师都会精心打造自己的 Portfolio,但大部分

程序员却不会。当评估一个程序员的Coding能力时,我会去看他的Github上是否有出彩的项目,可惜国内绝大部分程序 员的Github空空如也,或者只有一些非常简单的程序。我建议大家好好经营自己Github上项目,这不但可以提高你的声誉,对你将来的求职也非常有帮 助。当你报怨求职面试时又被问到各种无厘头的程序题时,有没有想过面试官也很无奈,因为他没有任何其他方法得知你的Coding能力究竟如何。如果每一个 程序员都有自己的作品,我想程序员的面试会简单许多。”
试着维护我自己的Github,并建立自己的一款产品,开源软件?(Not sure) 全栈工程师真的应该成为优秀程序员的目标吗?抑或是想创业程序员的目标? (Not sure , :-(

(7) 重视沟通能力的培养。 当被问到“你觉得Junior Developer和Senior Developer最大的差别是什么”时,我最自然的反应是沟通与文档。

(8) 累积你的人脉。 认识一两个志同道合的人有时候比技术会议或论坛更重要。

 (9) 寻找发挥你才华的平台。“比如,在刚刚工作时,加入一个优秀的团队最为重要,他们可以教会你很多东西,提升你的能力。工作5年之后,你需要一个平台施展你的才华,体现个人价值,公 司发展前景的重要性迅速提升。当你做出一番成绩,证明了自己的价值之后,逐渐进入收获期,就有了与公司要价的资格。另一方面,团队实力对公司的前景也有很 大的影响。”
Ref:
https://linux.cn/article-7017-1.html
https://linux.cn/article-6936-1.html