坚持写作有不少好处,除了赚些零花钱之外,还常常能收获读者的赞赏,满满的价值感。当然,最有意义的是,通过分享老兵哥我认识了天南海北不少的朋友,偶尔还有小伙伴找我咨询职业发展的建议,被信任的感觉也很好,尤其是被软妹子信任。只要时间允许,我非常乐意分享个人经验和观点。

前两天有位加了微信的小伙伴找我咨询如何提升技术能力,想起当年我也存在这方面的困惑,总觉得自己已经很努力了,但过了一阵子才发现依旧在原地踏步。对于参加工作 3 ~ 5 年的小伙伴来说,这是一个比较普遍的问题。因此,我就基于本次咨询稍作加工,剔除隐私,分享出来供大家伙参考。

软妹子:老兵哥,可否推荐几本技术书籍?

老兵哥:有没有特定的学习目的呢?

软妹子:提升技术水平。

老兵哥:哦,换个问法,你中长期准备往哪个方向发展,或眼下要解决什么具体的问题?

软妹子:我觉得自己目前的技术能力还是有些弱,想提升一下技术,下一步准备往高阶开发冲刺了。

老兵哥:嗯,那可以先专研专研编程语言、设计模式、领域驱动设计等。

软妹子:好!如果就 Java 语言来说,这几个方面有没有可推荐的书籍?

老兵哥:编程语言,《Thinking in Java》、《Effective Java》 等经典系列;设计模式,四人帮 GOF 的《设计模式:可复用面向对象软件的基础》最经典;领域驱动设计, Eric Evans 的《领域驱动设计:软件核心复杂性应对之道》最经典。

软妹子:《Thinking in Java》这本书我在朋友那儿见过,已经残缺了。当时翻看了几页,讲的非常细致。

老兵哥:是的,这些作品都出自该领域的大神之手,口碑是有保障的,属于传世经典了。

软妹子:前两天我刚买了几本剖析开发框架原理的书籍,这两天到货,有时间准备看看。

老兵哥:嗯,在 Java 语言领域,Spring 这套开发框架就是事实标准,非常有必要专研学习。如果时间允许,建议看看官方文档,会非常有收获的。

软妹子:嗯嗯,我觉得设计模式最能体现程序员的代码质量了,例如:我前段时间一直在用策略模式,取代了 if else 的嵌套,感觉代码美观了很多。

老兵哥:是的,从初、中到高级开发,必须要夯实编程语言和设计模式,再往上走我们还需要打通自底而上(垂直)、端到端(水平)两个维度的技术栈。

垂直技术栈

水平技术栈

软妹子:明白。你最近有没有发表新的文章啊?

老兵哥:最近有些忙,空闲时间都在赶 GitChat 上的稿件,技术文章我都发布在 GitChat 上,个人觉得公众号不太适合纯技术文章,在这里我主要分享软技能相关的。

软妹子:好的,回头我找来看看。其实,我现在还停留在客户端、应用、框架、DB 这个层级,Web 容器那层不甚理解。

老兵哥:嗯,现在应用都部署在容器云上了,标装化程度越来越高,Web 容器(像 Tomcat)这层已经被弱化了,就像 Spring Boot 内嵌了 Tomcat。以前,我们做应用性能调优必须要熟悉 Tomcat 的原理和参数等等。

软妹子:嗯嗯。

老兵哥:另外,Web 应用都是遵循 Servlet 这套标准的,而 Web 容器就是这套标准的实现,Spring 嫁接在它上面的,所以我们还是有必要把它弄懂。

软妹子:是的,Web 应用的生命周期就由它负责管理。

...... 过了一会儿 ......

软妹子:老兵哥,你推荐的那本设计模式是用 C++ 写的演示案例啊?

老兵哥:哈哈,对哦,忘了我最初是用 C++ 的,后面才转的 Java。如果你对 C++ 完全没有概念,那可以找 Java 版的设计模式书籍,具体哪本书最好,我也不太清楚。不过,设计模式本身是不区分语言的,它更多是一种设计思想。

软妹子:哈哈,我在豆瓣上看了下书评,好评度蛮高,参考价值肯定是有的。

老兵哥:是的,C++ 和 Java 都是面向对象的编程语言,对设计模式来说差别不大,在具体实现上会有些细微差别。如果你用 C++ 学习设计模式,最后能够用到 Java 上,那说明你真的学透了。

软妹子:嗯嗯,那真是,明白了,谢谢哈!

我们都知道,职业发展离不开学习,但要掌握的知识技能非常多,不知道从何入手。老兵哥也曾经历过类似阶段,日常工作都由团队安排,不可能按照自己的喜好选择,属于被动学习。虽然每年都坚持看不少书,但感觉自己没什么提升,后来我找到了解决这个问题的关键:学以致用。

我们必须带有明确的目的去学习,而不是漫无目的地涉猎。这些年,我都会制定提升架构师所需软技能的阅读计划(参见文末链接),专攻公众演讲、技术写作、产品管理等,坚持下来效果很明显,例如:公众演讲上我登上了多个技术峰会的舞台做分享,还跨界做了上千人规模技术论坛的主持人,兼职完成了几十场职业发展类的培训授课,多次荣获企业大学的金牌讲师。

学以致用,可以是为了中长期的职业发展目标学习,也可以是为了解决眼下某个难题学习。如果是为了中长期的职业发展目标学习,那我们必须要明确个人未来想担当的角色,例如:技术专家、架构专家、项目经理、产品经理或团队管理等,然后我们还要梳理出胜任未来角色所需的技能树,以此技能树为对比参照,缺什么就补什么,否则光空想不行动是无法抵达未来的。如果是为了解决眼下的难题,那我们就要追求短平快了。如果你对未来的职业规划不清楚,那建议先找找职业规划类的书籍,例如:古典老师的《你的生命有什么可能》,从兴趣开始,然后培养能力,最后实现价值。

千万不要“只见贼吃肉,不见贼挨打”!兴趣跟目标之间,还差着能力,明确目标是第一步,接下来就要梳理出新技能树,然后一点一点投入时间精力把这棵树苗浇灌培植长大,最后才是开花结果收获目标的时候。我们很容易掉进“用战术上的勤奋掩盖战略上的懒惰”这个陷阱,动脑很累,思考有罪,让自己在低水平工作上不断重复,用一年的经验工作了五年,滞留在原地踏步。

今天先分享到这里,如果你觉得有价值,麻烦动动手指 转发 给其他需要的小伙伴。另外,老兵哥我后续还会分享职业规划、应聘面试、技能提升、影响力打造等经验,欢迎 关注 本博客或歪信公主号 「 IT老兵哥 」

很努力了,为什么我还在原地踏步?相关推荐

  1. 为什么很努力,却似乎停在原地

    「心智探寻」这个系列源于通过微信进行的1v1对话,对话系列皆已得到分享授权,所有对话者化名都是Lucy(或Luke).文本除了极少量调整之外和原对话几乎完全保持一致.回复「对话」或「心智探寻」(或点击 ...

  2. 五年了还在原地踏步咋整?技术大佬给你整理了一套切实可行的方法论

    先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个有颜值却靠才华苟且的程序员. 本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系 ...

  3. 你为什么总是很忙碌,却还在原地踏步!

    英语的学习不止是是学习英语,还有诗和远方.一些问题经常性的在身边出现的时候,就应该反省反省为什么出现这种问题了,不是每一次都可以得过且过,学会了解自己,认识自己,在这个过程中和Bill师哥交谈过三次, ...

  4. 还在原地踏步,提高软件测试能力的方法你知道吗?

    目录 1. 想客户之所想 2. 多读Bug 3. 多读代码 4. 为你发现的Bug而骄傲 5. 参加软件功能的设计 6. 设计你的测试 7. 了解你测试的功能 8. 和别人合作测试你负责的部分 9.  ...

  5. Python还在原地踏步?今天女友程序员教你函数的定义与使用

    生活就像是一场戏,人在其中扮演的不过是一个个角色,打工人也好,丈夫也罢,儿子也好,父亲也罢.每个人涂上或淡或浓的脂粉,带着千疮百孔的面具,披挂着久经沙场的盔甲,在舞台上挪移踱步,念词唱戏,时而顺遂,时 ...

  6. 时过一年,我还在原地踏步么

    不知不觉,一年过去了.软考程序员是在编程上栽的.程序真的难么?好像有很多道理可以说,但是我真的缺乏写程序和学习.带有很大的盲目性在学在做,真正实现的东西和功能跟不上时代的形势.如今,打算做一个系统,主 ...

  7. 拜托,别再拿毒鸡汤祸害我们了,我们已经很苦很努力了

    我活得很好! 葫芦娃刚出生就能打妖怪,你的同龄人正在抛弃你! 哈利波特1岁用咒语弄死伏地魔,你的同龄人正在抛弃你! 孔融7岁会让梨,你活这么大白活了! 霍去病18岁当上直属特种部队指挥官突袭敌国完成斩 ...

  8. 超体分享 | 迭代思维:你感觉原地踏步,只是因为你想一步到位

    大家好,我是校长,今天我给大家分享一篇我的知识星球「突破圈层,个体崛起」里的文章,来自于超体:锟,他目前在星球里经过写作训练,写的越来越好了.文章如下: 我已经很努力了,可还是还在原地踏步... 有时 ...

  9. 别说“我已经很努力了”

    转自:http://blog.csdn.net/foruok/article/details/40247543 我们程序员的努力与挣扎有时非常尴尬,如果没有结果,都是徒然,都是说不得说不得-- 我自己 ...

最新文章

  1. 计算机三级偏硬汇编语言程序设计
  2. centos7 cacti php7,Centos7 cacti 使用笔记
  3. IBM RSA(Rational Software Architect)试用版下载地址
  4. 030_SpringBoot全局属性配置文件
  5. 【渝粤教育】国家开放大学2018年春季 0093-21T刑法 参考试题
  6. spring高级之AOP详解
  7. 2020全国高考作文题出炉!网友:信心满满的点开,一脸懵逼的退出
  8. 内Sane外Win:敏捷需要一流的项目经理
  9. 【网络攻防技术】实验七—— XSS攻击实验(Elgg)
  10. 【One Page】概率论复习|Probability Theory Review
  11. vue使用弹出框a-Modal
  12. LaTeX入门教程|自定义论文标题
  13. java linux 读取文件内容_java访问Linux服务器读取文件
  14. 51单片机之串口波特率配置
  15. python元组和字典的拆包
  16. java dispo lock_Java Row.getAs方法代码示例
  17. echart各个柱体设置不同颜色
  18. hp1005mfp打印机驱动下载,打印机驱动安装方法
  19. 浪潮服务器功耗计算器
  20. TCGA_RNA-seq_limma分析

热门文章

  1. SEO文章配图自动生成工具软件
  2. 时间格式转换,转时间戳,转UTC,转中国标准时间
  3. python布尔系列_python-布尔运算
  4. 如何使用python批量压缩图片_python 实现图片批量压缩的示例
  5. [FirefoxOS_开发环境]Linux和Ubuntu环境下B2G(Firefox OS)安装、编译、测试教程集合
  6. React---关于useCallback和useMemo的详解
  7. 部署ServletContext的时候报错 Class com.xxxxx.ContextServlet is not a Servlet
  8. 记录自己需要读的几本书
  9. 《SysML精粹》学习记录--第八章
  10. 查看电脑操作系统版本