这2015的开年一直都很忙,不用说家里的事情,工作上也不消停。

话说我现在做的项目,是两个外汇衍生品的交易系统。一个是老系统,Java做的,上线十几年了,稳定得像块石头。但因为技术换代,2015年内将被另一个.NET开发的新系统取代。我现在主要做新系统这边,但老系统还要由我和我那位高干子弟黑人同事来维护。

这两套系统,是Societe Generale整个外汇交易部门的要害所在,平均每天上百张订单,近千次定价,200多个用户全都是脾气极臭的sales和trader。看数字可能不起眼,但架不住人家值钱。一个小数点后3位的定价错误就会造成几十万欧元的损失,服务下线一小时就会失去上亿的交易机会,这还是在平时。外汇市场的特性,是对重要的金融事件非常敏感,所以每当有大事件发生的时候,汇率会剧烈浮动,因而交易量瞬间翻上几番也不在话下。

最近就恰好是金融事件频发的时段:去年年末的卢布暴跌,上周的瑞郎欧元脱钩,还有今天的欧洲央行(ECB)发布会。本来我就一悠哉游哉的码农,不用惦记这些国家大事的,可最近这些大大小小的市场波动却结结实实让我郁闷了几天。

先说卢布贬值,其实我们开发组不在交易大厅内,所以当时并没觉得怎样,但过后一周,事情就浮出水面了。我们有每周一次的产品评分报告,就是由用户和交易部门老大为所有使用的系统打个分,再写点评论啥的。以前我们这俩系统虽然说不上有多好,但10分里总能得个6、7分,结果这周被评了个2分,老大给的评论一点不客气:

Goodwill, but that is not enough in the face of dire system problems.

Total disaster yesterday, just when we needed it most.

Not much the support can do on such a system. Fix the bugs first.

So full of bugs and regressions that it's a walking danger.

可以想象我+1和+2能被上面的大员们修理得有多惨,果然人俩开完会回来就开始跟我们开展教育工作:要重视单元测试,要保证factory干净没有failure云云。之后一系列具体措施,包括任命一人为factory manager,管理单元测试,确保没通过的测试被及时修补,每周轮换;还有一人24小时拿手机standby,以应付紧急状况,同样每周轮换。

factory manager还好说,只是增加点行政负担,本来factory也是要盯着的,现在只是工作集中到一个人身上而已。那个standby就比较讨厌了,这种standby是被动的,就是说有问题会打电话过来,没问题时只要保证随时能接到电话就行了。而我们是开发组,只做二级support,前面有专职的一级support组顶着,其实大部分时间里都没事,所以这个standby补贴非常少,只有每小时2、3欧元。但是接了这种差事,要保证standby的手机随时在身上、有电话能接起来,睡觉都要放在耳边,更不能外出,只能老实在家里待着。这种吃力不赚钱的差事,大家自然兴趣缺缺。但上面压下来了,咱们当小兵的也只能照做,没的选择。

之后的瑞郎欧元脱钩和ECB发布会,也都是给我添堵。我管理的Java老系统,原本刚好定在15号那天发布一个新版本。结果到了当天,我好不容易都协调好了,瑞郎脱钩的消息传来,市场剧烈波动,交易量猛增,上面直接把那一周的时间都锁死,叫停所有系统发布,以确保不影响交易。结果我好几天的工作都白做:发布一个新版本之前,有无数表格要填,各种申请程序要走,好几个组之间的时间和人力协调,不胜其烦。我吭哧吭哧终于都弄好了,人叫停了,延期发布,所有这些繁琐的行政工作,下次都要重来一遍。更悲催的是,应+1的要求,发布延期到1月22号,也就是今天,结果。。。ECB又来了,重复上次故事,再次延期一周。。。好吧,下次交给小黑去忙活,朕要请假一周,回家陪女儿去也。。。

提交评论


安全码
刷新