凌晨三点的简历 之一

从游戏服务器到量化交易员,
我的简历上缺的不是工作经验,
而是对未来的想象力。

陈默把手机往桌上一扔,屏幕朝下扣着。

群消息他看到了。那个女孩问“量化有招人的吗,投了一些,感觉都是挂着的”,群主回“调整一下简历”。就这么几句,他却莫名其妙地心烦。

烦什么呢?又不是他要转行。

他端起杯子喝了口咖啡,凉的。凌晨两点四十,窗外是深圳秋夜惯有的样子,科技园的写字楼还亮着零星的灯,和他工位窗外的景致没什么不同。深圳创梦科技的游戏服务器端,他在这待了四年,从实习生做到主程,负责过两款月流水过亿的手游后端架构。

四年,足够一个游戏从爆火到无人问津,足够他把C++、分布式系统、高并发这些词刻进骨子里。

他把咖啡杯放回去,无意间瞥见桌上那本《用Python实现AI量化交易》。书脊已经翻软了,封面有点卷边。三个月前买的,每天晚上看一点,断断续续看到第十章。

旁边压着一张便签纸,上面是他自己写的几行字:

*Alpha因子 贝塔收益 回测 过拟合 Sharpe比率*

笔迹有点乱,像当时一边看一边记,脑子里也在一边乱。

他拿起来看,群里那个女孩又发了条消息:“我是做游戏服务器的,想转量化,的确需要修改下。”

陈默盯着这行字看了好几秒。

游戏服务器。

转量化。

修改简历。

他把手机屏幕摁灭。屏幕又亮起来——有消息。他又摁灭。第三次亮起来的时候,他点开了。

群主发了一条语音,转成文字:“那你说说一个量化投资的公司,需要你去干什么呢?你要针对你擅长的和量化公司需要的,调整一下简历的内容,说辞包括工作经历。”

女孩回:“好的。”

陈默把手机扣回去,人往椅背上一靠,盯着天花板。

天花板上有一块污渍,形状有点像他上周写的那段回测代码的曲线——那段代码跑出来的夏普比率只有0.8,他查了三天,发现是因为代码里不小心用到了未来数据,也就是前视偏差,导致策略在看“后视镜”交易。

他怎么会知道前视偏差?

三个月前的某个凌晨,他加班修完一个线上bug,靠在椅子上刷知乎,刷到一个问题:做游戏服务器开发,想转量化金融,可行吗?

下面有个回答,很长,他看了半个多小时。那个人也是游戏后端出身,后来去了某家量化私募,写的经历简直像在替他做职业规划。回答的最后一段说:量化需要的不是金融背景,是你处理复杂系统的能力、对数据的敏感、对性能的极致追求——这些,游戏后端每天都在练。

那之后,他就像被什么东西勾住了。

一开始只是随便看看,后来每天下班回家都要翻几页书,再后来开始写代码——写那些他从未接触过的代码:计算移动平均线,计算RSI,计算布林带。他把A股十年的日线数据下载下来,跑一些最简单的策略回测,看资金曲线在屏幕上画出来。

凌晨还在思考的程序员

第一次跑出那条向上倾斜的曲线时,他盯着屏幕,心跳快了几拍。

那条曲线后来被他查出来是未来函数导致的假象,但那个瞬间,他忘不掉。

那是一种陌生的感觉。做游戏四年,他写过无数代码,处理过无数并发请求,但那些东西上线之后,他看到的只是后台跳动的数字:同时在线人数、日活、付费转化率。他知道自己写的代码在支撑一个世界,但他从未真正走进那个世界。

而那条假的资金曲线,是他的代码在另一个世界里留下的脚印。

手机又震了一下。

他拿起来看,这次不是群消息,是他妈发来的。一张图片,老家客厅里新买的一盆绿植,配一条语音:“周末去花市买的,你看好不好看?”

他打字回:好看。

他妈又发:最近加班多吗?注意身体。

他回:还行。

他妈发了个笑脸,没再说话。

陈默盯着那个笑脸看了很久。他想起上次回老家过年,他妈问他在深圳怎么样,他说还行。他妈又问做游戏好玩吗,他说还行。他妈沉默了一会儿,说,你从小就不爱说这些。

他不是不爱说。是他不知道怎么说。

怎么说他写的那些代码?说他的工作是让几百万人在同一时刻点击某个按钮时,服务器不会崩?说他每天解决的那些问题,普通人连问题是什么都听不懂?说他在这个行业里做了四年,被叫做“主程”,拿着同龄人里还算不错的薪水,但有时候凌晨三点看着窗外那些亮灯的写字楼,会突然想:我在干什么?我写这些东西,是为了什么?

他想起上个月产品经理开会时说的那个词:留存率。要设计一个让用户每天都想上线的机制。有人提议做一个每日签到领奖励,有人提议做一个限时活动,有人提议做一个PVP排行榜。

他说:你们说的这些,后端都能做。

散会后他回到工位,对着屏幕发了一会儿呆。

然后他打开了那份PDF——《用Python实现AI量化交易》第十章。

手机又震了。

这次是群消息。有人问那个女孩:“你之前做过什么项目?”

女孩回了一些游戏相关的项目,什么“日活百万的MMO服务器架构”、“实时对战匹配系统优化”、“跨服战数据同步方案”。

陈默一条一条看过去。

这些项目他太熟了。那个“实时对战匹配系统”,他做过优化,把匹配时间从3秒降到了0.8秒。“跨服战数据同步”,他设计的方案现在还在跑,每天同步的数据量以T计算。

这些东西,量化公司需要吗?

他想起上周读的一篇文章,讲高频交易系统的延迟优化。文章里说,那些做高频的团队,为了把交易延迟降低一微秒,愿意付出任何代价。他们用FPGA硬解码网络数据包,把网卡驱动改成自己的,甚至有人研究过不同颜色的网线对延迟的影响——虽然最后被证伪了,但这个追求极致的精神,让陈默看得热血沸腾。

一微秒。

他在游戏行业待了四年,从没人要求他把延迟降低一微秒。降低10毫秒都算大优化了。

他想起另一个晚上,他在看某家量化私募的招聘JD,有一条写着:熟悉Linux内核网络协议栈者优先。

他当时愣了一下——这不是他刚入行那年啃过的书吗?《深入理解Linux网络技术内幕》,七百多页,他啃了三个月,笔记记了一整本。后来这些知识几乎没用上,游戏开发有现成的网络库,谁还去碰内核协议栈?

那天晚上,他把那本书从箱底翻出来,擦了擦灰,放在桌上。

手机又亮了。这次是那个女孩在群里发了一条:“好迷茫,不知道简历怎么写。”

有人回她:你就写你擅长的啊。

女孩:可我擅长的跟量化没关系吧?

陈默盯着这行字。

他想起三个月前的自己,也是这么想的。游戏服务器和量化交易,一个让人玩,一个让人赚钱,能有什么关系?后来他看了那篇知乎回答,才慢慢想明白一件事:

量化交易,本质上就是在一个极其复杂、极其快速变化的环境里,处理海量数据,做出实时决策。而游戏服务器,本质上也是在一个极其复杂、极其快速变化的环境里,处理海量请求,做出实时响应。

它们需要的能力是同一套:处理高并发的能力、保证系统稳定性的能力、定位和解决性能瓶颈的能力、在极端情况下保证系统不崩溃的能力。

他四年游戏后端生涯,每天都在练这些能力。

他把自己写的那些代码翻出来看:那个日活百万的MMO服务器,他设计的架构现在还能扛住双十一当天的流量高峰;那个实时对战匹配系统,他把匹配时间从3秒优化到0.8秒,写了一百多页的技术文档;那个跨服战数据同步方案,他为了解决数据一致性问题,把分布式系统的那套理论翻了个底朝天。

这些东西,量化公司真的不需要吗?

他想起前段时间面试的那家公司。HR面的时候聊得挺好,技术面的时候对方问他:你对量化交易了解多少?

他说了自己看的那些书、写的那些回测、学的那些金融概念。

对方点点头,说:这些都很基础。然后问了他几个C++的问题,几个操作系统的问题,几个网络编程的问题。

他答得不算好,也不算差。最后对方说:你的技术底子不错,但对金融市场的理解还需要时间。如果有机会,可以先从quant developer做起,写交易系统,写回测框架,慢慢接触策略。

他当时没听懂这句话的分量。

现在他懂了。

quant developer。量化开发。

那不是他想做的吗?不是写策略,而是写让策略跑起来的系统。那是他的老本行。

他拿起手机,把那个女孩发的消息往上翻,看她列的那些项目经验。日活百万的MMO服务器架构、实时对战匹配系统优化、跨服战数据同步方案。

他打字,删掉,又打字,又删掉。最后发出去一行:

“你这些项目挺值钱的。写清楚,不要只说‘做了什么’,要说‘怎么做的’,‘解决了什么问题’,‘达到了什么效果’。”

他发完就后悔了——他跟人家又不熟,多管什么闲事。

但那个女孩很快回他:谢谢!具体怎么说呢?

他又打字:

“比如那个实时对战匹配系统,你可以写:设计并实现了日活百万级别的实时对战匹配系统,通过优化匹配算法和并发处理,将平均匹配时间从3秒降低至0.8秒,提升了用户体验和系统吞吐量。”

发完他又后悔了——这明明是他自己的项目,他怎么帮人家写起来了?

但那个女孩回:太详细了!谢谢你!

群里安静了一会儿。

陈默把手机放下,转头看窗外。对面那栋写字楼,又灭了几盏灯。快三点了。

他想起了很多事情。

想起刚毕业那年,他一个人来深圳,拖着行李箱走出深圳北站,抬头看那些高楼,觉得这座城市真大,自己真小。

想起第一次独立负责一个模块,上线那晚紧张得睡不着,半夜三点爬起来看监控,确认一切正常才又躺下。

想起去年年底项目组聚餐,老板拍着他的肩膀说:小陈,这几年你成长很快,好好干。

他当时笑着点头,心里却在想另一件事:我还会干多久?

不是不喜欢。是那种感觉,怎么说呢——像是玩一个游戏,你已经打到了满级,装备也毕业了,副本也打通了,每天上线就是重复那些日常任务,不知道还有什么可打的。

他想起那本《用Python实现AI量化交易》第十章里,应该会涉及回测的陷阱和挑战。

他还没看到那一章。

他拿起手机,给那个女孩私发了一条消息:

“我也是做游戏服务器的。”

然后他点开那份写了三天、改了五版的简历,从头开始看。

第一版:写满了游戏项目,技术细节密密麻麻。

第二版:删掉了一些不相关的项目,加上了自学的量化知识。

第三版:把“自学Python金融数据分析”改成了“独立完成多因子策略回测系统开发,涵盖数据清洗、因子计算、回测框架搭建全流程”。

第四版:把“熟悉C++和Linux系统编程”改成了“四年C++高性能服务器开发经验,深入理解Linux内核网络协议栈,具备高并发系统性能调优实战经验”。

第五版:把“对量化交易有浓厚兴趣”改成了“具备量化策略研究与开发能力,独立开发的多因子回测系统夏普比率达1.8”。

他盯着这五版简历,看了很久。

那个“夏普比率1.8”是假的——他的策略回测最高只有1.2,而且还有生存者偏差没处理干净。但他没有删掉这一条。

不是因为想造假。是因为他知道,总有一天,他能真的写出一版夏普比率1.8的策略。只要他继续学下去。

他又看了一遍第一版。

那时候他写简历,觉得自己就是个做游戏的,想转量化是高攀,只敢把游戏项目列出来,小心翼翼地加一行“对量化交易有兴趣”。

现在他看那一行,觉得有点好笑,又有点心疼。

不是高攀。是还没学会怎么把自己的价值翻译成对方听得懂的语言。

窗外有车经过,声音在凌晨显得格外清晰。

他想起刚入行那年带他的师傅说过一句话:技术这行,最怕的就是把自己定义成“写XX的”。你是写游戏的,但你不是只会写游戏。你会的是解决问题。

他那时候不太懂这句话。

现在有点懂了。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 共2条

请登录后发表评论

    暂无评论内容