第4章 第一次工作经验(1)
赵云兴高采烈地到冀东电子技术公司人力资源部报到,审配经理把他分配到研发一部工作,部门经理是文丑。办理完到职手续,领了员工手册,审经理带着他去找文丑,文丑帮他安排好座位,让他先熟悉自己的计算机,依照自己的喜好先把电脑调整好。
整个早上,赵云把自己的电脑安装好Windows XP,软件开发系统等等。文丑过来了。
文丑:“新来的,一上午的时间,把电脑整理好了吗?”
赵云:“报告经理,整理好了。”
文丑:“在公司里不用像在学校,什么都加报告。我们部门主要负责数据库的软件开发,手上的项目有两个,一个是金鸟语的业务管理系统,另一个是超酷食品公司的库存管理系统。这两个系统分别由两个组来开发,我们部门连我共26个人,其中有16个人绑在第一个项目。现在已经开发将近三个月,项目主体已经开发完成,α release已经在测试部测试。预计开发时间是5个月,下个月将会给出β release,再次测试修改之后,发表Final release交给客户测试验收,这项目就算结案。所以,我安排你进入第二个项目,这个项目是由项目经理王修负责,刚刚承接,现在正在设计阶段。具体的情况会由王经理在项目会议时介绍。你有没有什么问题呢?”
赵云:“没有问题,是不是每个项目都是这样进行的呢?”
文丑:“基本上都是这样,除非客户有特殊的要求,不然我们的项目开发流程都一样。承接项目前,都由项目经理与客户讨论项目需求、功能要求、接口、界面、系统要求与底层数据库,有时候还包括使用的环境、广域网或局域网,Web base或单机画面,等等。制作项目规格书之后,作为委托开发合同的一部分提供给客户确认。然后发到研发部,由研发经理与项目经理协调参与开发的人员,成立项目开发小组,再由项目经理集合大家对项目进行系统分析、设计,然后编程开发,出α release,β release,Final release,客户验收后结案。”
下午的时候,赵云参加王修经理对开发项目的任务指派。接下来的几天,赵云拼了命地争取表现,在学校学习时,从来没有这么认真过。连毕业设计时也是想到就写一些,不像现在,每天从早上一直编程到下班,还常常加班干到把预计开发的模块写完才走。当然,遵守软件公司的惯例,程序员是没有加班费的。
工作上的争执
这样过了一周辛勤的工作生涯,在王修主持周五的项目讨论会上,出现一个情况:另外两位年资较深的程序员为了一个模块中的错误问题起了争执。要改正这个错误,必须有其中一人做大幅度的修改。而这两个人都不愿意修改自己的部分去配合对方。王经理只在一旁作壁上观,让这两个人互相争吵。赵云听得头昏脑涨,很快,会议时间已经超过一个小时了,但是仍然没有结果。这时候,赵云实在忍不住了,他手上也有不少工作需要做的。
赵云:“二位前辈,你们这样一直争吵,也没有什么结果,是不是我们请王经理决定要如何做呢?”
王经理恶狠狠地说:“赵云,没事别多嘴。你是新来的,不懂就别说话。”
赵云愣住了,觉得自己说的话好像惹怒王经理了。
王修接着说:“先把这个问题放着,你们把到现在的程序先发到我的信箱。你们不是还有很多没开发完的地方吗?先干别的吧,散会。”
赵云觉得很奇怪,这个问题就放着不解决吗?会后,他找王经理谈谈。
赵云:“王经理,首先为我刚才在会上插嘴道歉,我不知道会让您这么生气。”
王经理:“没关系,你刚进公司,不了解情况,过去就算了。”
赵云:“另外我还有一个问题,刚才他们讨论的问题,确实必须要某个人去改动程序才能恢复正常,您为什么不要他们马上改呢?”
王经理:“这你就不知道了,程序开发上,还有许多的诀窍你要去学习的。当然了,错误不改,肯定交不了活。但是,离发出α release还有一段时间。我要让他们催得更紧之后才会决定由谁去修改。”
赵云:“为什么呢?”
王经理:“这你就不了解了,多观察一下吧,慢慢地你就会了解在大型公司工作的窍门了。”
赵云回到自己的座位上,仍然很不理解王经理的说法。只能放着,反正事不关己,高高挂起。
下班之后,正好碰到行政部的主管田丰也下班出来。两人正好同路,在车站等公共汽车时,赵云提到今天的情况。
田丰:“其实这很正常的,公司的流动率很大,一大部分原因是沟通的问题。”
赵云:“我没看见他们的沟通,难道吵架也算是沟通吗?”
田丰:“没错,吵架也是一种沟通,但这是不太好的沟通方式。”
赵云:“可是沟通之后,我没看见结果呀,而且王经理也没有决定该怎么做。”
田丰:“我不了解你们编程的技术问题,但是基本上编程就像是写文章,程序员之间都会有一些文人相轻的观念,总是认为别人写得不好,一定要跟自己的思路相同才是正确的。”
赵云:“确实有这样的倾向,在学校时我也常认为别人不如我。”
田丰:“可是在社会中,大家都需要互相协助,互相妥协才能把工作干好。你们组不是有十几个人吗?如果都不互相配合,那出来的软件还能用吗?”
赵云:“这倒是……但是王经理怎么不指派其中一位去修改呢?”
田丰:“这点我也觉得奇怪,不过王经理应该有他的道理吧。”
周一一上班,赵云收到通知,到会议室开临时会议。会中除了传达公司将举行一场大家可以自由参加的培训之外,王修还特地告知两位发生争执的程序员:“你们的程序我利用周六周日都看过了,大体的框架没有问题。并非像你们想的必须要做大篇幅修改才能去掉错误。我刚才已经回信给你们两位,都有某些修改的必要,而且你们要注意我们在系统分析与设计时提出的接口注意事项与传输格式,不然以后这样的问题仍然会不断地出现。最重要的,我不希望以后在会议中看见你们这样的讨论态度。坚持自己正确的意见没有错,但是请你们二位先把自己的程序仔细看一遍,而不是发生问题就把责任推给别人。这次的事情到此为止,如果下次还发生这样的情况,我会让你们全部重写,直到恢复到我们讨论的结果为止。”
两位程序员低下头,不再说话。赵云也特别佩服王经理,利用周六周日两天时间把两位程序员的程序都看完,这没有足够的经验很难掌握别的程序员的思路。“看来我要学习的还很多,也需要特别充实自己的开发经验。”
王修把赵云叫到休息室:“赵云,上次会议我没有马上解决他们的问题,一方面是我根本还没看见他们的程序,也无从插嘴,怎么判断谁该改,谁可以不改。当你未来有机会带领一个项目时,也要注意不能莽撞地下令。这已经不是一个程序员的事情,如果没有对程序的各方面影响都考虑到,未来的错误肯定无法限制。甚至可能需要重编,那问题就严重了。依照经验,程序员会有敝帚自珍的心态,出现问题都会先看是不是别人出错,而不是检查自己的程序。第二个问题是自满,结果对规格书不会仔细阅读。基本上出现接口问题的,有一大半是因为没有完全依照接口规格来写。所以我要他们把代码都给我,先比对模块接口的规格,就发现他们的问题,也不过才花去不到一小时。程序员开发程序时,必须要完全依照指定的框架来干,才不会影响别人的开发进度。这点你也要注意。”
赵云:“我记得第一个面试的公司,他们就用一篇考题来考试,要求我们先看完才开始作答。从前面看起来没有问题,但是在最后一张却写了只要在答案卷上签名就交卷,不能写其他文字。当时我还以为公司开玩笑,现在才理解,他可能也是用这样的方法测试程序员是否能仔细阅读项目规格书,能完全依照开发指示来操作。”
王修:“这个办法不错,以后应该建议人力资源部这样考试。”
跳 槽
赵云在王修的领导下,技术能力不断地成熟,慢慢地也成为熟练的编程手。转瞬间,赵云在冀东电子技术公司也一年多了。整个公司虽然规模很大,却有点死气沉沉的感觉。每个人都从事自己的工作,彼此之间的交流不多,而在公司一年多里,赵云只在年终聚餐的时候,远远地见过总经理一面。与公司的几位高级经理也少有接触,仅仅觉得公司似乎有不少人才,像人力资源部经理审配、研发一部的经理文丑、研发二部的经理颜良、市场部经理许攸、行政部经理田丰、采购部经理张合,等等,都是能独当一面的人才,但是每个人似乎都貌合神离,对公司的向心力不够。其他员工也都时时留意自己的其他就业机会,公司里大家上得最多的都是104人力资源网、中华英才网等招聘网站。受整个环境的影响,赵云闲来无事的时候,也上网发发简历,想找找其他的锻炼机会,让自己能到不同的开发环境学学。
在发完简历不久,竟然也有回音了。他们曾经合作过的冀州软件公司在招聘信息部门人员,要求的条件赵云完全符合,他也有意愿尝试一下网络管理的工作。约好时间之后,赵云请假参加面试。
一到冀州软件公司,正好碰到他们的DDN专线故障,而信息部门的员工已经离职,总经理公孙瓒正急得跳脚。公孙瓒一听说赵云是来应聘信息部门的网管职位,马上要求他尝试着解决通讯中断的问题,当作面试的考核。赵云在公孙瓒的引领下,来到主机房。他先检查DDN专线的连接情况,发现机房的各种线路杂乱不堪,标示不清。许多接头不是依照标准方式连接,甚至还有用胶条粘着。
赵云先检查屋外连进来的专线,一直找到基带猫的接口,四根线简单地插着。试试螺丝没有拧紧。赵云先重新固定好四条连接线,然后尝试服务器能否上网,发现仍然无法连接。再继续检查路由器,发现指示灯不闪烁。重新启动路由器后,服务器可以上网了。然后请别的程序员在别的机器上网,也成功了。这样,先解了燃眉之急,公孙瓒高兴了,当场表示录用赵云。赵云回答需要一周的时间办理交接工作,才能过来上班,公孙瓒痛快地答应了。
新兴公司的问题
冀州软件公司是一个规模较小的公司,主要业务项目是开发辅助教育软件。赵云上班之后马上发现,公司的每个人工作意愿都很高,但是只关注与业务相关的工作。至于后勤支援、网络建设、管理制度建立等都不完备。总经理完全可以当作一个优秀的业务员,公司所有的后勤部门总共只有五个人。一位会计、一位出纳、一位人事、一位行政兼采购人员,还有赵云这位网管。公司很明显地分成前、后台,前台集团是业务人员与开发人员,负责为公司赚钱。后台人员则处理其他所有的杂务,包括财务、人事、网络维护、仓库管理、采购发货,等等。后台人员在公司的地位很低,基本不受重视。虽然曾公布过许多管理制度,但是业务部门的人员似乎完全不考虑这些,仍然我行我素。发生过以下几个事件:
事件1
开发部经理严纲正需要一名程序员。他没有依照公司的招聘规定,直接找了自己认识的一个朋友,填好了基本资料,就带他到人事部让他面试。管人事的陈谦还弄不清状况,严纲竟然说面试表给你了,在你这里也不就走走过场吧,让他明天就上班。
陈谦:“你招人应该遵守既定的人事招聘流程,先提用人需求,找总经理批过之后,我才能开始招聘呀。”
严纲反而生气了:“我这边工作忙得要命,找个人你还裧里裧唆的。”
陈谦:“那你也应该找总经理呀。”
严纲:“我昨天就跟他说过了。”
陈谦:“可是我没看见他给我什么指示。”
严纲:“那我不管,反正我找到人了,你就把手续补上就行了。耽误了我的工作,你管得了吗?”
陈谦:……
事件2
总经理的弟弟公孙越出去收款,收了部分现金与一张支票。由于时间太晚,已经超过下班时间,他直接把钱带回家,第二天才过来公司交割。
出纳小李觉得这样的做法很不保险,如果放在你家里,万一出现盗窃情况什么的,我没法交代呀。而且公司有规定必须当天把钱收回保险柜中,我才能下班。结果昨天晚上等你等到八点,打电话给你,你已经到家了。你怎么不先打电话交代一声呢?而且上周你收回钱,马上又请客户吃饭。结果回到我这里却是一些发票,这样做也不合流程呀。
公孙越回答得很干脆,反正这是我哥哥的公司,就算我丢了钱,我自己跟他交代就行了。本来业务行为上就会有一定的交际费,你也别拿着鸡毛当令箭。
事件3
公司规定的上班时间是早九点到晚六点,偶尔有人会加班什么的。但是公司没有设置打卡钟,完全靠自觉。总经理一般都九点半之后才到,虽然常常要求大家准时上班,但是迟到的情况仍然非常严重。总经理说一次,情况好一点,但过了两天大家又故态复萌了。每次到月底行政部考勤时,每个人总有各种理由。而总经理怕程序员离职,总是让行政部让步,理由就是,迟到扣钱对公司也没什么帮助嘛。
事件4
公司的库存物品,几乎没有哪个月是正确的。虽然也作盘点,但是三个人有仓库的钥匙。借货还货的问题、商品借用的问题、内部领用的问题、样品领用的问题,虽然公司只有不到100多样货品,却始终对不上数。也常常会出现找不到要用的东西,认为没有了,于是紧急采购新品,过几天又发现公司原来就有很多库存。没有人说得清楚究竟仓库里还有多少物品。
整个公司就在这样的混乱情况下营运。所以从成立至今,一直没有太大的扩展与起色。
赵云隶属的网络部名义上是个部门,但是赵云时不时会让业务部借调去参加程序开发。甚至也会被借调到客户部去解决困难或问题。有一次,赵云被借调到客户公司去参与合作开发时,发现客户竟然是自组工作室的刘备、关羽、张飞他们这个工作室。老同学三年多不见,当然免不了多聊几句。询问到现在的情况时,赵云不无感叹地说实在不太愿意继续留在冀州软件公司了。
初 次 合 作
刘、关、张三人的工作室,已经承接过许多软件项目的开发,尤其是在网络软件开发与电子商务上。这次,桃园工作室是准备推动一个新的网络项目,执行电子商务方面的底层模块建设。赵云在这方面有不少经验,尤其是在解决底层数据库的SQL语句上,更是赵云专精的技术。这次的项目是受徐州电子公司总经理陶谦之托,北海电脑公司的总经理孔融也提供不少程序员协助开发的电子商务平台。因为孔融与桃园工作室有过多次合作经验,十分了解他们的开发能力,于是向陶谦推荐一起开发这个项目,希望能与曹操领导的洛阳东汉软件集团一争高低,使自己的平台成为业界承认的标准。