曙光科技的主要产品是财务分析软件,主要销售对象是中大型的企业,从它们过去的财务数据中推测未来的发展。这种预测学是一项很尖端的科技,国内外没有几家做得出来。最主要的原因,是数据太多了,这些大公司的数据以亿兆计,一般的分析软件根本无力承担。曙光科技发展出一套非常特殊的资料储存方式,摒弃一般商业通用的关系型资料库,用自己研发的数据库去处理。
眼镜男季中敏带领的科技研发部是曙光的核心,他手下除了马姊的技术发展组外,还有一个研究发展组,可以说是核心中的核心。这个研发组有五六人,据说都是耶鲁哈佛麻省理工学院的经济学和数学博士。这些人很少出现在公司,听说有一两个还住在国外,有关他们的故事可以用神秘两字来形容,连马姊都搞不太清楚这些组员的确实背景。
这些天才博士们的工作,就是成天在他们的脑袋里转悠,隔一阵子就提出一个新的计算模式。这些计算模式就是曙光科技的精髓,也是曙光的最高商业机密,每一项模式都在国内外申请专利。他们有自己一套的运算方式和数据,将这些模式经过反覆运算检验後,便交给马姊,让我们五个软件高手将之转换成新一版的程序,运用到产品上。
这些计算模式可不像高中的三角函数那麽简单,有时候从头到尾打印出来几十页,前後密密麻麻乱七八糟的符号,我们组里根本没人看得懂。这些天才於是便派一两个代表来公司,连开好几天会来讲解给我们这群人听,这也几乎是我们唯一能够见到这些天才庐山真面目的机会。
只是这些天才自认为自己是天才,自然就把我们当白痴,有些东西三言两语带过,一副「这麽简单你们怎麽还不懂」的态度,真叫人心头有气。更糟糕的是,我们不但不懂,连要问问题都不知从何问起。马姊也不是数学出身,和我们一样如听天书。
好在眼镜男一直在场,他是美国南加州大学的企管硕士,虽然没有耶鲁哈佛的博士来得跩,但起码在商场混了许多年,又是这群天才的顶头上司。由他来问问题,就算天才认为这是个蠢问题,态度上也不好表示,还得细心的讲解。眼镜男读企管出身,经济学肯定读过,对这些复杂的数学模式应该不太陌生。他问问题很详细,每一个细节都不放过,还叫秘书频记笔记,最後将笔记整理出来发给我们。几次会议下来,我就知道他其实是在替我们问问题,心中对这个不苟言笑的主管升起了好些敬意,看来能干到他这个位置也是有几把刷子的。
等一切懂得不懂得的问题都过滤後,那几十页的数学模式加上几百页的笔记就交到我们手上,接下来就是拟进度,做计划,分配工作,最後是拚老命的程序撰写。这工作不是开玩笑的,一般的大公司写软件的程序员成百上千,我们这个创投公司就五个人,计画的进度又卡得很紧,紧锣密鼓的程度压着我们简直透不过气来。
过去在学校写程序做计划,虽然也赶进度,但对软件的严谨程度没有要求得太严格,只要达到作业标准,输出正确的答案就行了。有些程序说不定还隐藏着数不清的「虫」,但只要不影响最终的答案,也没人会太理会。这里所谓的「虫」,是电脑术语,英文叫Bug,就是软件程序里的逻辑错误。找出逻辑错误予以修正,英文叫Debug,中文就叫「抓虫」和「除虫」。在学校里,我们都有除虫经历,但往往除不彻底,大虫没有,小虫一大堆,能在进度内交差就行了。
但进了工业界,一切都不一样了,对於抓虫除虫的要求很严格。当然我们都知道,软件的变化几乎没有止境,要完全无虫是不可能的。微软的视窗软件每年几千人研发制作除虫,但出版後还是常常有新虫出现。不过即便如此,在曙光有一套完整的研发制作及检验程序,尽量做到除虫务尽,毕竟我们的软件是替客户做财务规划的,一个小虫就可能造成几千万甚至上亿的误差,不可不慎。
我们五个人各领一个板块撰写程序,每一个板块有一堆数据做测试,必须符合每一组数据的预期结果才算过关。然後五个人的程序开始合并,又有一组新的数据来测试。等到这些测试都过关了,才算初步完成。这些测试是我们自己进行的,跟测试组无关,等到我们的测试过了关,才将软件安装到公司的测试伺服器上,交由测试组进行真正的品质检验,英文名叫QualityAssurance,简称QA。
QA的测试数据比我们自己用的多了几十万倍,放在自动的读取软件上,送进我们新研发的软件进行测试。这些数据和预期的结果,都是那群天才提供的,至於他们怎麽搞出这麽多数据和结果,只有天知道。测试期间,这些QA人员也不是光瞪着电脑银幕发呆,因为软件也有很多使用者介面,需要人工输入资料。所以一但QA工作开始,这些人也是忙得不可开交。
QA的大数据内,几乎涵盖了所有可能的情况,连不正常数据都有。所谓不正常数据,就是不应该出现的数据,譬如说一个公司的销售进帐不可能出现负数。销售最坏的情况就是一样产品也卖不出去,那进帐就是零,但不可能出现负值。当然公司的盈余可能是负值,因为盈余是进帐减去支出,後者比前者大就会出现负值,可是进帐这一栏不可能有负值出现。我们设计软件程序时,便会做如此的假设,读进来的资料不可能有负值,因此就不会对负值做任何处理。
可是万一有负值怎麽办?软件总不能就当机吧?因此这些不正常数据,就是用来检测软件的抗压性。在不正常的数据运作下,软件还是必须做出适当的处置,譬如说给客户警告信息等。
还有一种是人员的操作步骤。软件都有使用者介面,有时是一个网页,有时是一块视窗,每一个介面都有一定的操作程序。譬如说使用者都会先键入自己的帐号和密码,进入软件後会先点选开启操作的按钮,输入某些数据等等。可是如果使用者乱来怎麽办?该输入数据的地方她给你打名字,该点击按钮的时候她偏偏给你敲键盘。这时候我们的软件也必须做出适当的回应,譬如说给出操作错误的警告,绝对不能当机,更不能把客户的数据资料遗失。这些不正常的操作也需要QA来尝试,有时候有一定的测试步骤,有时候没有,全凭QA的想像力。
我们经过了五个礼拜的密集程序,终於把软件如期交到QA手里,接下来就等QA替我们继续测试。当然QA只能报告什麽地方出错,症状是什麽,抓虫和除虫的工作还是交由我们技术组的来做。软件有虫是天经地义的事,QA的工作就是在一论测试过後,整理出所有的错误报告,然後交由我们除虫。等除虫完毕,再送回给QA重新测试,如此周而复始,直到该除的虫全部清除为止,才正式发交出去,更新原来在客户端使用的软件。
当然这些找虫除虫的工作并不是只有在新模式出来的时候才进行,事实上一年到头都在进行。已经送上客户端的版本也可能随时出错,由客户经由我们的客服报告进来,送给QA处理。QA的责任是根据客户的报告,在我们自己的测试平台上复制出错的步骤,也就是说在怎样的操作下,用怎样的数据,才能复制出客户报告的错误。有了这些资料,我们技术组的才有办法利用特殊的抓虫软件,把虫找出来於以清除。
像这样写程序的和测试的来回交流,在各个软件研发公司都是最稀松平常的事,QA的报告也有标准格式可循,软件出虫也不是什麽大不了的事情。可是QA队伍里面的唐妖精,总是喜欢在这方面做文章,报告里总要加油添醋,好像出了虫就是十恶不赦的大罪一样。在除虫讨论会时,她总是用酸溜溜的口气,语带讽刺地说些难听的话,什麽我们这群高薪的科技贵人,怎麽写出来的程序是这副德性,害得我们测试组的人疲於奔命。
马姊不只一次地当众说明,程序出错是常事,还特别关照唐妖精,讨论写报告时对事不对人,可是这只妖精死不肯改。而且我觉得她专门对我特别苛刻,技术组里只有我一个女生,她对其他四个男生都不怎麽挑剔,碰到我的虫就大加鞑伐。
我也不知道什麽地方得罪过她,也不明白她是不是存心跟我较劲,还是特别对我吃味。唐妖精是测试组里长得最好看的,身材窈窕,曲线玲珑,尤其胸前那对D罩杯,确实足以傲人。放眼整个技术发展组,只有本姑娘的容貌身材和她不分高下,我还比她高几公分,唯一不足的是我只有B罩杯,胸襟没有她大。也不知道是否因为这样,这个妖精就特别看我不顺眼,再加上技术组的人才都是高科技高学历,薪水高出测试组几乎一倍,更加让这位女妖精心理不平衡。
平时大夥儿在公司来来去去,走廊上电梯里休息室内碰头都会微笑打个招呼,她面对我时就把我当空气。这还不打紧,这个妖精有事没事就撑着她那个D罩杯,从我的办公桌前晃过去,见我不理她还会丢下一句「你这套衬衫穿了几天了」。
我这套衬衫穿几天干你屁事?事实上我穿的衣服天天换洗,只是我都选择比较素净的穿着,不像她老是穿得花花绿绿的。要不是公司对服装有一定的规定,我看她连比基尼都会穿来上班。她的家境似乎也不错,虽然在公司薪水不高,但穿的用的都有一定的水平,也不住公司提供的宿舍。据她自己吹牛,她有个富二代男友,也不知道是真的假的。不过有一天下班时,我们确实看到她跳上了一辆法拉利,和一个公子哥儿扬长而去。
这个唐妖精在公司的人缘也不好,技术组测试组没有一个人喜欢她,唯一的例外就是杨瘦,好像她的跟班似地。我起初实在搞不懂杨瘦为何要和这样的人接近,後来有一天在宿舍附近的火锅店看到她俩,点了一大堆食材,杨瘦拼命吃,妖精拼命讲。杨瘦家境不怎麽样,看这情形,八成是妖精请客,杨瘦被收买了。
我基本上懒得理这个妖精,觉得她人品太低下,本姑娘不屑於计较。可是我不犯人,人却来犯我,第三次世界大战很快就爆发了。