您的位置:首页 > 其它

我在nec-cas做外包的经历

2005-10-29 19:45 225 查看
据我所知,necas相当一部分(也可能是全部)的业务是来自日本的外包。今年七月七日我们几个苦难的兄弟被派遣到necas做外协,其实说白了就是到一个外包公司做外包,好像是包了两层的感觉。):

这个项目是一个最初由日本做的已经升级改造了七年的大项目,算是一个软件生命周期的管理工具吧!功能很强大,体积自然很庞大,代码在500m以上,主要采用的技术是用vb写ActiveX,然后将ActiveX嵌入ASP中使用。我们要做的就是对这样一个庞然大物部分功能的改造。

先说说我们能拿到手的资料吧!只有几页纸的FD,最多不会超过4页,这是我们唯一可用的资料,剩下的就是代码,是很少有注释的代码,看到最多的注释是“Update by xxxx ”和 “Add by xxx”这些修改标记。necas的人也没有给我们讲相关的业务逻辑,原因有两个,一是这个项目中的每个模块都是很庞大的很难一下讲清楚,其实就是他们能讲出来我们也不一定能听懂,不然也就不能称为大项目了,不只是体积大,业务逻辑太复杂了。二是他们自己也是一知半解,甚至根本一窍不通。大家知道我们的任务是什么吗? 我们的任务就是根据这几行仅有的FD写出DD来,然后编码,UT,FT。当我们问起他们是否有相关的文档时,他们说日方只提供了 这些东西,他们自己也没有(实际上他们确实也没有)。看来我们也只能硬着头皮上了……

我们过来的几个人三个是负责写代码的,每个人负责不同的模块,还有一个是我们的项目经理(一个工作10年的老家伙,):)。另外两个同事的FD写的比较清楚些,似乎可以通过FD就可以知道未来的工作,知道需要改造的完整功能点和代码范围(至少从表面上看是这样的),而我那里感觉一点头绪都没有,不但涉及到vb代码还有asp的页面,而且好多地方说的非常含糊,我当时真的感觉顶不下来。在这里我要感谢我们的老头子(我们的项目经理),他不断的鼓励我,也是一直在帮助我(他帮助我们每一个人)。我从来没有写过asp,而且在当时的项目和开发环境中调试asp几乎不可能,所以我们当时认为asp页面的改造将是我们最大的难点。要改造这个模块,但是是对哪个页面哪个函数改造我们根本不知道,所以我们唯一的办法就是从FD的页面插图入手然后直接从程序页面中找,找到相关的页面看里面是否用到了INC文件,然后再看里面的函数到底哪一个是我们需要的,我们就是这样用肉眼来跟踪代码的。这里值得提下的是日本人的asp页面中的几乎所有的html tag都是从数据中取出对应的项目在页面中动态生成的,就连函数的名称都是动态变化的,灵活性是要付出代价的,这样的代码往往逻辑上会比较复杂,而且对于不了解业务的人来说有时候很伤脑筋。我们只能是比着葫芦画瓢了,然后把修改过的代码上传到服务器然后ie中浏览看结果,出错了我们就屏蔽代码然后分步打开测试问题的所在。费了老大的劲终于搞定了,本以为自己啃掉了一块硬骨头可以稍微放松一下了,但是做其他的模块的时候才发现这个其实是最简单的。后面模块中时常会碰到12000行的vb大函数,里面的业务逻辑我们压根就一点也不懂,没办法我们只能大致看下代码然后猜测到底是什么地方处理的相关逻辑,然后打上断点跟踪,事情总是要解决的,问题也总是可以解决的,只不过我们要投入更多的时间和精力。实际的结果也正如我所说的,我们在预期的时间内完成了DD和CD 。

接下来该说说NECAS本部的人了。领导从部长到主任说话都有特点,时常把国骂放到嘴边,平时说说也就罢了,只能说这是你的口头禅,但是开会的时候突然来两句“TMD”,“我*”是不是有点过分,领导的作风似乎不应该是这样样子的,都说做日本项目长了会bt,不知道是不是真的!我们就是被卖到所谓的NECAS第一科长 A** 那里做苦力的。这人名气很大,在百度上搜索他的名字会出现相关信息(这是我一个同事告诉我的),经过这段时间的相处果然是名不虚传,着实“厉害”。时不时地会扯出“* w * h”,我感觉这些东西好像有点软件工程常识的都应该知道的吧!发个邮件用汉字说着日本话,还时不时的夹着几个英语单词,什么意思啊?要用中文发邮件怎么就不能合乎中国人的习惯啊,毕竟你还是中国人,还是生活在中国。弄几个单词出来什么意思?显得英语水平高?那就用全英文嘛!还省了切换输入法!再说他们主任 B** ,我不知道是该说他不够成熟,还是对外协有偏见还是人品有问题。一次我那里出了个bug,然后我就重新注册ActiveX,但是debug的时候死活不走我打的断点,他走过来问我我说断点无法命中,大家猜他怎么说的。“我靠,我告诉你快两个小时了,你还没连上啊?”无语……告诉我也就半个小时多点,我一直在做啊 !哎……我只能怪自己水平不行了。他在我那里动手搞了两遍,我以为他这样的高手肯定会搞定的,结果和我一样,然后让我一起到他的机器上弄,第一遍还是不行,第二遍可以了,然后会过头来冲我笑了笑“奇怪,第一次不行,第二次就可以了,我什么也没动啊!”我当时真的有种犯罪的冲动,你自己都搞不定,凭什么指责我?受这样的指责我都麻木了,谁让我只是一个被卖出来的小卒子呢!版本release的时候他们自己出了版本错误,但是他们根本就没有调查是不是自己的错误就往组里发邮件对我们大加指责“你们***的人到底有没有能力把bug一次改清,有没有能力……”,全组20来号人,我们的面子往哪里放?我们一收到邮件马上查看自己的代码,结果发现不是我们的问题。诸位,如果换了是你你会怎么样?接下来就是关组公开道歉,然后打电话过来道歉,且不说是不是诚心的,恐怕除了道歉没有别的选择。还有一次我们这里出了一个bug,可是fd里对相关的东西一个字都没提,你们猜他们怎么说?“这个东西是捆绑在一起的!”,“这个东西应该可以想到!”天大的玩笑,一个字都没有提我们自己都能想到,怎么可能呢?做过对日项目的都知道,如果人家没有提到的东西你自己做了那算什么?算你自己的bug ! 领导倒还没有说我们的责任怎么怎么的,普通的员工都对我们指手画脚 。谁能受的了 ?
总之这样的冲突很多,如果说他们的压力很大,我承认。但是却没有听到他们对自己的员工说话带“◎※¥×¥※×”,也许是他们说了我没听到。:)

因为有过两次冲突(主要是对他们那种强加给我们的东西不敢苟同,由于是和我自己的模块相关的,所以我当然会说我自己的看法,当然我们项目经理也不会置之不理的。)nec-cas和我们老板告了我一状,起初的理由是我担当的模块有我们项目经理参与,我的能力不行。我们项目经理和我的其他同事都知道我那块是最复杂的,比其他人的要大的多,不错一直是老头子我们两个理逻辑,就是抛开老头子的参与,我自己做的已经对得起他们,对得起我自己,也对得起我们公司了。这个理由被我们老头子否了,接下来的理由是我的模块出的bug太多,延误了进度。大家想想我们两个人一起理的东西为什么bug多,能力不行?根本不是。理由只有两个,一个是模块本身很大,逻辑很复杂,二就是那个狗屁不是的FD.这个被否了以后还有理由,说我二期的一块功能我自己搞不定,是其他同事搞定的。简直是可笑,我是开始没有处理好,找过他们。他们的subleader让我的同事解决这个问题,但是不等他解决我已经修改了。不调查就扣这么个帽子给我!汗……不管什么原因nec-cas要把我强制遣返,还好我也不打算再待在这里了,我是做外协的不是做孙子的。回到公司我就离职了,部门领导说他们对nec-cas对我的评价不敢苟同,如果是因为这个原因还是请我考虑留下来,我还是走了,因为我感觉自己有点累,在这里我找不到自己的价值。

上面的是我做外包的经历,没有别的意思,算是发泄私愤吧!希望对程序员朋友们有点用处,也希望那些领导们能够平等,公平的对待每一个程序员,公司和员工是互利的,而不是对立的,如果程序员一直在压抑的状态中工作我想对谁都是损失。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: