我的程序员之路_1
起源
其实刚上大学的时候,完全没有想到自己毕业后会成为一个程序员,并且喜欢上这份工作。
大三的时候,专业内的计算机相关课程开始多了起来,从微机原理,单片机, 嵌入式系统到, linux操作系统,然后再到后来的计算机语言课程VHDL,c#, 以及java.我对学习的兴趣开始提升了起来,其实以前是很少去上课的,以为以前的课程多是电路级别和芯片级别。虽说小时候很喜欢玩各种电路,但不知道为什么,长大了进实验室,看到密密麻麻的各种线路就开始觉得烦了。
反而是开始学习硬件上层的的计算机相关的课程时就提起了兴趣。学习linux操作系统的时候更是坐在最前面,当然不排除一个可能,当初一直觉得讲授linux这个课程的老师特别有气质。
c#的实验, java的实验,每次都做的很认真,甚至最后做java节课时的课程设计的时候,居然不知不觉的做了连续36个时,还是48个小时,具体我也忘了,反正是很拼的那种,最后居然也不觉得累,然后做完就给同学抄了。
萌芽
那时候我们学院虽说软硬兼修,但是大部分老师还是偏向硬件一点,做软件好像没什么水准似的。也老师跟我们关注学好硬件的必要性,强调软件的老师就不那么多了,但刚好教授我软件的老师都很喜欢。虽然学院里面的氛围是这样的,但是大概就这个时候就有想做软件的萌芽了. 室友也开玩笑说,饶翔啊,你毕业了不会真的去做程序员吧。
那时候确实应该是准备做程序员了, 不然怎么会对编码那么热情呢.
进击
然后大三一年就开始做程序员的打算,开始复习的是 c++, 通读了c++的基础书籍,里面的例子大都自己敲过。还做了一个计算器,研究了一下用c++ 处理位图。然后呢不知什么时候又开始看Java了,然后大三的时候为了加强自己的能力,参加了达内公司java培训,算是把自己的java基础又好好复习了一遍。
然后大四找工作,来到了坑跌的中信网科,以为是做自己产品的。结果一过来才知道,整个部分都被外派到了中信银行做服务。一开始也并不介意,因为刚开始工作,感觉自己什么都不会,只要有个地方学习就好。来到中信银行后,开始学习银行的ucp框架,领导也不给分活,就这样活生生的看了两个月文档。每天都如做针毡,很是苦恼。但就在自己犹豫要不要辞职换家公司的时候,jh突然跑过来跟我说,饶翔,跟我做项目吧。
那时候别提有多高兴了,终于可以做事了。刚开始俊华会跟我说一下需要的细节,然后要我思考实现,写方案给他审核,然后指点我一下,再放手我去做。但是后面无论是什么项目,都基本上把需求仍给我就不大管了,而我则经常找他问一些业务上的知识,当然好几次多系统沟通,我拿下不下来,都是他打的电话。
总的来说,跟着俊华做事的那段时间,他没有过问过我任何实现上的细节,而且整个流程都交给我去做,非常信任我,我出错了就跟我但责任。我有时候都幻觉我到底是不是他弟弟了,对我这么好。
认清
然而到去年年末,银行项目也做了一些,也知道了这里该怎么做事,有什么注意的东西。但是我却越发不喜欢这里的工作环境,主要是在开发上,所有的人都不重视技术,对于编码也没有放手施为的可能,领导的要求是不出错,稳定,任何领导视为可能影响稳定的因素都不可行,关键是行方领导技术有懂得不多。所以领导认可的方式最经常的是就是 ctrl-c ,ctrl-v。
而确实公司的人都用着最原始的技术,做java居然还在用jdk1.5,国内的firefly版本控制,配置的开发机又老旧,经常打开一个软件都要等半天,卡机是常有的事,哪像自己的机器直接秒开。关键还不许上网,作为一个开发人员,不懂上网,就等于是眼睛瞎了一半,得了白内障。
公司的人也不重视技术。至少在我看来,我接触的每个人,要不就是浑浑噩噩,要不对未来最好的规划就是学好业务了去重中信银行做行员,来指挥像他们现在一样的人。
而我自己的工作呢,在做项目的时候,整个人有90%的时间都是用来沟通和写文档的,用来开发的时间实在太少,仅靠在公司的工作,真的很难在技术上有所成长。而我更是抓住一切的可能来编码,任何统计类任务,只要交给我,尽量写一个java程序去事项。后来感叹于shell的强大,又开始用心的学习shell,awk, sed。后来用java写的工具或者完成的任务可能只有五六个,但是用shell完成的任务就多些,大概有十来个,当然排除掉一些单行的小脚本。总结一下自己写的工具吧。
java
- 自动构建生产包工具。 开始我看他们打包都是手动打的,于是就写了一个自动索引文件打上线包和生成shell上线脚本的工具。(后来我才发现已经有先辈写了这个工具了)
- 自动生成客户端配置文件工具
- 自动统计服务器段验签字段工具
- 自动根据excel文档数据和代码文档统计接口数据工具
- 自动根据数据库字段文本,excel文档,工程代码统计接口字段信息工具
shell, awk, sed
- 上线脚本转换工具
- 日志备份工具
- class文件批量对比工具
- 生产库数据验证工具
- IT环境抽包工具
- 本地工程源码包抽包工具
- javaBean代码生成工具
- 插入sql批量生成工具
反正公司的开发环境, 硬件环境, 工作内容,学习环境都是不是我想要的。
干脆辞职吧,于是我要下周辞职了。
跨栏
我要换工作,新的公司要有一下几个环境
- 开放的开发氛围
- 工作内容应以开发为主,要相对单纯
- 要有良好的学习氛围
- 要有好的硬件环境
- 工资 10k+
我要好好准备
- 核心竞争力 java基础,spring思想 shell, awk, sed
- 个人品质 强大的上手能力 强大的学习冲动和学习能力 细心,耐心