技术不仅是救火队,也是建筑师


技术不仅是救火队,也是建筑师

 

多方合作的系统往往会经历一个快速磨合期。磨合期间,时间虽短,但却阵痛。电影《骇客帝国》中,庞大的母体矩阵内总会出现一些不合乎逻辑的bug,比如同一只黑猫反复出现,一小块区域突然失去地心引力等等。于是外部程序猿们紧急开始修复,在矩阵中呈现的则是一群消防员突然驾到,诡异地封锁了bug现场。

的确,技术部就是救火团队,但这只是一个狭隘的说法。《骇客帝国》母体的设计者,在电影里被称为“建筑师”,他决定了虚拟人类世界的架构、行为逻辑以及生存规则。这是我所理解的技术团队的核心价值—-将场景变成现实。

在互联网金融领域,我们所建构的场景是基于金融的,即便是已经成熟的一套规则,需要迭代和引入新的规则时,都还需要付出高昂的成本。而金融产品的场景属性,与一般产品也存在着本质区别。

互联网金融产品的复杂程度有多高?

一个标准商品的生命周期大概是这样的:在电商平台被浏览、品评—-用户做出购买决策、付款—-送货上门—-不满意退货退款。大多数情况下只需要经历前三个步骤。其中涉及到资金流转的环节仅有一个,即付款环节。这一环节早些年如果直接走网银支付,那么就是直接从用户的银行卡划付,而现在则大多通过第三方支付来实现。简单、易懂。

网络借贷商品中的一个投标会比这种操作来得复杂。

一个可投资标的的生命周期大概是这样:通过审核的标的被公布出来接受招标—-用户选择并投标—-等待此标的满标(可能会出现流标的情况)—-放款给标的借款人—-借款人按期还款—还款结束,项目结清。

如果只是这种程度的逻辑,我们的工程师估计闭着眼睛、用脚、还是单脚、倒立都能设计得出来。基于大家都还安坐在电脑桌前目不转睛的手敲键盘状态,显然没有这样轻松。

首先,还款本身就有多种情况,同时还有一个重要的机制—-债权转让。这一机制存在于整个还款过程中,出借人A与借款人B之间的债权协议,转让之后,会被出借人C与借款人B之间新的债权协议所取代。这一机制带来了新的算法,加大了产品结构的复杂性。

以上所提到的逻辑是个人网络借贷模式的基石,我们的U计划、薪计划等也都是源于这一基石的。基石之上,还要完成更高级的技术需求,即如何帮助用户实现小额分散投资;如何在满足用户不同投资需求(收益需求、偏好需求)的情况下合理匹配利率;如何最大限度解决用户资金站岗问题从而平衡投资公平性。以上的每一个维度下面都还有若干分支维度需要思考,由此产生的排列组合也是几何倍数地增长。

简单理解一下互联网金融的结构

没看懂没关系。可以举一个不算完全恰当的例子。比如卖家在卖一堆苹果,客人A要买3个,客人B要买2个,以此类推。。。但苹果总量不够,到底是先占先得还是进行平均分配?第一天的苹果卖完了,进入第二天,卖家新进了一批苹果。客人A昨天买的苹果已吃完,又来买了,这时候卖家要判断为了公平起见是否把他排在所有在第一天没有买到的人后面?大家可能都不止买一次,所以这个队列是循环的,那么中间突然插进来的新客人,把他排在哪里比较合适?是放在又来买苹果的A后面还是A前面?寻找最公平的队列只是一个非常基础的技术逻辑。

那再复杂一点,你会发现,每个客人要的苹果都不一样。苹果有大有小,有酸有甜。还有很多特殊情况,比如某一个苹果特别贵,A一个人买不起,所以联合B、C一起买了这个苹果。而买到手的苹果又不是所有人都打算自己吃掉,A买来的一些苹果就通过卖家的渠道转卖给B,B又可以转卖给C。后来卖家发现客人一个一个买实在太浪费时间,于是做了一套果篮,里面有各种类型的苹果,帮助客人快速做选择。然后同样的果篮还可以提前预定,省得第二天来排队。。。

苹果即标的,以上这些细颗粒的思维方式及其完成度是考验技术团队的关键。

银行资金存管为什么是一个高门槛?

结合苹果的例子,所谓银行资金存管,简单来说就是以前客人A把钱放在卖家那里,等有了苹果,A告诉卖家说我要买,卖家说OK,A拿到苹果走人。现在是A的钱放在了银行,当A说要买苹果时,得卖家先告诉银行说A想要买苹果,银行了解了具体是哪几个苹果以及要花多少钱之后,同意把钱给卖家,然后一直盯着A指定的那几个苹果交到了A手上。

银行对于资金的监督要求是非常高的,也为此给每个用户都开设了独立的存管子账户。在用户感知上,也许只是多了一道输入交易密码的环节,但底层结构却做了巨大的调整。

从存管体系的设计来看,对于技术团队而言并不是一件特别难的事情,反而合规是最大的挑战。当然,不难不意味着简单,好比你要和同伴一起用积木搭建一座玩具城,其实难度不高,但是复杂度上还是有的,说明书和方法论摆在那里,你需要做的就是一步一步、稳扎稳打、与同伴高效合作。虽然拼错一两块积木是有可能的,但调整起来也会很快。

如果要分享一下资金存管的真正内涵,这里可能涉及对于两个概念的重新理解。一,什么是交易结构?二,什么是账户?

交易结构关乎场景构建的大局

之于我们而言,交易结构主要是指资金走向,钱怎么流动。如果你要想在WE理财平台做一笔投资,首先要开户绑卡充值,这笔钱会从你的实体银行卡账户划转到你在民生银行下的虚拟子账户,投标成功之后会转移到借款人在民生银行的虚拟子账户,最后再划转到借款人的实体银行卡账户。

很简单么?这里面复杂的东西实在太多。

最核心的问题在于一个现在看似简单的交易结构,是经过历时数月的探讨与纠结得来的,这就不仅仅是技术部门的事,金融部门、法务部门都要参与进来。大家要认真考虑自身业务发展需求、合作银行的需求、此种结构的法律关系、银行规则下的效率问题等诸多因素。交易结构决定了哪些事情可以做,哪些不能做。这是底层技术搭建最为重要的前提。

讲个段子吧。。。我本以为没有人理解我在做些什么,直到我的一个在伊朗经商多年的哥们儿,回来在酒桌上拍着我的肩膀老泪纵横地说:“兄弟我懂你。”此人奇葩到在伊朗开了家服装店卖国产服装给伊朗人民。当时伊朗仍处在国际经济制裁环境下,没有外币兑换和国际转账服务。哥们儿挣的成箱的里亚尔究竟怎么才能送到国内老婆手里呢?发愁了整整一年,好多票子都发霉了。。。

经过了长达一年的成本试错和路径研究,这哥们儿最后找到一个方法:先把钱整箱地靠走私小船送到霍尔木兹海峡对岸的阿曼,阿曼有地下钱庄可以把钱换成当地货币,并转给迪拜的钱庄。钱在迪拜被兑换成美元,以美元再汇兑到国内。虽然雁过拔毛,但还是有相当量的资金辗转回国。

“兄弟我不容易啊。。。”我秒懂了他那两行清泪,以及为什么他能听明白什么是交易结构。不过真是相当不靠谱,任何一个环节都不可控,且基本不合规。我理解他的唯一诉求就是要把钱转回国,这种结构有他个人的无奈。但对于一家公司而言,每一步底层设计都要考虑合规性、安全性、发展性,难度要大得多。

账户的感知属性在不断被弱化

账户是另一个特别的概念。这一点在没有接触互联网金融产品之前我是没有强感知的。从宏观层面来说,账户(这里特指资金账户)是人与人、人与机构进行交易的主要载体。几乎所有的个人经济活动都是以账户为核心展开的。而账户本身是从一个人到另一个人的过程,这其中还具备了某种潜在的交际属性。

直到微信支付出现之前,账户的交际属性是没有被充分挖掘的。早先在一笔交易过程中,账户作为人的身份识别信息,几乎是被放到了和人同等重要的地位。比如你要给一个人转账,你必须要了解他的账号、姓名、开户行等字符信息。于是账户成为了一个被公开讨论和使用的身份代替物。

如今账户的显性影响力被大大弱化了,原因来自于移动互联,来自于社交场景。例如在微信支付的环境中,你首先关注的不是账户本身,而是对方这个人。在用户感知层面上,原来是我通过你的账户把钱给你,而现在是我直接把钱给你。人重新成为了交易的核心,而不再是账户。虽然底层的划付逻辑并没有发生本质变化,但是理念已经相差十万八千里。

在资金存管的体系内,我们不仅关注账户在新理念下所产生的用户体验问题,同时也十分在意账户的能力。比如虚拟账户和实体账户之间的功能性差异以及同一虚拟账户购买产品种类的能力等等。在未来,我们还要做智能配置、财富管理,账户的作用更加关键。突出人的存在,弱化账户感知,同时扩大底层账户能力,这是可预见的方向。

资金存管的场景是众多场景之一,而如何架构一个更宏大的投资环境,是每一个技术人需要思考的问题。正如《骇客帝国》中建筑师所说的那样,我们希望自己的每件作品都是完美而卓越的艺术品,但其实没有所谓的完美,因为迭代是一个永恒的话题。

 文/人人贷技术总监  朱皓珉