毕业这一年(工作篇)
算起来,距离2013.07.04与“西安美林电子有限责任公司”签三年的劳动合同的日期已经一年有余了,就在前不久,公司更名为“西安美林数据股份有限公司”,这次更名旨在告诉业界:“我现在也是有标签的,看我名字,就知道我是搞大数据的”。显得高大尚了。
一段无关的描述过后插入一个小插曲,这得从2013.01月X日说起,日子记不住了。跟大部分人一样,我当时也是为了寻得一份工作,年底了,陪兄弟一起北漂过一两周,兄弟找到了工作,而我的简历无人问津。我们的简历的差别是工作经历的差别,我没有虚写工作经验,而兄弟写了两年的工作经验,所以他的面试预约比较多,我则是去北京溜达了一圈,快过年了,返回西安。
事实证明,简历上多写点工作经验是一中正确可靠抓取眼球的方式,而我始终一根筋不愿意虚报工作经历,因为这个时候我是一个转行者,还没有毕业。离过年还有二十来天,我也侥幸地把简历的工作经验写成2年,果不其然,面试预约电话不断,面试了几家,反正自己这时候只当是练练了,靠近年底了,一些中小型公司的出的面试题都不在话下,当然通常公司给我的第一印象都让我在心里早已被拒绝。这里面不得不提的是遇到一个长安大学先我七届的学长,是一家分公司的研发部经理,当然笔试对我来说是小Case了,到面试的时候,只见他睡眼惺忪哈欠连绵地来到一间拥挤的办公室,问了我几个关于Spring和Struts的问题,我连写带讲解给他说原理,画原理图,可是他貌似不领情,一副不耐烦的,给我传达的是:”我要睡觉!”。后来聊天中,得知这几天都在通宵赶工,谈薪资的时候他甩了一句话:“现在本科生试用期顶多是个2,转正是个3”。心里不但没有对这位学长产生敬意,反而偷偷的鄙视了一回,后话不用说,没有考虑。
经过几次的面试,依然没着落,屡次受挫也让自己也变得“谈笑风生”了,面对面试官,紧张少了,多了从容和调侃,当然对话的真诚这个我最看重的一点没有少,即便是中软面试最后我也说明了工作经验。2013.01.X接到中软国际的面试邀请,中软这家公司我之前了解过,一方面因为自己也不太愿意去外包公司,尤其是华为做外包,当然年轻能够去华为锻炼也是一个好的机会,显然我没有抓住这个机会。听说给华为做外包付出同样的劳动,得到的是华为内部的一半的薪酬,这还是相比于其他公司近两倍的工作时间,这个数字不准确,但不是重点,重点是我应邀过去参加了,年底了,我想看看中软国际是想要干神马。到了之后让我等了一个小时,做了一套笔试题,没有什么难度,接下来一个看着激情饱满,也很厚道的帅哥把我带到一间面试专用的小房间,聊了一会儿,不知道是什么东西吸引了他,之后他叫了上级领导来跟我聊。这个人就是徐恩胜,四十来岁了,但是一开口就能够感觉到他的热情和激情,而且滔滔不绝也没让我觉得虚假。他直言不讳的给我说他的经历,给了我诸多良好建议。我们俩都是转行涉足IT领域的,我被他的热情和真诚打动了,然后如实给他说我简历上的工作经验是假的,他貌似更加感兴趣了,或许我身上散发出让他欣赏的品质,他给我留了一张名片让我保持联系,有好的机会会通知我,我也没有多想,心存感激之余,也没有把这放在心上。回到家里,继续自我充电。
这么长篇幅的小插曲引来了春季招聘会。我大学生涯的最后一个学期开始了,开始游走于各个学校的校园招聘,3月份一个月都在东奔西走,最后在西工大面试的一家公司给我提供了OFFER,这让我一直绷着的神经稍微缓解了一下。那天在大雁塔上,接到徐哥的电话,得他跳到另一家公司了,然后推荐我去面试,我惊讶的是时隔两个月了,他果真主动给我打电话。心里无比感激,去了他推荐的公司面试,也就是“西安美林数据股份有限公司”,面试前的一轮笔试,题目基础也全面,接着俩个HR被我的调侃逗得欢声笑语,后来二面通过了,签了三方协议的我加入了公司去年秋季招聘的的应届生队伍中,开始了实习生活。
一次貌似偶然的机会,让我没有选择西工大宣讲的那家公司。
来到美林,HR的高效热情给我留下了美好的第一印象,公司的环境和氛围也充满了活力,因为一群初生牛犊的应届生在一起,青春活力是难免的。刚毕业的我热情澎湃,跟公司签合同那天我被告知分到了数据挖掘研究中心,据说是公司的核心部分,心里小小的高兴了一下下。积极的工作态度和善于解决问题的工作方式,我提前转正了,经过两个月的自我学习和培训,我开始接收了一个基于数据挖掘平台的二次开发的项目,慢慢的,项目经理将一些项目管理的职责交由给我执行,对这种锻炼机会我很是珍惜,每天犹如打了鸡血,白天8个小时的效率达到了顶峰,业余时间依然精神饱满进行充电、锻炼身体。半年时间过去了,因为自己的工作态度一直良好加上被领导认可的工作能力,我被评为优秀新人,主持了年会,获得了冬季越野赛的第一名,赢下了一辆毕业前就想买的山地车。说这些并不是在炫耀自己活得的荣誉。《毕业这一年(大学时代篇)》中讲到自己是一个不够自信的人,为了告诉自己自信的获得是需要时间去积累的,唯有付出了,经历过,收获真正属于自己的果实。完全投入工作半年,换取回来的这些东西比不过自己对未来发展方向的认识,比不上心灵的那点感悟。延续了我大学时代“认识自己”的浩大工程,半年忙碌的工作生活,与后来的情况形成了巨大的反差,让我自己开始慢慢思考我的职业生涯了,说职业没有说事业,毫不虚假,因为这时候自己还没有找到自己的事业起点。
年终总结,年会,年终奖,公司该有的,美林也有,只是差别有点大。作为新人,对年终奖的还是心存期盼的,可结果毫不虚伪的说,让我很失望,优秀员工2000,其他1000,是3个0。直接后果是,导致我这个月光族的90后过年没钱花,上演了一场小小的伤感剧。开开心心过完年后,开始了新一年的工作,依然那么的精神饱满。
……七月份过去了。
这五个月,让我思考了很多的问题,之前听过诸如:“国内大部分软件都是用不起来的”、“国内大部分软件公司缺乏节操”,没涉足这个行业之前我没有记在心里,半年后,意识到这些说法一点儿也不过分,殊不知,这给我这颗热爱软件的赤诚之心带来了不小的冲击,接下来的段子唱唱工作中的那些事与我的态度的种种冲击。喝口茶,稍后驾驶思维碰碰车。
节约成本VS
质量保证
可以这么说,所有公司都在力求解决成本。就好比,所有职业偷盗者都希望自己花费最少的力气盗取更多他人的果实。但盗亦有道这条行业规则,在鞭笞着偷盗行业,我也没有核实偷盗行业是不是真的存在,暂且略过。“生意人,唯利是图;商人,有所为有所不为;企业家,肩负社会使命感”,同样是在挣钱,生意人只要有利于自己,什么事也可以干,甚至损人利己的事,商人也是追求利益最大化,但是在权衡中进行取舍,做自己该做的事,挣自己该挣的钱,而企业家通过为社会作出贡献的同时赚取利益,他们身上肩负的社会责任让他们不能作出对社会有害的的事情,公益慈善形象大使标签被强加到他们身上。
企业节约成本来为自身争取更大的利益无可厚非,但是节约成本和保证质量是需要保持平衡的一杆天平秤,我这么说并不是我对这个行业了解很多。我以一颗赤诚之心,力求提升自己,力求写出高质量的代码,可是当我越是努力去这么做的时候,我与团队的风格格格不入。在不能改变或影响团队之前,我一直没有放弃提升自己,让自己写出高质量的代码。二次开发中,当我看到这里面代码的时候,我心里写出这些代码的人无比的不解,倍感纳闷并不是我技术比他们高超多少,我是为这种的编码的不负责任感到痛心,为了完成工作任务,提交表面上软件功能正常,而实际上极难维护的代码。我深深问了自己一个问题:“难道现在中国IT行业应该就是这种状况吗?”,这也是一个永远没有答案的问题。
出现这种情况,我可以说是这些开发人员不负责任,可是将问题提到一个高层次,不得不说说项目管理。项目管理在现在的信息化系统研发中是一个不可忽略的环节。公司做不到在招人环节严格把关,那么项目管理再不严格把关,由于开发人员技能素养的良莠不齐,加上QA只管例行职责,我们的系统的编码只会杂乱无章,长期积累下去就没法维护,提交给客户的是外表完整,内部溃烂的一套经不起考验的系统,试想这样是在为客户着想吗?客户如果真的大幅度使用起来,这不是搬石头砸自己脚吗?为什么会有这些现象,无非是畸形地节约成本,想用最少的钱招最牛的人,领导干涉细节,赶鸭子上架,逼着开发人员进行编码实现,不顾系统的设计,不考虑后期的扩展,冠冕堂皇说什么运用敏捷开发,让项目陷入无法维护的时候也无力回天,一错将错,应付客户,侥幸验收通过。可是真的节约成本了吗?毫无意义,南辕北辙。我亲身经历的这个Pluto数据挖掘平台,抄袭无人驾驭得了技术架构,没有任何软件设计,平台开发规范混乱,为了应付国网测评与IBM一较高低,组织人员进行维护,修修补补,效率低的一塌糊涂,领导不管,只要结果,可这是候想要灵活扩展、易维护,可能吗?不可能,只有朝着错误的方向一错再错,评测需要什么,关注什么,以时间来衡量工作,最后所有的研发人员心理明白,这个系统被采购了,4千万,如果国网不是拿去摆着看的,一旦人家用起来,这个系统将是千仓百孔,面临的将是灾难性的维护,如果没有被采购,又好像这么多天的加班白费了?我只参与了两个新模块的开发,我的工作态度决定了我无法交差式得去完成任务,重构和设计是我开始必须思考的问题,而这两点也成了我后期开发路上的一盏明灯。我一直在质量和时间中寻求一种平衡,提升自己的技能,让自己在公司力求节约成本的前提下提高软件的质量,可是当我的影响还没有扩散出来时,软件的质量已经充斥着浓浓臭味,这就不得调侃一下那种Ctrl+C和Ctrl+V的编码匠了,进入下一站。
粘贴复制VS
重构优化
当我问一些人,为什么一样的代码能出现多次?得到的回答是:“这是为了更方便,更省事啊,因为Crtl+C、Ctrl+V用着很方便,不用任何思考,而且很娴熟。”谁说不是呢,Crtl+C、Ctrl+V嗒嗒两下,方便快捷又精确。
还是说说我在参与Pluto3.0平台优化的感受,代码到处飘着臭味,这种臭并不是臭豆腐的那种让人流连忘返的臭,准确的说是一种闻不着看不见的视觉腐臭。毫不吹嘘,代码重复是被业界标榜为最臭的代码,这是编码中首要避免的。当然写出这种代码也不是不能接受的,重点是在问到臭味之后就要想办法去除了。可是那些工作了多年的“资深级”程序员从来都认为这样是一项风险很大的工作,会导致系统的不稳定,所以他们有足够的理由乐此不疲的进行复制粘贴,修修补补。最让我记得清晰的一次是,一个老同事闻到了代码臭味,但是保守地选择了一种糟糕的方式,后来栽在了这里,进退维谷,后悔不已。我丝毫没有幸灾乐祸,我纳闷的是一个工作了这么多年的程序员能做出这样的判断和决定?!。针对这种事情,让我最为惋惜的一点是,一个有7年工作经验的同事,和项目组其他成员讨论项目问题的时候,都分析出问题原因,来了句:“管他的,咱就先这么做吧,有问题了留给后面的人吧”。这就是原话。然后他们采取将代码一遍遍的复制,而不是对代码进行重构,殊不知这深深的埋下了隐形地雷。
上述现象,重点说明重复代码是万万不应该出现的,一旦发现后一定要采取措施消除,另一方面为了说明能写出来高质量代码、能够进行良好软件设计真的与工作经验无直接关系,而关乎于个人的工作态度和技能素养。
慢慢地,我认识到了核心的一点,那些说设计模式麻烦的程序员,并不是他们不愿意用设计模式,而是他们不知道如何将设计模式结合业务运用在系统中,索性不愿意思考,节约了数万个陈旧的脑细胞,阻止了一批新的脑细胞就位任职。并且,良好的编码习惯是从一开始养成的,那些从来不反思自己编码的程序员,多年后依然是一个憨厚十足的编码匠,每天照搬现成的API文档进行移植集成,而从不会汲取这些框架的设计思想的精髓,一旦出现问题便无从招架,甚至因为理解肤浅导致技术风险,轻则从头再来,重则失去客户信任,搬起砖头砸自己的脚。
批头盖脸批判了一番项目组存在的问题,丝毫不是为了体现自己的优越感。所有人都看到了问题,但意识到问题严重性的人并不多,尤其是领导,一个不懂技术的领导过多关注项目细节,一味催着快速开发,节约成本,摒弃架构和设计。工作中不是每个人都能保持最初的那颗赤诚之心,面对领导,一些人无限妥协,宁可下来责骂自己干的事情让自己倍受屈辱,而不愿意跟领导面对面提出问题,更不谈共同解决问题。毕业一年的我,依然怀着一颗赤诚之心,干着自己热爱的行业,每天都能以饱满的精神面对我的工作,怀抱美好的希望跟领导反馈说明了自己的想法,得到的是领导欣赏的回应。还是那句话,光抱怨是没有任何作用的,我在领导面前“抱怨一番”之后,接下来的必须是献计献策。
我敢直面领导反应这些问题的严重性,当然肚里肯定有那么点小货的。一阵忙碌完毕,我两天的时间开始总结平台的问题和相应的解决方案,两天时间不是我在草草了事,之前对这些问题的思考和记录,让我现在能够快速梳理出来。八大方面的问题,有四个是项目管理的问题,有三个是架构设计的问题,还有一个是新技术运用集成的问题。提交直接负责人看了之后,从他的眼光中,我明白一些事情,这些问题,他心里比我清楚,但是之所以一直没有去改善,因为没有一个人把他梳理总结出来。最后一个核心问题就是,压根不愿意投入人力去进行完善,然后,自己提出的问题和解决方案,我自己去解决,我没有退缩畏惧,欣然接受,尽自己最大的努力去完善,力所不及的就请教有经验的同事,可是这俨然是一场空梦,整个项目组只有一个老同事能够给我提供相关的建议,而且他正在忙着负责一个可视化的项目。其他的都是设计模式和重构的冷漠派。这并没有减低我重构改善的激情,不断地自我充电和思考,多次尝试,让整个平台的设计提高了一个层次。但是,好景不长,我正在优化和重构的系统慢慢处于一个被冷落的边缘,没有针对这个优化的计划,没有目标,因为没有项目支撑,产品究竟只是一个空支架,至少在这里一直是这样,这就是一家数据挖掘公司对待自己的所谓核心产品“数据挖掘平台”的态度,态度决定高度,我满腔的热情被公司对技术的态度一次次泼着凉水。引起了我深刻反思:这里,不是我梦想的孵化地,在这里我实现不了我的理想。
我的理想
梦想和理想说起来是一个高大尚的主题,但我的理想很平凡,我的梦想也不是遥不可及。
谈理想前,说说我最近的改变。系统的维护痛苦,让沉浸在业务逻辑实现中的我开始思考,“穷则思,思则变,变则通,通则久”。一个个问题接踵而至,“怎么可以这样编写代码?”、“代码怎么这么难维护?”、“这真的是在节约成本吗?”、“我要照这种状况开发下去吗?”等等,我想去影响团队,必须先从自己做起,代码重构、设计模式、敏捷开发、软件设计,我将自己的视角向这些方面转移,转移不代表我抛弃了技术的重要性,反而更加让我重视技术的正确运用。纵然在项目中运用了各种高端技术,如果没有一个好的软件设计针和系统架构对这些技术进行管理,这只会增加系统的负荷,给后期的维护带来沉重的负担。良好地编码习惯、不断的自我充电、掌握设计模式、学习软件设计,这些是我一开始对自己的要求,也是现在我需要做的事情。某天,部门领导找到我,说我最近一直在谈设计模式和系统架构,提倡我组织设计模式的分享,正中我的口味,本想多学习总结后再给大家分享,机会找上我了,我欣然接受,精心准备了几天,结合平台的代码问题和我最近在新模块的运用,利用了一个周五大家都很放松的下班时间一起进行了两个多小时的分享,总体效果让我很满意。
我的理想没什么特别,秉着对软件开发的热忱,希望在这个行业里有所建树,在这个行业做一些真正有利于行业正确发展的事情,从而对得起自己的兴趣爱好和激情,不能和“趋之若鹜的捞金者”标签沾边。我的梦想是做一名不朽的程序员,不朽不是说我跟文人墨客媲美,流芳百世,而我追求的是,到我入土那一刻,我能留下了有价值的东西。
从一无所知的外行到疯狂自我充电的准内行,再到如是思考的挣扎状态。
我对我的方向越发坚定,我不想做一个编码匠,想做一个真正的程序员,工程师,以及架构师,有技能和思想,有格局和视野。同样,我需要一个平台,一个可以孵化我梦想的平台。好比一颗天鹅蛋,没有孵化的环境,就没法孵化出天鹅。
抛弃成功学中的励志口号,回归真实的工作生活,我的理想还没有实现,只因为我努力的还不够,还有很长的路要走,成长积累于生活的点点滴滴,任凭行业中大部分软件公司的没节操追求利益,我需要做的是自己做一个对得起自己的程序员,坚持自己的价值观,相信美好的系统是可以人为打造出来的,业界的标杆一定会竖立起来的。
我的真实经历
我们紧张的Pltuo3.0维修将近尾声,领导接了一个私活,密召我和另外一同事进行开发一小型的举报系统,2天时间。正是Pluto3.0评测前需要随时待命的关键时期,连续加班到12点,这边他在我俩背后来来去去晃悠,催着我们做,以下是我和他的一段对话:
他:“不用考虑什么设计,框架了,怎么快怎么搞,不用追求质量?”
我:“这不合适吧,我有两天的时间,我按自己计划去做好前期的适度设计和框架的搭建,只会加速业务实现、降低错误发生概率”。
他:“都什么时候了,非得考虑这个设计,那不是一根筋了,追求严谨是好事,再说这个东西说不定做了,也没人用,随便做个给人提交得了。”
我:“这是我作为一个编码人员的态度,一个晚上我完全可以实现,但是这种代码我没法写,我不认为我只是在做一个Toy,我认为我在做一次系统架构设计。”
他最后笑眯眯的走了,其实这个时候我已经将设计和框架已经搭建好了,剩下的只是业务的实现,而且已经跟另一个同事已经约定好,使用TDD。但这段对话,让我心里有点凉,既然接手了这个事,就好好做,可是后来发生的事情让我彻底失望。晚上,我正在修改Pluto3.0这边的bug,他没事说要参与举报系统的编码,结果上来,二话不说,完全不遵守我设计好的框架,随意命名,随意编码,还是按照自己多年前的风格进行编码,我跟他好言指出,一点也没有得到重视,我总不能直接说这个你不能干,好不容易他手痒痒的还扫了他的兴致,后来他跟另一个同事一起完成了剩下的业务,那个同事按照框架的规范进行编码,代码思路层次清晰,而他那边则是杂乱一片,后面我没有过问这个了,前期我该做的设计做了,框架也搭建好了,至于是不是Toy,就由他去定位了,反正我没有当做Toy。和我一起的同事对我的这种方式是很认可和支持的,这里有我软件设计的理念和架构设计的心血。
三个泥瓦匠的故事
一天,有人问三个正在砌墙的泥瓦匠,说:“你们在干什么?”A没好气的说:“你没看到?我在砌墙。”B心平气和的说:“我们正在建一座高楼。”C喜气洋洋的说:“我们正在建设美好生活。”十年过去了,A仍然在砌墙,B成了一位工程师,C成了A和B的老板。
同样是干着一件重复的、单调的工作,三个人三种态度,而三种态度促成了三种截然不同的结果,成就了三种不同的人生。
不言而喻,心态和态度将决定一个人的高度,所以,通俗朴素的说,人生不能失去积极的心态,用微笑面对生活。积极的心态犹如一叶扁舟,承载希望到达彼岸并收获快乐;它是一盏路灯,照亮并指引前进的道路。
未来的路
当初我怀抱着一腔热血和一颗感恩的心进入了美林,现在我认识到公司对技术的不尊重,在这里我完成不了我的理想目标,努力尝试过,但改变不了这个环境,我能改变的只有自己。想要做一个有价值的人,我必须另寻出路,去寻找一个属于我的梦想孵化地。我始终没有放弃努力,我也知道一旦我放弃努力我将过的无比轻松,这不是我想要的,大学四年我不断地认识自己,找到了自己的兴趣,我要干出有意义的事情,对那些为了生活,应付工作的态度嗤之以鼻,做一个对身边的人,对企业,对社会有真实价值的人。
未来的路,我是否能走在我要去的那条路上,依然未知,只要我不断的努力,我相信一定可以实现我的理想,为了自己的未来,加油。
心存感恩
这一年,我一直对介绍我进入美林的徐哥心存感恩,感谢美林对我的栽培和关怀,感谢我的直接负责人平哥对我的关照,同时感谢波波和蔡彬对我的支持,以及感谢其他同事给我的帮助。离开美林,并不是因为薪酬,在这里公司给了我很多优待,也不是我对美林没有了感情,仅仅是我想要一个能够实现我梦想的平台,或继续寻觅,或自己打造,总之,这次离开是为了更好的明天,也祝愿美林明天更美好。