本文主要是介绍一个码农到CIO的20年IT从业者的自白:IT管理与技术未必不可兼得,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文/康德胜
我是一个喜欢写代码但几乎不太有机会写代码的CTO,也是一个看得懂财务报表、通过所有CFA(金融特许分析师)考试并获得FRM(金融风险经理)认证的拿到金融MBA的CTO,如果我有幸被称作码农,我会幸福地唱起歌儿。——康德胜
编者按
从普通码农到国内公司CTO是一段经历;放弃CTO优渥待遇转战美国技术底层,再次做到管理岗位又是一段经历;选择回国发展,先后加入工行、任职渣打,到现在的万惠集团副总裁兼CTO,是他最新的一段经历。人生就是各种各样的经历,他的经历丰富却有借鉴意义,也希望你能从中受益!
管理与码农的双重选择 码农到CTO
我的职业生涯始于大学二年级,当时我在浙江大学读机械设计专业,二百多年的现代机械学理论极其严谨却让我昏昏欲睡无法享受学以致用的畅快。借助于高中就开始写BASIC代码的基础,我找到了一家软件初创公司开始我的创业生涯。那个时代,雷军还在鲍岳桥的金山软件公司里当开发经理,王志东刚写了中文之星,现在的互联网大拿们大多数都在nowhere,Windows 3.1也刚刚问世。
我的第一个软件产品是一个英语教育系统,为了这个我特意在DOS平台下开发了一个支持中文的我自己的仿Windows平台。什么都得自己写,绝对的面向对象C++,窗口、按钮、菜单、下拉列表框、BMP图形、汉字显示……连鼠标以及图形卡的驱动都是我用汇编语言自己弄的。什么都得自己做,产品、设计、编码、测试、安装、运维,等等。现在有个时髦词儿叫「全栈」,那个时候只不过叫程序员而已。
我当时的老板刚从德国拿了博士回来,真可谓是意气风发,什么都鼓励我去尝试,有想法敢拼敢闯的人一定会非常有前途,于是很多年之后他成了杭州最知名大学的校长。感谢这位伯乐大师的支持,我带领团队开发了好几个软件产品,从网络通信工具到各类管理信息系统,现在想想都觉得有些不太敢相信自己当时的产能,比起现在动辄几百人的团队,小公司的效率确实要高得多。
Work hard play hard,就这么风风火火干了若干年,嘻嘻哈哈玩了些许时光,直到有一天我在杭州世贸中心花50块钱听了一场讲座。
台上是一个小个子长相迥异的奇人,激情四射的能量足可以把全会场的人心点燃,这个人叫马云,刚拿了孙正义的2000万美金。我也是台下内心汹涌澎湃的观众乙之一,不过我激动的不是马云的阿里巴巴,而是产生了那么多互联网奇迹的美国(现在想想那是多么痛的领悟啊!)。我对美国产生了浓厚的好奇心,我决定去这个国家看看!
奔赴美国,重新开始码农生涯
于是我放弃了国内一家公司的CTO职位,找个机会去了位于美国首都华盛顿特区的房利美(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人。这也许是我以写代码为乐并对技术追求简洁高效的一种印证吧。
离开渣打是因为那句话:人应该有梦想,万一做成了呢!回想自己当年创业未成,进入大公司爬career ladder,终于爬到一定的高度,也应该出来闯闯啦。正好赶上中国互联网金融的创业热潮,既然自己在Fin(金融)以及Tech(技术)两方面积累了15年,不如拉出来溜溜。
投入万惠,FinTech历练
2015年年底,我加入广州的互联网金融公司PPmoney万惠集团,任集团CTO,全面管理公司的技术战略以及研发工作。先后主导开发了支持PPmoney理财的蜂巢引擎、支持借贷品牌及贷的大数据风控灵机系统、支持互联网证券的挖牛系统以及目前正在研发的智能投顾系统。后来还作为集团副总裁兼任集团消费金融子公司总经理职位负责集团的互联网借贷业务。尽管工作太忙没时间写代码,我还是抽空给团队用Java做了一些金融算法的原型,期间还学会了Python语言以及各类机器学习算法。学习真是一种快乐。
程序员非得转管理不可吗?
在中国和美国都从程序员做到过技术领头人,中美程序员有什么差别?做多久的编码转向管理岗会比较好?
美国的程序员比起中国的程序员普遍要更加全面和资深。美国大学以及研究生的计算机课程更强调动手和项目实操,这样他们毕业后很快就可以在工作中上手。国内的教学理论性更多一些,大多数学生一般都是在快毕业的时候才开始认真学些编程技能以应付工作面试。特别是研究生教学,2年半的时间里,很多人的时间都浪费了,替老师打工的虽然锻炼了一些技能,但很难有一个职业化的编程指导。很多都不知道自己具体在干什么混日子的,有没有?
职场中的程序员,美国资深的更多些。比如我所在的公司里写程序十几年的占一半以上,越老经验越丰富,无需做领导。美国的程序员可以拿很好的薪水,所以他们可以静心专门搞技术。国内的程序员相对要浮躁些,很多人都想做项目经理,认为只有做管理了,薪水才能上去。感觉国内也就几家互联网巨无霸公司可以有比较好的工程师文化,非管理的专业条线也可以发展的很好。
至于做多久的编码转向管理岗比较好,那要看是什么样的岗位。如果是项目经理类的,做2、3年转都可以。但如果是技术管理类的,如技术总监或者CTO,我的建议是至少5年以上,并且在做管理的过程中也不要放弃写一些代码,让自己对技术的嗅觉始终保持足够的灵敏度和准确的判断力。美国很多大投行的董事总经理(MD)都要求写一些代码的。我现在对自己的团队,也是要求总监级的人具备代码编写能力,这样才能把控好自己团队的方向。
这篇关于一个码农到CIO的20年IT从业者的自白:IT管理与技术未必不可兼得的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!