我是一个喜欢写代码但几乎不太有机会写代码的 CTO,也是一个看得懂财务报表、通过所有 CFA(金融特许分析师)考试并获得 FRM(金融风险经理)认证的拿到金融 MBA 的 CTO。
尽管工作太忙没时间写代码,我还是抽空给团队用 Java 做了一些金融算法的原型,期间还学会了 Python 语言以及各类机器学习算法。学习真是一种快乐。
如果我有幸被称作码农,我会幸福地唱起歌儿。
——康德胜
编者按
从普通程序员做到 CTO 之后,他转战美国从 0 开始码农生涯,在一家金融机构房利美(Fannie Mae)一步一个脚印,再次成长为管理者。随后,他“学成”归来,先后工作于工商银行总行和英国渣打集团。
对于近来势头正猛“FinTech”,康德胜并不陌生,因为掐指一算,他已然在这个领域工作了十五年。在代码、管理、金融三个方向上皆有耕耘,辗转工作于中美两国,康先生的都经历了哪些转折点?他又如何在中国 VS 美国,FinTech VS 传统金融两个对比维度上进行分析?在中国技术开放日美国站活动中InfoQ 与康先生相识相知,请跟随InfoQ 来一探究竟。
从码农到CTO 再到码农,我爱编程
我的职业生涯始于大学二年级,当时我在浙江大学读机械设计专业,二百多年的现代机械学理论极其严谨却让我昏昏欲睡无法享受学以致用的畅快。借助于高中就开始写BASIC 代码的基础,我找到了一家软件初创公司开始我的创业生涯。那个时代,雷军还在鲍岳桥的金山软件公司里当开发经理,王志东刚写了中文之星,现在的互联网大拿们大多数都在nowhere,Windows 3.1 也刚刚问世。
我的第一个软件产品是一个英语教育系统,为了这个我特意在DOS 平台下开发了一个支持中文的我自己的仿Windows 平台。什么都得自己写,绝对的面向对象C++,窗口、按钮、菜单、下拉列表框、BMP 图形、汉字显示……连鼠标以及图形卡的驱动都是我用汇编语言自己弄的。什么都得自己做,产品、设计、编码、测试、安装、运维,等等。现在有个时髦词儿叫全栈,那个时候只不过叫程序员而已。
我当时的老板刚从德国拿了博士回来,真可谓是意气风发,什么都鼓励我去尝试,有想法敢拼敢闯的人一定会非常有前途,于是很多年之后他成了杭州最知名大学的校长。感谢这位伯乐大师的支持,我带领团队开发了好几个软件产品,从网络通信工具到各类管理信息系统,现在想想都觉得有些不太敢相信自己当时的产能,比起现在动辄几百人的团队,小公司的效率确实要高得多。
Work hard play hard,就这么风风火火干了若干年,嘻嘻哈哈玩了些许时光,直到有一天我在杭州世贸中心花 50 块钱听了一场讲座。
台上是一个小个子长相迥异的奇人,激情四射的能量足可以把全会场的人心点燃,这个人叫马云,刚拿了孙正义的 2000 万美金。我也是台下内心汹涌澎湃的观众乙之一,不过令我激动的不是马云的阿里巴巴,而是产生了那么多互联网奇迹的美国(现在想想那是多么痛的领悟啊!)。我对美国产生了浓厚的好奇心,我决定去这个国家看看!
于是我放弃了国内一家公司的 CTO 职位,寻找美国的工作机会。
美国的码农生涯,正式踏入 IT 金融领域
在位于美国首都华盛顿特区的房利美(Fannie Mae,也就是那个 2008 年金融危机中浪尖顶端的几家公司之一。),我重新开始了码农生涯。写代码对我来讲不是个问题,哪怕是一门新的语言 Objective C。
很多人都不会知道,现在这么牛叉的这个语言当时其实已经奄奄一息,连 64 位的 C++ 库有一阵子都无法连接上,害得我当时不得已写了个类似现在 protobuf 以及 thrift 的用于不同语言交换数据的工具包,让 Objective C、C++ 和 Java 可以随意快速通信。后来又用 JavaCC 开发了我们自己的规则语言,用 Java 开发了我们自己的工作流引擎,java-xml 捆绑工具,类似 Spring 的容器,分布式任务管理等等很多有那么些挑战但又非常有趣的软件工具。我们开发的业务系统主要是做投资组合管理、投资策略分析、投资收入模拟、投资回报分析以及市场风险管理,这些系统最后帮助房利美度过 2008 年的难关并且现在还在健康地奔跑中。
垒代码不是个难事儿,但开发这些复杂系统需要了解大量的金融知识。同时,通过做码农稳固自己的职位后,我那颗曾经做了多年管理的心又开始不安分起来,提高英语沟通能力以及金融知识成为最重要的任务。
于是我去读了个金融 MBA 又考了 CFA 以及 FRM。有一天,业务大老板想设计一个算法来优化管理公司近 1 万亿美金的投资组合,找了半天居然没一个人敢接这个活儿。机会难得啊,反正没人做那么我就试试呗。结果我“披星戴月”花了好几周时间居然把这个给做出来了!这是我设计的第一个也是分量最重现在仍然在跑的一个金融量化模型,也正是因为这个有那么点牛叉的小成就,我操着磕磕巴巴的英语被提拔成了资深开发与分析经理。
相信自己,绝不轻易放弃,我觉得这是在美国的华人想爬到管理层的最重要的武器。一旦到了管理岗位,每天都需要噼里啪啦地说英语。和别的团队讨论问题,跟下属谈心写评语,慢慢的语言不再是什么大的问题。突然有一天,竟然发现自己可以用英语随意地表达自己的思想,那种自由的解放了的幸福感,就如同是一个喜欢飞翔的小鸟在笼子里关了很多年后,终于被放出去一样超级爽快。
归国就职大银行,新挑战再接再厉
语言、业务专业以及技术都不成为问题后,我便希望去寻求一些新的挑战。2010 年,工商银行总行在美国和英国招聘金融市场领域的业务专家,我被录用了!两年的时间里,我帮工总行成功开发国内第一套独立知识产权的金融市场交易与管理平台,管理着工总行近 3 万亿人民币的各类金融资产。如国内外债券、货币市场、外汇、黄金商品以及衍生产品等,并帮助总行完成对一家外资银行的并购。我在工行的任务是纯粹金融领域的,并不牵涉到系统设计与编码。可是,我骨子里是个热爱编码的码农啊,于是我在业余时间,又用 Java 写了一套债券估值以及风险计算的系统。
本想离开工行自己创业,开发适合国内银行使用的风险管理系统,正好碰到渣打集团在中国建立金融市场研发中心,于是投身成为渣打一员。在天津管理一个全球开发团队,担任高级总监,支持集团的市场风险和流动性风险管理。渣打 3 年,把一个 10 来人的小团队做到 150 余人,横跨中国、印度、新加坡和英国。在一家有着 150 多年历史的跨国公司里做管理不想成长都很难,真的非常感谢这家以人为本的企业,帮助我涅盘到一个新的层次。离开渣打前的一段时间里,我用过年的假期写了一个叫 SmartETL 的开源软件,我希望给我的团队一个创新的思路,直接给需求分析人员一个工具,跳过几十个低效率的 IBM DataStage 开发人员,为公司每年节省一百多万美元的授权费,并且能把开发人员从 50 人降低到 10 人。这也许是我以写代码为乐并对技术追求简洁高效的一种印证吧。
拥抱 FinTech,开启历练模式
离开渣打是因为那句话:人应该有梦想,万一做成了呢!
回想自己当年创业未成,进入大公司爬 career ladder,终于爬到一定的高度,也应该出来闯闯啦。正好赶上中国互联网金融的创业热潮,既然自己在 Fin(金融)以及 Tech(技术)两方面积累了 15 年,不如拉出来溜溜。2015 年年底,我加入广州的互联网金融公司 PPmoney 万惠集团,任集团 CTO,全面管理公司的技术战略以及研发工作。
FinTech PK 传统金融
(一)传统金融大势已去
传统的金融公司在 IT 方面存在以下的一些问题:
- 技术相对保守落后。因为银行等金融机构求稳的特性,金融公司采纳新技术的速度会比较慢。一方面担心新技术会带来风险,一方面新技术的内部审批流程也是非常复杂,中间要经过太多的环节。比如互联网公司早就使用的大数据分布式技术 Hadoop,很多银行才开始尝试,并且只是使用 Hadoop 的存储管理部分。又比如基于机器学习算法的推荐以及营销系统,在传统金融领域也是才刚刚开始尝试。
- 不太敢用开源软件。银行宁可花巨资采购商用软件也不愿意冒险使用开源系统。一方面传统金融机构在技术实力方面相对较弱驾驭不了开源系统,一方面他们倾向于找厂家提供全面的支持。
- 缺少自己的技术力量,被软件开发商捆住了手脚。因为传统金融行业缺乏自己的开发团队,尽量以外购或外包的形式实现 IT 系统。自己对系统的控制力较弱。比如国内的券商,基本上被恒生以及金正的系统锁定了业务模式,想做商业创新难上加难。
- IT 创新速度缓慢。传统金融因为其经营门槛相对较高,如有牌照保护等,对借助新技术进行业务突破没有太大的驱动力。反之那些利用新技术进行业务创新的公司,因为生存的压力,反而会更积极寻求创新突破。比如支付宝等第三方支付的出现,已经创造了一个全新的业务模式,从传统金融体系抢得很多市场份额。
(二)相较于传统金融,FinTech 的优势及意义
FinTech,顾名思义是 Finance(金融)+ technology(技术),最早是作为提升传统金融效率的一些工具与方法,所以本质上是藏在传统金融背后,帮助其进行计算以及自动化处理的。慢慢的,随着更多的新技术的创建,量变开始转化为质变,技术逐渐开始创造出一些新的金融模式,FinTech 这个词儿也开始转变为新金融的代言。
与传统金融相比,FinTech 有如下这些优势和意义:
- FinTech 是技术驱动的,他往往比传统金融更便捷更迅速。比如支付,传统金融要去银行柜台转账或者用信用卡支付,FinTech 可以直接在手机上完成转账,也无需申请信用卡,每一笔交易都可以在手机软件里快速进行查询管理;
- FinTech 比传统金融更加会借助社交。因为互联网把人和人拉得更紧了,人和人之间的交易关系变得更加广泛,由此产生的金融行为也越来越多。比如通过微信分享购买的商品,就会促进更多的人进行采购从而提高相应的金融业务量,如支付或者是借贷。
- FinTech 允许更多的普通老百姓享受到传统金融中高净值客户才能享受到的一些投资服务。比如借助 PPmoney 手机理财 App,普通投资人可以享受到 10% 以上的年投资回报,在传统金融中只有大客户才有这样的机会。
- FinTech 能更好地服务于普惠金融,让很多传统金融不服务的客户群体得到及时的金融服务。比如万惠及贷 App,可以让一个没有任何征信的小白或者蓝领工人快速方便地借到钱;
- FinTech 的一些新技术,如区块链,可以做到防作弊以及去中心化,这个将带来整个金融领域的一场革命,让传统金融机构逐步丧失交易中介的职能;
- FinTech 更加借力于人工智能(AI),提供传统金融服务提供的服务。比如我们正在开发的智能投资机器人,能通过海量金融信息、财经新闻、股票走势进行深度学习,挖掘出投资方向以及投资机会,这个对投资小白来讲有着很好的指导作用。
(三)当前的 FinTech 还不够好
FinTech 应用范围很广,主要包括电子支付(如支付宝)、电子货币(如比特币)、互联网借贷、互联网理财、互联网证券、互联网保险、众筹以及区块链等多个分支。FinTech 最早在美国出现,如 Paypal 电子支付以及 Lendingclub 的互联网 P2P 借贷。
传入中国后,伴随中国经济的迅猛腾飞,其发展也远远把美国甩在身后。就拿互联网理财来看,2013 年到 2016 年,中国市场规模从 3853 亿迅速扩张到 2.6 万亿,而美国 2016 年的规模也就 2000-3000 亿人民币。应该说,FinTech 中的电子支付业务经过 10 余年的发展已经非常成熟,支付宝和微信正逐步取代银行卡成为老百姓主要的支付方式,第三方支付通道也让各类投资借款异常便利。
而其他的领域,如目前最火热的互联网借贷和互联网理财,尽管发展迅速,还存在着不少障碍和痛点。
首先是监管不完善导致的市场混乱。过去几年相对宽松的监管环境给互联网金融带来了巨大的发展机会,各类平台如雨后春笋般涌出,一些虚假不规范的公司也趁机浑水摸鱼,给这个新兴行业带来不少困惑,影响了行业的发展速度。幸运的是,2016 年各项监管政策逐步落地,这个行业正慢慢走向规范。
其次,互联网金融的配套基础建设尤其是征信体系还不健全。相对于金融体系更加成熟的美国,因为拥有更多未能被传统金融所满足的金融需求,中国的互联网金融有着更为广阔的市场空间。但是,不完善的征信体系给金融授信带来困难,放贷机构对中国将近 3/4 的人口还比较难以判断信用风险,因而无法满足其紧需的金融需求。
第三,一些理论上非常有前景的 FinTech 技术还存在不少落地的难度。比如被美誉为下一个互联网式技术革命的区块链技术,捧得很高但到目前还没有找到几个实实在在的应用场景。互联网证券可以利用互联社交概念彻底颠覆传统的证券行业,但受限于证券牌照的制约无法尽早推广。
我眼中的 FinTech 必备技能
FinTech,金融与科技的结合体,除了必备的金融业务知识,技术上需要重点掌握哪些?
FinTech 开发中,我觉得最重要的,首先是在技术上对金融业务的抽象设计能力。金融产品金融业务相对于电商领域要复杂得多,很多开发人员无法从日常经历中获取对金融产品更透彻的理解,所以在开发相关系统的时候,容易就事论事,无法把不同的金融产品统一起来,无法为系统功能可能发生的各种变化做好准备。
比如说一个借贷产品,如果开发人员对金融有比较深刻的认识,他会把这个产品切分成几个核心组件:本金偿还方式、利息计算方法、利息浮动配置以及日期计算规则等,每个组件各司其职,各具变化,不同的搭配组合构造成了各类复杂的金融产品。如果开发人员不了解内在机理,每个产品都单独去写代码,那么当其中某一个组件发生变化时,要改动的代码会非常多。
比如 PPmoney 理财首创的一款月月增产品,其利率每个月都会向上调整,让持有投资更久的人获取更高的回报。这款产品是从原来固定利率产品演变过来的,因为我们把利息模块给拆成组件了,只要在原有的基类上派生出一种新的计算方法,其他的代码可以完全重用,感觉上是创建了一个新的产品,实际改动的代码非常有限。
其次,自动化测试尤其重要。因为计算复杂,测试人员需要测试大量的业务场景。每一次代码修改都有可能产生新的 bug。我在美国的公司为核心量化引擎设计了数万个自动化测试案例,极大提高了系统开发效率。
第三,FinTech 因为把更多的金融服务直接暴露在互联网上,系统迭代的速度又远远超过传统金融行业,其潜在的安全问题就变得越来越重要。很多小的互联网金融公司因为技术实力较弱,客户的数据基本上属于裸奔的状态。
最后,大数据和机器学习作为 FinTech 最主要的代表性技术,是任何一家想在这个市场占据一席之地的公司必须要精通的。
FinTech 之展望
(一)借助 AI 更加智能化
当下,人工智能蓬勃发展,FinTech 会向 AI 靠拢吗?是否可以借助 AI 使 FinTech 更加智能化?
人工智能肯定是 FinTech 里最有前景的一个方向,我对此深信不疑。金融业务是非常复杂的,信息量巨大并且瞬息即变,专业人士都需要多年的培养和历练。能不能利用机器来取代人呢?如同 AlphaGo 一般,可不可以让计算机来模拟人类的思维方式,对海量的数据进行深度分析从而作出正确的判断呢?答案是肯定的。
美国知名投行高盛投资了一家叫 Kensho 的用人工智能进行投资分析的公司,他们的软件可以对市场上刚发生的事件进行评估,通过对关联行业、公司、上下游企业、投融资关系进行深度分析,从而给出投资建议。需要多年辛苦学习和实战锻炼才能长成的金融分析师,在不久的将来可能就会被 AI 分析师取代了。
在需要高智商的投资理财领域,人工智能正迅速发展成一股新的力量。比如智能投顾,其实它有两个层次,狭义的是从美国直接翻译过来的叫“Robo-Advisor”(机器人投顾),尽管其打着“机器人”的称号,但这个并不是真正意义上的人工智能,我们总不能笼统地把所有自动化的东西都称作人工智能吧。这个 Robo-advisor,以美国 Betterment 和 WealthFront 为代表,其“智能投顾”概念实际上只是基于现代投资组合原理的投资优化算法,难度不大。而真正的人工智能投顾,也是我们认为广义上的智能投顾,必须是能像人一样进行思考以及分析的,能够了解投资者真正需求的 AI 系统。我们正在开发的智能投资机器人就是以这个为设计思路,集成了自然语言理解、量化分析、深度学习以及知识图谱等多项技术,能够帮助投资人实时发现投资机会。
(二)脑洞大开,看 FinTech 未来
预测下 FinTech 将来的应用及发展趋势。
任何新生事物都有一个从量变到质变的过程,FinTech 已经或者必将对传统金融行业产生巨大的冲击。这里我们来个脑洞大开展望未来:
- 毋庸置疑,人工智能在投资理财领域会越来越流行,投资决策的能力也会越来越精准,传统的金融分析师职业会被逐步取代;
- 纸币会逐步消失,物理的借记卡信用卡也会消失,生物特性如指纹、声纹、人脸会成为支付的主要工具;
- 中国会出现银行体系以外依靠 FinTech 驱动的财富管理公司,并且这些公司将占有大部分市场份额;
- 在经过几轮市场循环后,P2P 将会成为金融服务的一种主流模式,银行在去中介的趋势下逐步丧失市场份额;
- 技术发展缓慢的传统银行会在下一轮竞争中逐渐没落,最终消亡,技术将成为金融公司比拼的核心竞争力;
- 未来绝大多数业务都是数据驱动的,业务人员绝大多数都会做数据分析,人人都将是程序员,把决策自动化来提高效率;
- 出现虚拟股票交易市场,更多的人会参与股权投资与转让;
- 普惠金融产品的利率会逐步降低,和目前优质借贷产品间的利差将慢慢消失,社会的金融效率越来越高,融资成本陆续变低;
- 程序员越来越成为行业发展的决定性力量,他们通过开发更先进的人工智能进行竞争;
- 正如美国电视连续剧疑犯追踪里所描写的,有可能出现一个统治性的超级人工智能操纵全球金融市场。
彩蛋环节:程序员最后非得转管理不可吗?
InfoQ:在中国和美国都从程序员做到过技术领头人,中美程序员有什么差别?做多久的编码转向管理岗会比较好?
康德胜: 美国的程序员比起中国的程序员普遍要更加全面和资深。美国大学以及研究生的计算机课程更强调动手和项目实操,这样他们毕业后很快就可以在工作中上手。国内的教学理论 c 性更多一些,大多数学生一般都是在快毕业的时候才开始认真学些编程技能以应付工作面试。特别是研究生教学,2 年半的时间里,很多人的时间都浪费了,替老师打工的虽然锻炼了一些技能,但很难有一个职业化的编程指导。很多都不知道自己具体在干什么混日子的,有没有?
职场中的程序员,美国资深的更多些。比如我所在的公司里写程序十几年的占一半以上,越老经验越丰富,无需做领导。美国的程序员可以拿很好的薪水,所以他们可以静心专门搞技术。国内的程序员相对要浮躁些,很多人都想做项目经理,认为只有做管理了,薪水才能上去。感觉国内也就几家互联网巨无霸公司可以有比较好的工程师文化,非管理的专业条线也可以发展的很好。
至于做多久的编码转向管理岗比较好,那要看是什么样的岗位。如果是项目经理类的,做 2、3 年转都可以。但如果是技术管理类的,如技术总监或者 CTO,我的建议是至少 5 年以上,并且在做管理的过程中也不要放弃写一些代码,让自己对技术的嗅觉始终保持足够的灵敏度和准确的判断力。美国很多大投行的董事总经理(MD)都要求写一些代码的。我现在对自己的团队,也是要求总监级的人具备代码编写能力,这样才能把控好自己团队的方向。
InfoQ:感谢康德胜先生接受我们的采访。
采访嘉宾
康德胜,万惠集团(旗下拥有 PPmoney 理财、及贷、一步购车、挖牛等品牌)副总裁兼 CTO,2016 年 12 月中国技术开放日美国站嘉宾。拥有20 多年软件开发与管理经验,其中15 年着重于FinTech 领域;曾任英国渣打集团市场风险与流动性风险全球高级技术总监、工商银行总行海外特聘金融市场业务架构专家、美国房利美公司投资组合与风险管理资深开发经理、国内数家软件公司CTO 等职位。
浙江大学计算机硕士以及美国马里兰大学金融MBA,拥有CFA 以及FRM 金融领域专业认证;在复杂金融产品交易、风险、估值、分析等金融业务领域以及计算机语言、大数据、分布式计算等技术领域有较深的造诣。大二开始软件创业,开源社区的积极参与者(github.com/dennisk28),深爱网球潜水滑雪等运动。
感谢木环对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们。
评论 1 条评论