我的奋斗——从印刷工人到地理信息大数据系统程序员

       首先声明本文不存在任何工作歧视,每个人只要找到适合自己并且自己喜欢的岗位都是在为社会主义为人类的发展做出自己的贡献。

       2011年从湖南某985高校仪器专业毕业,扛着大包小包先火车到西安然后汽车到兰州,之后出租车到单位,一路风尘仆仆。离开熟悉的环境,离开朝夕相处的同学只身一人来到一个陌生的城市。路途的艰辛倒也是早就司空见惯,然而迎接我的却是不堪回首的人生新篇章。

       刚到单位迎接我的就是一个庞然大物——印刷机,可是如果能当个印刷工人倒也是个技术活了,刚开始一个月每天十几个小时干的是印刷成品的搬运、清理、检查等工作,所以我当时真的还算不上是一个印刷工人。

       这里的工作不光是体力上的消耗,最大的是精神上的痛苦。直接将刚毕业的我的满腔抱负磨的一点不剩,对人生、世界都失去了想法。终日郁闷,一直在想难道这就是我这辈子要从事的工作,只有两个字——迷茫,每天空闲的时候就在听《我的未来不是梦》,可是我的未来在哪里,完全看不到。

       过完这一个月之后,工作稍有转变,但依然是自己不感兴趣的事情,倒也变的轻松了些,然而那种整日无所事事也让人绝望和痛苦。

       过了一段时间觉得这样不行,我必须要改变,于是重操旧业,其实毕业前也有一点准备,基本上主要的电子实验相关设备都带到了兰州,又在网上买了块单片机开发板,就把宿舍当成实验室,下班就是捣鼓单片机,每天晚上弄到两三点,早上六点多起床接着弄,上班找机会偷偷眯一会儿。就这样坚持了有几个月,明显51已经66的了。其实大学时对软件毫不感兴趣,主要是捣鼓电路,参加竞赛我也是只复责硬件部分,这时候不行了,软硬件一人来,不会的问题也没人请教,最悲催的是连网都上不了,想查资料都不行,只能参考买的书和自己反复捣鼓、折腾。

       这段时间过的非常充实而有意义,过了大概半年碰到一个机遇,单位里的一名高级工程师需要找个助手帮其修改完善一个印刷质量管理系统,看我似乎这方面有那么点意思就选中了我,这个系统用的是vf,一个比较古老的语言,由于接收新的工作以及单片机自己所能查找到的资料的内容基本研究完了,于是开始转向软件开发,有了单片机C语言的基础似乎软件开发上手也很容易,用同样的劲头学习了VB,然后转向JAVA,又学习了HTML、JS、CSS、Jquery,之后是JSP、SSH等框架,然后数据库,接着又转向c#:WINFORM、ASP.NET、MVC等等各种。当时不分有用没用,就是学,现在来看虽然当时学的很乱,但是学到了很多基础东西,这为自己综合编程的能力打下了坚实的基础,因为学会了各种语言的hello world,也为后来分布式、地理信息系统等打下了良好的基础。虽然看似轻描淡写,但是当时真的过程是很崩溃的,没有人知道,没有人可以问,没有人交流,一度感觉自己得了抑郁症,在宿舍中不能听到一点其他声音,在这里也对当时自己态度不好表示道歉。

       用了将近一年时间边学习软件开发边学习业务逻辑完成了管理系统的升级,现在来看当时的代码确实写的很烂,不过也算是自己第一个成品。

       然后又开始了边干杂活边自己摸索的日子,同时编写小程序解决工作中遇到的问题以及提高生产效率、解放重复劳动等,中间也研究了模式识别、图像处理等等,基础也有了进一步的提升。同样凡是跟编程相关的自己能接触到的基本都想学。

     这样又持续了一两年,单位成立了一个新部门,跟地理信息系统有点关系,于是我又来到了这个部门,面对的又是新问题,自己虽然已经学习了几年编程但是从来没接触过地理信息系统,只能又是边学习边摸索,继续每天撸代码到凌晨,很快就写出了一个涉及到很多方面的一个系统,包含网络爬虫,地理信息数据处理,地图显示等等功能,这个系统真的是穷尽了我当时所掌握的所有编程知识,但是现在来看仍然显的很烂,因为涉及到的东西太多,程序毫无整洁可言,完全是代码块的堆砌,基本没有重构。当然过程中也学习了网络知识,服务器知识等等。这段时间自己确实有了很大的提升。

     完成了此系统后又接手一个新项目,实现一个分布式的地理信息系统,这逼格又蹭蹭蹭的往上彪很多,没办法,从基础的haoop,spark安装开始学起,对ubuntu系统的操作要求也很高,所有的都是从头学起。接着老板又找到一个基于spark的开源分布式地理信息框架geotrellis(写了很多篇关于此框架的博客,有兴趣的可以浏览),于是又只能闷着头学,一点一点的根据老板提的需求边学习地理信息业务逻辑,边研究geotrellis,边基于它实现功能。同时也系统学习了代码整洁之道、代码重构等,边撸边重构,现在我自认为在代码整洁性方面还是可以稍微显摆一下的,同时我觉得代码整洁以及重构不光是让代码看上去舒服,其对你的系统功能实现,代码优化、性能优化等等都会有莫大的好处。这段时间对自己的能力提升是一个由量变到质变的过程。于是自己也开始走向一个大数据地理信息系统开发者。

     路漫漫其修远兮,要学的东西也还有很多很多,用乔布斯的话说就是stay hungry,stay foolish。只有让自己始终保持这种饥饿感才能不断的一步步的量变到质变。

     同时我觉得一个人的人文情怀会决定你所能达到的最终高度以及思考问题的方式,所以大学开始养成了读书的习惯,读书看似无用,但是我觉得这一定是各行各业的终极关怀。只有思想先上去了,才会引导你朝着正确的路一步步往下走去。

     今天啰啰嗦嗦写这么多,不是为了展示自己学过多少东西,只是为了记录走过的路,让自己永远不要忘记自己的初心,不能在各种现实、困难之前低了头,坚定的朝着自己想要的路走下去,因为我知道我的未来不是梦。2016圣诞夜于兰州。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SEO

「知识」2018年的搜索引擎优化该怎么去做?

36012
来自专栏自动化测试实战

面试如何发挥才能拿到高于自己当前水平的工资?

大家好久不见啦~谢谢大家对船长的关注。最近船长认识了好多有着3-5年工作经验可是工资还没到15k的朋友。所以船长觉得有必要和大家说一下该如何面试,才能拿到高于自...

1163
来自专栏java一日一条

自由程序员的3个开发技巧

我们有三个系列的小技巧要分享:与你的客户沟通,保护你的声誉以及解决常见的自由职业问题。下面让我们开始吧!

701
来自专栏Java技术交流群809340374

一个十年JAVA老程序员成长之路分享

我搞JAVA也有些日子了, 因为我比较贪玩,上进心不那么强, 总是逼不得已为了高薪跳槽才去学习, 所以也没混成什么大牛, 但好在现在也已经成家立业, 小日子过的...

1990
来自专栏腾讯社交用户体验设计

产品趋势的设计软着陆

1733
来自专栏大数据文摘

数据可视化入门——我该从何开始?

23410
来自专栏Java学习网

一个程序员的时间管理

  如果每天都有86400元进入你的银行户头,而你必须当天用光,你会如何运用这笔钱? 天下真有这样的好事吗?   是的,而且这种好事每天都在发生着,你真的有这...

2714
来自专栏北京马哥教育

故障管理工作方法和技巧分享

做故障管理这么久,对怎样才能做好这个工作有一些切身感受,除去一些只可意会不可言传的部分,这次我把能想到的工作技巧都总结出来了。 由于这个岗位不是互联网公司6大...

3225
来自专栏玉树芝兰

什么是第一性原理?

大家都知道了伊龙马斯克(Elon Musk)把这个原理用得好,可以把火箭发射成本降低到原先的几十甚至上百分之一。

6290
来自专栏京东技术

京东商城技术架构部 | 我为11.11保驾护航

京东快速发展的同时,应用规模、数据中心以及机器的规模都同步倍增,在面对如此大规模的机器,应运而生了京东数据中心操作系统(JDOS,JingdongDatacen...

1463

扫码关注云+社区

领取腾讯云代金券