这个原型就是“智荐”的前身。
我入职中启科技的时候,是带着这个原型去的。
王总看了演示,当场拍板录用。
“这个算法好!来我们公司,把它做成产品!”
我把算法带进了公司。
十年间不断迭代、优化、升级。
但最底层的核心逻辑,从来没变过。
而这个核心逻辑的第一个版本,提交记录在我的个人GitHub上。
时间戳:2014年8月17日。
我入职中启科技:2015年3月。
早了七个月。
这七个月,就是我的护城河。
第二张牌:源码控制。
公司服务器上跑的推荐系统,是编译后的版本。
源码在公司的Git仓库里。
但——
核心算法模块的源码,只有我能看懂。
不是加密,是复杂度。
十二万行代码,没有完整的注释文档。
因为王总说“写文档浪费时间”,刘畅也从来不催。
他们不知道这意味着什么。
意味着我走了,没有人能维护这套系统。
没有人能改一个参数。
没有人能修一个bug。
系统只要出问题,就是瘫痪。
彻底的、完全的、无法修复的瘫痪。
第三张牌:竞业协议。
入职的时候签过一份竞业协议。
但是——
我查了劳动法。
竞业限制条款生效的前提是:公司在离职后按月支付竞业补偿金。
中启科技从来没有支付过任何竞业补偿金。
也就是说,这份竞业协议,是废纸。
第四张牌:关系。
去年有一次技术交流会。
我代替刘畅去的,因为他“那天有事”。
在那次交流会上,我认识了一个人。
沈磊。
锐驰科技的CTO。
锐驰科技是中启的直接竞争对手。
体量是中启的三倍。
他们一直想做推荐系统,但技术上始终突破不了。
沈磊听完我的技术分享后,加了我微信。
“陈旭,你的方案很有意思。有没有兴趣聊聊?”
当时我拒绝了。
“谢谢沈总,我在中启挺好的。”
现在想来,那是我说过的最蠢的话之一。
但没关系。
他的微信还在。
我翻出那条对话。
想了想。
打了一行字。
“沈总,方便聊聊吗?”
三十秒后,他回了。
“方便。明天?”
我深吸一口气。
“好。”
7.
接下来的两个月,我做了三件事。
第一件:把核心算法的模块化做得更彻底。
我把整个推荐系统的依赖关系重新梳理了一遍。
对外说是“技术优化”。
实际上是把核心模块和外围模块的耦合度降到最低。
这样一来,我离开的时候,核心模块的缺失会直接导致整个系统崩溃。
而外围模块根本补不上这个窟窿。
刘畅看了我的“优化方案”,大加赞赏。
“小陈这个架构重构做得好,系统性能提升了百分之十五。”
他不知道,性能确实提升了。
但系统对我的依赖程度,也提升了百分之一百。
第二件:和沈磊深入接触。
我们见了三次面。
第一次,在咖啡馆。我给他看了我的算法原型——2014年的版本,跟中启无关的版本。