十年戎码,今天说一说我的成长之路

不知不觉已经到了工作的第十个年头,很难想象时间会消逝得这么的快,真是印证了那句成语叫“白驹过隙"。

转眼我也从一个职场菜鸟变成了一名老兵,每当回想起以前的一段段经历时,总觉得自己应该要写点什么回顾一下。

生涯

2009年是不平凡的一年,那会儿 sun 公司被甲骨文收购了。当大家都在津津乐道的讨论着 Java 的未来的时候,我才刚开始我的第一份工作。

那时去的是一家做电信业务的小公司,主要做数据分析管理方面的软件。那会公司在生存方面还没有什么问题,由于老板跟客户高层的关系比较铁,基本上产品都能卖的出去,团队不容易饿死。

同事都很热情,基本也不会跟我们计较什么。除了工作上的热心帮助之外,时不时也会经常聚餐。而且那时候由于公司还有加班餐券的福利,导致我们晚上个个成了楼下真功夫的常客,就连店里的服务员都爱跟我们调侃:

"你们公司福利那么好阿,收转行的服务员吗?“

在技术方面,由于刚开始什么都不会(学校里真的什么都不会教,或者说自己除了混完学历什么都没学到..),做什么也缺乏自信。于是我偷偷下载了12G的 Java 教学视频,每天晚上看1-2小时...就这样从一个最简单的“鼠标画图” 小程序开始了我的程序开发之旅。同事老张知道了这事,给我推荐了不少好书,其中就包括《Effective Java》、《Java编程思想》这些,也就是后来,这些书让我对开发语言有了更加深入的掌握。

尤其是Effective 系列,到十年后的今天仍然是Java领域的经典必读之作

团队里一直都喜欢贯彻学习、改进方面的事情,这跟老板的做事风格也有很大关系。我最有印象的是有一次做代码Review时,一哥们的代码被拿出来当典型了,一个if/else 嵌套了十层... 后来这哥们几个月后也离职了。老张感慨说,"其实写代码也就是 if、else这些东西"..

那会想想也差不多如此,偶尔代码写得糟糕也是常事,只要不伤天害理不就行了。

尽管这家公司不大,但我所在的三年里也经历了许多令人意外的变动。

第一件事是高层的政治斗争,那会公司的研发副总是新上任的,其性格和做事方式上都非常强势,尤其是对于老员工一些混日子的态度特别看不惯,这点跟他非技术出身应该有很大的关系。于是在任职期间,他在公司里大搞特搞军事化管理,严查考勤,搞野外军训拓展。许多老员工都是敢怒不敢言,但由于老板从态度上更信任这位副总,很多人最终就选择了离职。

第二件事是研发总监的出轨,前面那件事里头,因为政治斗争的原因,公司里原来的总监也被离职了。这一位是后补的管理者,我对这个人的印象不深,只记得比较爱开玩笑,喜欢搞搞小团体。在公司里头推广了自研的一套web框架,一些核心项目的底层也给换成了这个框架。然后就是突然某一天人就没来上班了,才知道是这破事让许多人给知道了,然后是他带来的核心团队也一并走掉了,留下了一堆烂摊子。

第三件事跟管理层就没有什么关系,主要是公司业务的发展遇到了瓶颈,由于互联网的冲击,那会传统的软件厂商都是不好受的。

在2010年底,当时华为想搞云计算大范围开放了社招,公司里头能干的人基本都跳槽过去了。

而我呢,就在一次次的送别后自然而然的成为了项目组的骨干。当然除了人员离职的原因之外,我自身的成长也还是比较明显的。

这里提到了成长,一方面是对于企业而言,我的岗位能力提升了,对于公司的许多项目、流程机制都非常了解,已经具备带新人的条件。

另一方面,在个人技能上,对于Java开发的能力有了相对全面的掌握,包括不限于多线程并发、网络编程、JVM结构这些东西;

而在 Web 开发方面,基本上用SSH 做出一个网站项目也不是什么难事。得益于数据处理软件开发的特点,因此对各种关系型数据库都有涉猎。

之所以后来离开,也是因为觉得在那里的成长已经停滞了。当时有个说法叫 "程序员,三年跳一跳,越来越美妙"

“当我在谈论 jvm结构和 rmi 技术时,身边的同事只会聊起八卦和体育彩票的事情,而我压根也不喜欢博彩类的东西。”

当然另外一个原因是觉得薪资太低,觉得自己应该出去看一看新机会了。

接下来,在移动互联网的大潮中,我选择了一家处于上升期的企业,开始了另一段职业上的旅程。

我在初入职场时的一些经历,从自己个人的感受来说并不是特别的美好,既没有职位上的屌丝逆袭、也没有令人兴奋的意外成长,但也许这也是很多人所经历过的,毕竟我们都是"平凡"的人,一旦平凡就只能是 "抱着不平凡的梦中度过这平凡的一生" ...

成长期的互联网公司充满了开放和创新的气氛,这话不假。也就是到了这里才知道原来除了Java 和 ssh 三大框架之外,还有那么多人在使用其他的编程技术比如 Php 的 Lamp,Python 等等,数据库除了Oracle 之外,还有那么多人在用 MySQL.Memcache 这些开源的数据库中间件,而之前还曾天真的认为数据库是 Oracle 等商业数据库的天下,MySQL 只是学生才用的玩意,真觉得自己像个井底之蛙。

所有的这些现象大概已经告示了公司的技术流派: 拥抱开源!

刚开始在这边的时候,我觉得工作很轻松,因为所有的压力都被我的求知欲所覆盖。

后来磕磕碰碰的又发生了很多事情,不过还好,我一直都在稳定的成长。这里就不一一赘述了。

总结

总结这些年的工作经验时,其实发现就是一个推翻重构的过程,原本自己以为的东西,被自己的认知所颠覆,建立新的观点。

曾经一位前辈跟我讲过,只要你一直在学习,当你做了五六年之后会达到一个小高峰。

的确是这样的,当时的我觉得自己技术还不错,几乎什么系统都可以去做,甚至觉得很多事情好像都很容易。所以经历了一次次的跌倒,不过还好的是我每次都能够总结经验,积极学习新的知识。

失败应该是让我们总结教训,利用失败给我们带来新的感悟和理解。

学习并不是为了避免失败,而是面对失败知道该如何应对,失败的越多,我们应对的方法就越多,成功的机会就会更大,千万不要停留在失败的习惯之中。

如何学习新知识问题,我认为如果不是长期要跟这门技术打交道,没有必要对着门技术做太深的研究,技术那么多,你根本没有时间样样精通,这里遵守的几点原则:

1:二八原则:记得曾经有人说过:百分之八十的问题只需要百分之二十的知识就可以解决,同样对于一门新技术,可能你买一本厚厚的图书,那么你是否需要全部看完呢??假设你看完这本书,然后再去实践,你会发现其实你只需要使用到了这本书的百分之二十,也就是说:你花了一百的精力学习,其实你只用到了百分之二十的知识。新知识是无穷的,而人的精力是有限的,有限的精力和无限的新知识也就决定你不可能全部去这样做,你需要选择性的去学习,选择书中的百分之二十的知识去学习。

2:为了工作去学习:听到这个词可能会有人怀疑,怎么能抱着这样的心态学习呢???

下面听我解释:我们学习的目的是什么??是为了解决工作上遇到的问题还是为了以后?

如果为了以后,请精通一两门语言。如果是为了解决工作问题的,那请继续看下去:举个例子:同样看一本书,你是自己漫无目的的学习和看收获的多?还是你知道你需要了解学习什么的而去看收获的多?如果你不是张无忌也不是神童侠,那么显然带着目的的学习效果高于眉毛胡子一大把的学习,而什么是你的学习目的呢?

在此分享一份自己收藏的适合2-5年Java程序员学习的架构路线图:

说到最后给大家免费分享一波福利吧!我自己收集了一些Java资料,里面就包涵了一些BAT面试资料,以及一些 Java 高并发、分布式、微服务、高性能、源码分析、JVM等技术资料

感兴趣的请加Java群:171662117,可以免费来群里下载Java资料

对Java技术,架构技术感兴趣的同学,欢迎加群,一起学习,相互讨论。

猜你喜欢

转载自blog.csdn.net/leonardc/article/details/89022687
今日推荐