关于第一份工作(07/09-07/11):
09年毕业后,去了珠海远光软件。对于第一份工作,在09年大的就业环境下,还是比较满意的,至今想起来,对给我提供了人生第一份工作的公司,还是满怀感激之情的,虽然我并不喜欢这家公司。
正式工作后,就遇上了国家电网对账平台的开发。个人比较轴,觉得别人写的代码不好,就会采用自己理解的方式。人生第一次编码实战,各种学校的设计模式、mvc思想就应用了上去。加之根本没接触过当时cs开发使用的delphi,导致最终系统功能没问题,但没办法维护及扩展。我有代码洁癖,看见混乱的代码,就想去重写,当我发现我无法重写自己的代码时,我收起了自己在看到别人“烂代码”时的轻视之心。很多所谓的xx思想,xx设计模式,它只是指导,不是准绳,当你尝试将xx设计模式套用到你的代码时,你就已经走上了不归路。简单不一定最好,但一定是好的。
工作了半年,公司五大基础系统之一管理对象系统就我一个人在负责了。个人表现挺好,同时老大也基本在处理对账平台需求及遗留问题,不怎么管我这边的工作,只问我要结果。管理对象系统管理的是国家电网所有的实体数据,业务比较复杂,导致实现逻辑也复杂。单用来维护国家电网各公司自己的管理对象数据的存储过程的实现,就有21个文件。直到最后,oracle数据库在效率上再也支撑不了业务了,就启动了系统在数据业务层面及数据库层面的优化。其实当时数据量不是最大的问题,数据量最大是个小表,不超过1亿,大部分表的数据量在几十万。这是一个非常大的调整,会影响公司整个系统。为了不对上层业务造成影响,需要在数据库层面和管理对象系统层面,封装调整带来的变化。简单说,我有一个根据公司id获取公司某类管理对象数据的接口(数据库或java),在调整后,这个语义不会变化。这样,对上层业务就不会产生影响。这次改造,让我深刻理解了接口编程,为什么spring95%的情况下接口只有一个实现任然要采用接口+实现的方式去编码,为什么代码要分biz、service、dao,为什么要将业务处理系统化。
2011年春节过后,公司架构调整,我去了维护组,虽然我早已经跟维护组的经理说过我不愿意加入。加之自己也觉得技术上得不到提升,在同事的引荐下,加入了阿里巴巴。
工作5年的一份总结(1)-07/09-07/11,布布扣,bubuko.com