入职了一个小有名气的出海小公司,发现这个公司真的是乱七八糟。
最近累死了,做一个需求竟然爆出100多个bug,真的是疯了,然而当我从这100多个bug中爬出来时,我发现,作为入职新人,我本来是做对了的那个人,但是当其他人都往错误的方向理解需求的时候,你这个唯一正确的人,就变成最错误的那一个了。真的是心疼我自己这每天十几个小时的工作量。
事情的经过是这样的,这个迭代的需求是这样的:为本来就有的商业化业务中增加一个虚拟付费商品类型。————是不是很简单。
已经有的商业化业务中,有纯消耗虚拟币的方式、使用体验卡的方式和VIP+三种方式,无论是之前做这一块业务的前端同学,还是后端同学,都告诉我,VIP+与体验卡方式是完全一致的,VIP+就是每个月下发一定数量体验卡,所以只需要判断体验卡数量即可。————是不是很简单。
中间做的过程,其中各种乱象,不必多说了,后端竟然在提测前最后一天晚上,才调通接口给出测试数据这种事,在这个公司都算是正常现象了。问题就出在测试后的环节上了。
当测试同学测试VIP+用户时,发现跟以前不一样了,“你只需要保持跟以前版本一样就可以了”,“为什么跟iOS端不一样?”,接下来就是bug像雪花一样飞来,我疲于奔命的改bug,这种情况,人往往难以抽出时间进行思考,因为问题出现在你完全想不到的地方。
就这样“按下葫芦浮起瓢”的改了一周的bug后,我就想知道,到底这VIP+的数据长什么样,为什么我把VIP+做的和体验卡一样反而是错了呢。我打印了VIP+用户的数据,得到了两个字段表示体验卡数量,A字段有值,B字段没有值,两个字段都表示体验卡的数量,但是A字段过时了,不再维护了,现在要求使用B字段了。————你们以为我用错字段了是吗,其实没有,在我接手时,前人代码已经用了B字段了。
神奇的事情就在这里了,每一个人都声称VIP+与体验卡一致,被称为旧字段的A就有值并且包含了VIP+的体验卡数量,被称为新字段的B就没有包含体验卡的数量,询问后端同学,答曰:VIP+好久没有人维护了,切换新字段时,大家都以为包含了VIP+,但是实际上没有。也就是说,VIP+反而跟没有体验卡的普通用户一样要纯消耗虚拟币了。————一个在线上跑了很长时间的功能,有这样的一个大问题,竟然没有人发现,并且每个人都认为过去的版本都运行对了,直到我打印数据,他们才发现B字段根本没有包含VIP+的体验卡数量。
一个业内小有名气的公司,规模不大也200人的公司,有这样的问题,竟然没人发现,我真的是欲哭无泪。真的是对不起我那没人十几个小时加班尝试”把VIP+做到与体验卡一致“,因为过去的版本根本就不一致,但是他们都没有发现。
我这个尝试把VIP+做到和体验卡一致的人,反而是做错了的那个人,为了保持与其他端一致,我得改成错误的样子,而且得错误的一模一样。这就好比,一个一百道题的卷子,正确答案只有一种,大家都得满分,答案自然一模一样。但是现在有另外一个人,考了50分,但是已经被立为“模范”了,你能考100分也不行,你必须也得考50分,并且错的题都必须一样。
我只能来一句“靠”了。我从业十几年了,这是第一家让我用恶心来形容的公司。不只是我在这么形容,与我前后脚入职的同事,私下交流时,都是这种感觉。我们经常在写代码时,产生深深的自我怀疑,我到底在写什么————这是另外一个同事,一边把自己头发抓成鸡窝状,一边疯狂喊出来的?