十年一梦
154/180

52018·凛冬

154V5_C10_沉默的许畅

4450字 · 约9分钟

阅读进度 0%已读 0 分钟 / 共 9 分钟

V5_C10_沉默的许畅

我是偶然看到的。

八月下旬的一个晚上。加班。办公室里只剩我和空调的嗡嗡声。我在查公司的代码提交记录。不是突击检查。是在看整体进度。刘海洋说"给我两个月过九十"。我想看看这两个月的工作量到底是什么样的。

打开Git平台。公司组织架构下面列着所有人的提交记录。刘海洋。小杨。许畅。还有几个不常提交的。我一个一个看。刘海洋的提交频率最高,每天两到三个commit。稳定的。小杨也稳,每天一到两个。许畅。

许畅的账号下面有一个不在公司组织架构里的仓库。

仓库名是七位随机字符串。不是英文单词。不是缩写。是随机的。像密码生成器生成的那种。七个字符。大小写字母加数字。毫无语义。如果你不点进去。你根本不知道它是什么。

我点进去了。

私有仓库。内容看不到。只能看到元信息。创建时间。提交次数。最后提交时间。语言。

创建时间:六月初。

最后提交时间:今天。就在几个小时前。

提交次数:我数了一下。最近一个月。五十三个commit。平均每天一点七个。

每天一点七个commit。

这个频率。我往右边看了一眼他在公司项目上的提交记录。公司项目的月均commit是三十八个。约每天一点三个。

他私人仓库的提交频率比公司项目还高。

我盯着那些时间戳看了一会儿。commit的时间分布很有规律。白天的commit集中在下午两点到六点。晚上的commit集中在十点以后。有几个是凌晨一两点的。

白天在公司写公司的代码。晚上回家写自己的代码。下午有一个重叠区,两点到六点之间。有些commit是公司的。有些是私人的。交替出现。像两条线绕在一起。拧成一股。但每条线指向不同的方向。

仓库的主语言是Python。标签里有"NLP"和"transformers"。

NLP。我们公司也做NLP。教育场景下的自然语言处理。这是许畅在公司负责的方向。他的私人仓库也是NLP。但标签里多了一个词。"transformers"。这个词我在他桌上的便签里见过。在技术博客的标题里见过。在他参加的技术沙龙的议程里见过。每次见到都不说。每次都装作没看到。

但今天晚上。十一点。办公室里只有我一个人。屏幕上这些时间戳排列得整整齐齐。像一份出勤记录。他对这个私人仓库的出勤率比对公司的还高。

我把浏览器关了。屏幕变黑。我的脸在黑屏上反射了一下。模糊的。看不清表情。大概也没什么表情可看。


刘海洋比我早两个月发现这件事。

他跟我说的时候已经是"汇报"了。不是"发现"。他发现的时间是六月。观察了两个月。确认了。然后来找我。

"那个仓库。"他说。站在我桌旁边。手里没有咖啡。这不正常。他说话的时候手里一般有东西。咖啡杯。笔。数据线。手空着说明他腾出来了。腾出来说明这件事需要他的手空着。

"哪个仓库?"我说。明知故问。

"你知道哪个。"

我知道。

"我问了他。"刘海洋说。

"你直接问了?"

"对。上个月。问他那个仓库是什么。"

"他怎么说?"

"练手。"

练手。一个每天提交一点七个commit的仓库。叫"练手"。一个NLP+transformers标签的仓库。叫"练手"。一个从六月写到现在、持续了三个月、每天深夜还在更新的仓库。叫"练手"。

"练什么手?"

"我问了。他说BERT微调。"

BERT。那篇Google的论文。十月才正式发。但预印本早在圈子里传了。许畅从五月就开始追踪预训练模型的研究。便签上的公式。技术沙龙的名片。现在,一个私有仓库。每天一点七个commit。他不是在练手。他在构建自己的技术资产。

"我说'公司也在做NLP'。他说'方向不一样'。"

方向不一样。四个字。这四个字是他的防线。公司做的是教育场景下的NLP应用。他做的是通用预训练模型的微调。从技术上说,确实方向不一样。这个"不一样"给了他一层薄薄的正当性。薄到你可以戳破。但戳破以后没有赢家。

刘海洋和他的对话停在了"方向不一样"这里。不是刘海洋接受了这个答案。是他知道这件事不是他该处理的。他是CTO。但不是CEO。技术判断是他的。人事决策不是。

他来找我了。

下午。茶水间旁边那段走廊。没有别人。他靠着墙。我站在他对面。走廊的灯是白的。日光灯管。有一根在闪。频率不高。但你能注意到。闪一下。停。闪一下。停。

"他在做什么你比我清楚。"他说。声音压低了。不是刻意的低。是一种自然的收敛。平时他说话声音大。骂人更大。但说这件事的时候他收了。收的意思是他知道这件事的重量。

"我只管一件事。他在公司项目上的提交有没有问题。"

他看着我。等我的眼神。

"答案是没有。产品线的代码质量没下降。周会上该汇报的他都汇报了。准确率在稳步上升。从技术管理角度。我没有任何理由找他谈。"

他停了一下。灯管又闪了一下。

"但那个仓库。你自己决定。"

他走了。格子衫的背影消失在走廊拐角。拖鞋声。两下。三下。没了。

走廊安静了。灯管还在闪。我站在那里。大概站了二十秒。二十秒里刘海洋的话在脑子里过了两遍。"你自己决定"。五个字。他把球传给了我。球很烫。接住了就要处理。但处理不了也得接住。因为它落在了CEO的地盘上。


我的决定是——不问。不处理。装不知道。

这不是懦弱。是算过账的。

如果我去问许畅。两种结果。

第一种:他给我一个谎言。"练手"。"学习"。"个人兴趣"。我接受了。他知道我在问。我知道他在骗。两个人继续装。但装的成本变高了。因为彼此都知道了。知道了以后每一次眼神交汇都多了一层东西。那层东西会腐蚀信任。腐蚀到某一天——他不想装了。走了。

第二种:他给我真话。"我在做自己的项目。跟公司方向不同。我在为离开做准备。"然后呢?我能怎么办?开了他?开了他等于自断一臂。他的NLP模型是这家公司现在估值的核心支撑。投资人看我们,看的不是我的PPT。看的是他的准确率。没有他。没有87.3%。没有"两个月过九十"。没有九十就没有A轮。没有A轮,公司十一月归零。

不开?那就是默许。默许他在公司时间用公司资源做自己的项目。这在法律上说不清。在道义上也灰色。但——

公司账上二十八万。十二个人的工资。五险一金最低基数。郑总的五十八万刚丢。田总的续约还悬着。准确率离九十差两个多点。A轮连影子都没有。

在这些数字面前。"灰色"是我买得起的最便宜的颜色。

装不知道。让这个炸弹继续安静。安静地待在那个七位随机字符串的仓库名下面。待着。每天一点七个commit地待着。我需要的是时间。至少撑到A轮。至少撑到有人愿意出价。而那个出价,有很大一部分就建立在许畅的技术上。

用他的技术来融资。用融到的钱来留住他。用他留下来的时间让公司变得值得留。

又是一个闭环。跟之前每一个一样。每个环节都缺。每个环节都靠下一个环节。

这是我做过的最贵的理性选择。不是花钱的贵。是忍的贵。忍着看一个人在你的公司里。用你的时间。用你的服务器。一点一点地搭建他离开你的阶梯。你看着他搭。你帮他付电费。你甚至希望他搭得慢一点。因为他搭的每一天。都是他还在你公司的一天。他在。他的代码在。他的准确率在。投资人问起来。你可以说"我们的核心算法团队很稳定"。

稳定。这个词从我嘴里出来的时候。连我自己都觉得讽刺。

但讽刺是免费的。讽刺不烧钱。在一家账上二十八万的公司里。免费的东西格外珍贵。


月底。

周小薇做月度成本汇报。一项一项过。人力。房租。服务器。差旅。杂项。

过到服务器那一行的时候她停了一下。

"这个月服务器成本比上个月多了四千二。"

她没有说是谁。她列了一个数字。放在那里。等我问。

我知道是谁。那些晚上十点以后的commit。那些凌晨一两点的训练任务。GPU按小时计费。跑模型需要算力。算力需要服务器。服务器需要钱。他用的是公司的服务器。因为他自己买不起GPU。一块A100一个月租金三千多。他个人负担不起。但公司的服务器他有权限。

四千二。一个月。不多。在周小薇的成本表里排在倒数第三位。比茶水间的桶装水多。比打印纸少。但这四千二没有对应的产出。公司的产品线没有新增训练任务。这四千二是额外的。是不在计划内的。是不应该出现的。

"超出产品线预算的训练任务。"她说。声音平。不带判断。她的眼睛看着表格。不看我。这是她的方式。把事实放出来。让事实自己找到它该去的地方。

我没问。

三秒的沉默。在这三秒里她大概在等我说一句"查一下是谁"。或者"问一下刘海洋"。或者"暂停所有非产品线的训练任务"。这三句话中的任何一句都是正常的管理反应。正常的CEO在看到一笔多出来的成本的时候应该追问来源。

但我不是正常的CEO。我是一个需要许畅留下来的CEO。追问来源等于追问许畅。追问许畅等于打破沉默。打破沉默等于启动一个我无法控制结果的对话。

所以我没问。

她等了大概三秒。我没问。她知道了。她知道我知道。她知道我选择不知道。她把那行数字记在了账本里。原因栏空着。没有写"许畅个人项目"。没有写"未授权使用"。空着。一个空白的格子。她的笔在那个格子上方停了一下。然后移走了。

后来那笔钱就一直空着。每个月出现。每个月多三四千。周小薇每个月列上去。原因栏每个月空着。我每个月不问。她每个月不标注。

这是一笔公司付的、没有产出的账。也是一笔我选择不看的账。

四千二。每个月。相当于林晓工资的大半个月。相当于黄焖鸡吃两百一十碗。相当于赵宇轩的绘画班上二十四节课。这些换算没有用。但我的脑子自动在做。它停不下来。算是它的本能。就跟许畅写代码是他的本能一样。我们各有各的本能。各有各的仓库。只是我的仓库叫"备忘录"。他的叫七位随机字符串。


许畅在公司的样子没有任何异常。

每天九点到。准时。不早不晚。坐下。开电脑。戴耳机。写代码。午饭出去吃。一个人。不跟任何人一起。下午继续写。开会的时候发言简洁。准确。不多说。不少说。产品线的代码提交质量没有下降。甚至,因为他在外面追踪了大量前沿研究,他在周会上提出的优化建议反而比以前更精准了。

他是这个团队里最专业的人之一。

如果你只看外部行为。只看打卡记录。只看代码质量。只看会议纪要。你会觉得这是一个理想员工。准时。高效。不惹事。不废话。不请假。不迟到。

但一个把本职工作做得无懈可击的人。在本职工作之外做的事。别人很难找到角度去质问他。你说"你在用公司时间做私活",他说"我的产品线提交没有少过一行"。你说"你在用公司服务器",他说"跑的任务是NLP方向的基础研究,跟公司业务有关联"。你说不过他。因为他说的每一句话都在灰色地带的合理边界以内。

他知道这个逻辑。他一直在用这个逻辑。

我回忆了一下。从V4那年开始。他桌上就有过personal_research的文件夹名。后来换了随机字母。便签上出现了公式。桌上出现了技术书。书里夹了名片。参加了两次技术沙龙。现在是一个每天一点七个commit的私有仓库。

每一步都比前一步大一点。但每一步都在边界以内。每一步都有一个解释。每一个解释都不够充分。但也不够充分到你可以拿来开人。

他在画一条线。一条从"这家公司"通往"那个世界"的线。线画得很慢。每天一点七厘米。你看得见。但你拦不住。因为他的另一只手还在替你画公司的线。你需要那只手。


那天深夜。

十一点半。我在查公司产品的代码提交记录。看进度。刘海洋今天提交了四个commit。小杨两个。许畅三个,都是公司项目的。正常的。合理的。

然后我无意间刷到了他的账号页面。

那个七位随机字符串的仓库。最后提交时间,今天。二十二点十七分。就在一个多小时前。

我往上翻了翻。昨天。前天。大前天。每天都有。有时候一个commit。有时候两个。时间集中在深夜。十点。十一点。凌晨一点。

两个仓库。一个是公司的。一个是他的。commit时间交替着。白天做公司的。晚上做自己的。下午有时候穿插。两条线。两个方向。同一个人。同一双手。同一个键盘。

白天他是明镜科技的算法工程师。准确率87.3%。月薪一万二。每天一点三个commit。

深夜他是他自己。NLP。Transformers。BERT微调。每天一点七个commit。无薪。

我关了浏览器。

站起来。去茶水间。接了一杯热水。站在窗边喝。

窗外张江的夜。十一点半的张江。灯不多了。马路上偶尔有车经过。尾灯红的。划过去。消了。远处有几栋楼还亮着。不知道是加班的还是忘了关灯的。夜色里的写字楼很安静。白天它们是玻璃的。反光的。刺眼的。夜里它们变成了黑色的方块。只有零星几个窗口亮着。像一块黑色的布上面扎了几个洞。光从洞里漏出来。

大概也有人在加班。大概也有人在做两件事。大概也有人在一个仓库里写公司的代码。在另一个仓库里写自己的未来。大概每栋楼里都有一个许畅。每家公司里都有一个赵秉文。彼此知道。彼此沉默。彼此继续。

水喝完了。杯子放在台面上。瓷的。白的。跟周小薇上次给我倒水的那个杯子一样。茶水间的公用杯。谁用谁洗。洗完倒扣在架子上。等下一个人。

我没有把这件事记进备忘录。没有跟任何人说。没有写下来。

在这家公司里有三个人知道那个仓库的存在。许畅自己。刘海洋。我。三个人。三种态度。许畅知道我们知道。刘海洋知道我知道。我知道他们都知道我知道。但没有人开口。没有人说"我们谈谈这件事"。因为开口以后没有人能承担结果。

开口了。要么是谎言。要么是真相。谎言没有用。真相没有解。所以沉默。三个人的沉默叠在一起。变成了一种默契。一种灰色的、不干净的、但暂时有效的默契。

有些事。不写下来。就当没发生过。

但它发生了。每天一点七个commit地发生着。安静地。沉默地。在一个七位随机字符串的仓库名下面。在公司服务器每月多出四千二的账单里。在周小薇原因栏空着的格子里。在刘海洋说"你自己决定"以后的那个沉默里。在我关掉浏览器以后的黑屏上。

2018年八月。张江。深夜。

三个人知道同一件事。没有人说话。