程序员成长攻略

这篇文章写在即将去实习之前。在面对将来的实习、工作,心中不免有些忐忑,特此整理了一些网上的文章,加上了一些自己的看法。希望通过许许多多前辈程序员的经验总结,能够帮助自己更快的悟到一点技术人在技术、工作、生活上的成长。

首先必须明确的是,不论是否是一个程序员,动手都是最重要的。纸上得来终觉浅,绝知此事要躬行。老祖宗的智慧,千年万年都有价值。不论是什么行业,唯有行动起来,深入学习,并进行实践,得到的才是真知灼见。

态度

积极的态度:

  1. 积极的做事,在工作中积极争取做更多的事情,如此能有更多学习的机会,也能给公司一个更好的印象;
  2. 积极沟通;
  3. 积极思考。

勤奋努力的态度。

心态的转变:我们不再是一个学习者,而是一个执行者。

技术能力和学习能力

技术能力主要是从日常生活中的编程、技术博客、书籍和开源代码等的阅读中学习的。学习的时候,多问自己为什么,譬如说nginx的机制、netty的高性能实现、Spring的启动流程等等,并体会这些技术背后的原理、相同之处、设计思想。不断整理、总结,才能提高。

学习能力则是在技术能力的基础上,一步步的积累、学习,逐步提升的。学习包括学习方法和实战的技巧。学习方法则包括如下:

  1. 良好的学习心态 :空杯心态、挑战权威、坚持学习、把事做精;
  2. 系统化的学习方法 :确定学习的知识领域和目标,制定学习计划,制定目录,然后根据目录上的知识点去学习,最后把知识点关联起来;
  3. 知识内化成能力 :刻意练习,有目的的练习,先规划好目标,然后练习(3F:专注Focus、反馈Feedback、修正Fix);
  4. 广度和深度的选择 :先深后广,触类旁通。个人的建议是,不断的记录自己做了什么,以及做的工作涉及的技术点,并每周进行整理。
深入学习的例子:
比如学习并发编程时,首先学习JDK源码,然后学懂以后,开始看JVM源码,最后看CPU架构。这时在技术点逐渐深入的过程中,广度也得到了改善。

实战的技巧:

  1. 编码习惯:1. 使用工具;2. 使用快捷键;3. 用脚本写工具。
  2. 在业务团队做开发如何成长:
    用可配置的方式支持业务、写框架解决业务问题、使用技术驱动支持业务。

锤炼思维能力

  1. 调试能力
  2. 善于思考、反思、总结
  3. 记录,写文档、博客
  4. 猜测的能力:大胆猜测、小心论证。

提高学习能力

  1. 快速学习的能力
  2. 以解决问题为导向

沟通能力

沟通能力则需要从一些软技能的书上开始,如:非暴力沟通、人性的弱点等等去学习。沟通能力应该如何培养呢?

  1. 好的沟通条件:能够很好的理解别人的意图,以及能够很好的表达自己的意图;
  2. 积极沟通需求;
  3. 及时呈现工作成果;
  4. 不要害怕呈现自己的缺陷;
  5. 合理的提问;
  6. 尽快熟悉相关业务。

责任心

一言以蔽之,做一个靠谱的人。凡事有交代、件件有着落、事事有回音。

行业看法和管理人的能力

行业的看法和管理的能力,就需要依靠自己不断的积累,以及对书籍、文章等的学习。

进步方式

  1. 学会看源码 ,code review、开源代码等;
  2. 复习 :偶尔放下受伤的活,留下一部分时间来分析自己的弱点,更改坏习惯、看新书或学习新语言;
  3. 做个人项目 :full stack programmer;
  4. 问答网站 :stackoverflow.com;
  5. 加入一个好团队

原文链接

  • https://www.zhihu.com/question/26572626
  • https://www.cnblogs.com/zhili/p/9652010.html
  • https://blog.csdn.net/netcy/article/details/82352366
  • https://www.runoob.com/w3cnote/best-programmer.html

你可能感兴趣的:(生活)