两年的java好手路


两年的java高手路

  09年3月在广州,正式从事JAVA开发。那时候只是刚刚知道Java谓何物,Java基础也就很一般,坦白说学过23天 JavaSE,突击过15天SSH,写一个BBS。一个小公司做三个月的临时工。对于我从事的这份工作,这门语言完全处于茫然阶段,当时面试完以后,给我的评语是:基础还可以,框架完全是一团糟。



回想起来我很想感谢那个公司,让我技术提升了另外一层次,算是突破吧,又或叫做入门。试用期2个月,都在接受培训。从前台到后台,我很感谢我的导师,他在我眼里一直是个大牛,即便现在仍然是。后台代码写的漂亮,又精通前台,公司的页面组件基本上都有他参与开发。虽然他给我讲的并不多,每天只有15-30分钟时间,其余的都是自己在看公司资料库,写练习。重新过了一篇JAVA基础、SSH、TDD(测试驱动开发)、CC、Maven使用、Jquery、基础的CSS知识。虽不深入,但却也知其一二。试用期过后,分配到房地产事业部,主要工作职责主要维护公司的物业管理系统、人事管理系统。 其中人事系统是客户和我们自己公司都在使用的。当时我正好参加了公司的人事系统结项大会,开发这个系统的员工薪酬开支是:90W。整个系统文档是21G多,这可谓是我当时维护工作中最头疼的事。维护工作也算简单,主要是新增一些功能,或者客户打电话过来说由于一些误操作异致了一些问题,让帮忙解决脏数据之类的。这两个系统是截止目前为止,我所经历的最标准、最严格、最规范的系统。给我打上了很深的烙印,之后所开发的系统的我都会自觉不自觉的拿来跟它们比较。 唯一遗憾的是:我没有参与这两个系统的开发,没有亲身经历开发过程。 在公司呆了半年,我总觉得是不是太闲了一些,而且没在参与完整系统的开发,再加上部门的业务不太稳定,公司将发展重点放到影院产品线上,导致房地产行业部大量的人员流失。后来得知,后来我走后。整个部门被UC吃掉了,全部挖过去了。


在这家公司,最大的最大的收获就是:对于技术问题,不再有畏难情绪,相信技术的问题总有办法解决、然后就是学会了解决的问题了办法即Google。 到现在,只要碰到问题,我第一反应仍是Google,以至现在的公司的领导都说我很少拿问题出来讨论,其实我是习惯了依赖Google,Java水平也提升了一个程度。


10年的8月我到了深圳,由于缺乏工作经验、项目经验加之又是招聘淡季,找工作变得很困难。一个偶尔的机会去比亚迪打了一个月临时工~之后他们希望我留下来,但是由于待遇问题无法达成一致,最后只能作罢。9月份急匆匆的进了一家公司,其实这是一个我比较反感的公司,公司会统一发工作Q,上班时间禁止在线听歌之类的占用带宽的行为。各种各样的罚款,比较有意思的是公司的一个实习生,发工资是扣完种种之后,拿到只有800块。各种义务加班,连晚饭都不管。发生多起已离辞员工过来找公司清算薪资的,总之就是各种各样的扣和少发。工作气氛只能用一个词来形容:民怨沸腾。我多次跟老板沟通过,无效。总是得到各种承诺、各种许可,但却屡屡失言。三个月,我已经彻底失望,下定决心走人,便是我开始找工作,很快找到下家,然后提出离辞,公司也给力的就批了,走的时候我还跟老总说了一句:我不希望我再回来清算薪资问题。11年的元旦,我正式去新公司入职,也就是我现在的公司,后来上家确实也没有给我少发工资。



这份工作,虽然只有短短的三个月,但是让我认识到自己在沟通方面的优势,长项。敢于表达自己的观点、而且会讲事实摆依据去说服对方来认同我的观点。认识到自己的长处、优点是件幸福的事。



从11年的元旦至今,一直在现在的公司工作,主要是开发公司的产品租用平台。整个平台由我一个人设计开发,这是我之前所未经历的,所以其中有很多的辛酸和故事,当然也有很多值多兴奋的事情。平台在0.2版的系统进行重新开发,既要兼容之前的功能、又有新增功能。做需求分析,只用了一个时间,在现在看来确实太短了,前期需求的透彻、具体的环境的分析不够细致,导致后期开发的时间改动稍微有点点大,至少超出了我的预期。接着设计原型,公司的策划MM是新招来的,在这方面可谓是新手,Axure基本上不会用,对于原型设计更是没啥概念,恨不和一个界面列出所有的功能来。没办法,她天天夸我帅,我只好天天手把手的教她~~ 开个玩笑,其实她是孩子的妈了,只是长的一张娃娃脸。当然了,现在她的Axure用的那比我是好多了。接着进行技术选型上,和领导们有了意见分歧,在我看来,只是一个简单的信息存储系统 + 一定量rest通信服务,对性能,并发无要求。我强烈建议采用SSH,但领导对于SSH这些开源框架关注的并不多,对于代码的稳定性可靠性有置疑。无论我怎么说,他们坚定的坚持要我用自己封装一套出来,我并不怀疑我的沟通说服能力,但是当领导内心已经坚持,任我如何说,亦是无效。最后用了3个月,对JDBC、Serlvet进行了封装了,页面的渲染领导要求采用sitemesh,关于sitemesh公司里面,没有一个比较熟悉的人,只是在他们在用openfire时,觉得这东西不错,框架式页面搭建。可悲的是sitemesh这东西,于是从openfire中抠出来代码,一直加到组件中进行封装。可悲的是,这个代码绘制页面不够灵活,与我的需要有些出入,为了让它更灵活,符合我的需要,于是对这套代码进行了重写扩展。然后在第三个月开始设计数据库,开发,至今已经到了内测阶段。




这份工作,是我独立设计开发的第一套系统,对我的意义比较大。重新封装JDBC、事务处理、Servlet,也算是对我的基础知识的一个检测,但是暴露出来的问题的也很多:

需求分析、设计缺少经验、需要分析和系统设计应该是一个迭代的过程。先进行梗概的分析、把握。再对具体环境更行细节的分析。就拿订单而言:订单如何产生、产生以后会经过那几个状态、什么时候归档(完成),每个

环节涉及多个少角色、每个状态的转变是进行何种操作引起等等......而不是简单的分析一下订单的本身包括的信息就完事。前期的需求越是细致,精确,后期的改动就越小。
缺少宏观的设计,缺少整体的把握。比如技术的选型、页面组件的选取和采用。比如做开发的时候,碰到需要用redirect的方式从后台往前台传值的情况,而且这个值是动态的,需要我后来改近了自己写的组件也达到这样的功能,但是如果采用现成的struts,根本不需要浪费时间。又如前台的验证组件,弹出框架等组件都是到用时才去选择,这也是缺少一个整体把握的过程。
盲目的采用新技术。如采用sitemesh来渲染前面页面,在公司没有一个人对此项技术很了解的情况的盲目采用这种技术,导致了很多不必要的麻烦。在我开发中的很多问题都是由于这东西引起的、很多BUG也是由它引起,一个功能本来没有问题,但由于在渲染的主页面上定义了一个其它的功能,导致原本没问题的功能失效。最广泛的就是页面验证组件,大面积的失效。导致我重写验证。
经验缺少:如:页面上同是用table布局的地方,都要考虑到表格单元格内容过长,导致页面变形;比如某些字段在数据库中做了长度限制的,在前面前面要也做到统一;比如组件不能吞掉异常,事实中在开发中,所有的异常应该抛出来在同一层中进行处理;再如,组件的使用要统一,如使用Jquery。我为了避免在开发中会引入其它JS库,所以在渲染界面写了jQuery.noConflict();结果由于与弹出框架发生了冲突。导致我有些界面用jQuery,而有些界面则是用$来引用......


马上又是2012年的元旦了~意味着今年一年又过去了,从整体上对这二年进行一个总结,以及对接下来的工作和生活的一个规划。

 

读书方面:

在这二年中,主要看了如下几本书:

《Javascript权威指南》
《Javascript高级程序设计》(约三分之一)
《锋利的jQuery》
《AspectJ Cooking》
《MySQL开发者权威指南》(约三分之二)
《Spring in action第二版》(约二分之一)
《Java编程思想》
《Java核心技术第八版I、II卷》
《重构--改善既有代码的结构》(约三分之二)
《Java与设计模式》(目前只读了约三分一)
《UML与Rose2003从入门到精通》(正在读)
《时间管理幸福学》(正在读)
《简化你的时间》(正在读)

从整体上看完了struts1和2的源代码。很庆幸的是:从开始工作开始,把读书这个习惯坚持下来了,虽然中途偶尔也有三天打鱼、二天晒网。很多好奇,为什么很多书我没有读完。是这样很多东西,我只需要那部分,则先学那分部。比如我在看学习JQuery的时候,我发现我javascript的基础不够,于是我就看完了《Javascript权威指南》以及《Javascript高级程序设计》的JS面象对象、JS的DOM操作部分。至于其它部分,我不急需,所以暂且放置。比如,我看《重构》最后那分三之一,大部分都是讲设计的重构的,需要对设计模式有一定的理解,于是我开始系统的学设计模式,《Java与模式》一书中有大量的讲设计的,但是我发现我的UML,只会常用那几个,如类图、时序图,且都是用的时候临时学的。于是我开始学UML 与 Rose。



技术方面:

从只知其一不知其二,开始慢慢追逐技术的实现,从只懂用框架、开始理解源码。从能实现功能至追求代码的漂亮、开始养成重构的习惯。从停留在表层编码,开始关注设计,思考问题开始站在设计的高度来思考。



生活方面:

在2011年,谈了女朋友。她很贤惠、对我很好、对我的父母也很关心很好。烧的一手好菜,而且有很我的工作也很支持,我在看书,写博客的时候,她大忙碌在厨房,为我煮好吃的,给我解决了生活上的琐事。让我可以更专心的做我喜欢做的事。


薪资方面: 从2010到2011年初,薪水完成翻一番的目标,达到预期标准。遗憾的是:这一年内没有加薪~~


工作方面:只能用一词来形容:颠沛流离。由于学历,工作经验问题又或者是机遇问题一直没能找到比较理想的工作。虽然现在的的公司企业文化、工作气氛都很好,但是我始终感觉不到团队的气氛。



当然也有很多值得反思、检讨的方面:

心态还跟不上时事的转变。我已经不再是学生,是一个工作了2年的社会青年、工作对我而言是爱好、更是饭碗。我已经不再曾经的文艺小青年,我们即将面临结婚、生子、赡养父母等各项人生大事,不能抱着玩耍的心态,更需要对自己的人生负责。

工作状态不稳定。有时候上班会整天整天的聊Q,这一般多发生在后期改BUG阶段,我个人比较喜欢写核心代码、写新功能,其实无语是改BUG,还是写新功能,都是工作职责,此事可大可小,小可说缺乏工作热情,大可说不负责任。这点在今年9,10月份表现的很明显、爱在QQ上闲聊、在希赛上花太多时间。

没有掌握适一个好的工作法。工作缺乏计划,很多时候回到家,回想自己一天都干了什么时,大脑是一片空空的。

不会管理自己的时间。有时候一天天会很闲,一天天却又很忙,这点跟第三点有点类似。基本上是同一个类的问题。所以我买了2本管理时间的书。

这一年基本没有陪女朋友逛几次街。



在即将到来的2012,做一些如下计划:

读完《UML 与 ROSE》 《Java与模式》 《重构》 《Hibernte实战》及主要部分源码 《spring in action第二版》、《spring技术内幕》以及主要部分的源码 以及工作中需要用到的技术。

希望换到一家大公司、一个好的技术团队、接触标准的开发流程、完整参与一些大的项目开发、可以暂时终结我工作上颠沛流离、让我可以得以沉淀、在技术上突破一个层次。薪水上,再上涨2K。

如果顺利、下半年与女朋友结婚、她无要求我买房买车,我必须给她一个交待。

改掉爱在Q-Q上闲聊的习惯,适当减少来希赛 的时间(写博客除外)

掌握一套适合自己的工作方法,让自己的工作有条理有计划、学会管理自己时间。


雅琪MM的格言,我借用了。希望雅琪MM不要告我侵权^_^。


低头做事、抬头做人。 保持空杯心态,继续加油。

java 程序开发 Java基础知识

卧了个槽的 10 years, 10 months ago

  为啥希赛为啥不能上呢,上希赛不是学习吗,你用gooogle进行搜索,你可能通过链接进入希赛了,还有你对你的能力有把握吗,也许你没有接触过大公司,不是ssh就能解决问题的,我是刚刚毕业的,幸运的是拿得是有工作1年人的工资,从我入职到现在,我体会到有些东西不是在小公司里能学到的,没有鄙视你的意思,同时希望我两年之后也能达到你这个水平

披着斗篷的恶魔 answered 10 years, 10 months ago

  写的挺好,俺还没毕业,与君一比,是有点自信心过度了

比卡比卡的 answered 10 years, 10 months ago

  两年?高手?好犀利!
LZ你高道什么程度了?

一笑见红颜 answered 10 years, 10 months ago

  很庆幸楼主把读书这个习惯坚持下来了

大熊猫的下面 answered 10 years, 10 months ago

  我真的羡慕你有那样的一个女朋友。。真的!

比利就是他么 answered 10 years, 10 months ago

  哈哈,顶一个哦。同样是毕业两年的

囧虚的兄贵 answered 10 years, 10 months ago

  写的还是很不错的啦!
时间不多,加油!

asdfang answered 10 years, 10 months ago

  问楼主一个不相干的问题,你有这个经历没????


1,为什么博客的可视化编辑器,不能把字体大小自由设定。
每次发表的博客除了能加粗,都是固定字体大小。字体太小了,看的眼疼啊。


联系不上Iteye的管理员,只好问问大家了哈哈。谢谢

堕落的猴子 answered 10 years, 10 months ago

  很多高手都是从自己搞定一切开始,LZ有这样的经验我很羡慕。曾经读过一本小说《疯狂的程序员》,里面的主人公绝影让我印象深刻。

能对自己要求严格是好事,但不必过于苛刻,对得起自己就好(当然也要对得起你的girl friend)

希望能与LZ交个朋友!

不给力啊牲畜 answered 10 years, 10 months ago

  顶lz,工作半年迷惑中

gygy111 answered 10 years, 10 months ago

  如此幸福,建议楼主还是不要大动干戈。易经有云:一动,就有危险。听你所述,其实你已经走在架构的路线上了,现在大公司无非是CMMI和敏捷。但这都是工作模式,始终提高架构水平,才是王道。如有说错,还请原谅,小程序员路过。

toddy answered 10 years, 10 months ago

  嘛~~不是在希赛发表过了吗?
哈哈哈哈哈

哦咧哇刚大木 answered 10 years, 10 months ago

  很欣赏楼主。。。的自信

法老控D轨迹 answered 10 years, 10 months ago

Your Answer