2008年 1月的广州,冷空气来得猝不及防。
我刚在机房改完“开心农场”的离线收益优化代码,手里还攥着没捂热的保温杯,市场部的小林就顶着风冲了进来。
手里捏着一张打印纸,脸色比外面的天气还白。
“刘总,出事了!”
他把纸往我桌上一放,声音发抖。
“我们监测到欧朋浏览器的测试版,里面有段渲染代码,跟咱们 UE的内核长得太像了——你看,这是他们的反编译片段,跟咱们去年内核重构时加的‘动态渲染优化模块’,连变量名的命名习惯都一样。”
我心里“咯噔”一下,接过纸凑到屏幕前。
欧朋是当时国外的浏览器巨头,之前一直没深耕国内功能机市场。
现在突然冒出的测试版,居然带着 UE的核心代码痕迹?
我立刻打开电脑,让小林把欧朋的测试安装包传过来。
又喊老张过来:“张哥,帮我一起拆这段代码,重点看渲染模块。”
老张放下手里的服务器维护手册,搬着椅子坐过来。
我们用反编译工具一点点拆解欧朋的安装包。
当那段渲染代码完整呈现在屏幕上时,两个人都沉默了。
function optimizeRender(node, flag),函数名和咱们 UE内核里的一模一样,甚至连处理异常节点的判断逻辑,都带着我当时为了兼容老机型加的“if (node.type === 3 && flag === false)”这段特殊判断。
“这不是巧合。”
老张手指点着屏幕,语气肯定。
“这段代码是咱们内核重构时的核心优化点,当时为了避开专利,特意改了三次逻辑,欧朋不可能‘碰巧’写出一样的。”
我没说话,脑子里飞快过着可能的漏洞。
代码库的访问权限、核心成员的操作日志、外部合作时的保密协议……
突然想起上个月曾庆国找过我,说“想看看内核的渲染模块,帮新入职的工程师做培训”,当时我没多想,让运维给他开了一周的只读权限。
“立刻锁死代码库!”
我抓起手机拨给运维组。
“关闭所有非核心成员的访问权限,包括只读权限,核心模块的修改必须双人审核,每一步操作都要留痕。另外,导出最近三个月所有访问过内核代码的日志,特别是渲染模块的访问记录。”
挂了电话,我对着屏幕上的代码片段,心里又沉又堵。
内核重构花了我们八个月,团队熬了无数个通宵。
从最初的架构设计到最后的兼容性测试,每一行代码都浸着大家的心血。
现在居然出现泄密的苗头!
要是真被欧朋拿去用,不仅 UE的技术优势没了,之前的市场积累也会被冲击。
“得成立专项调查小组。”
老张看着我。
“不能声张,先内部排查,免得打草惊蛇。我负责追溯代码的传播路径,小李对日志敏感,让他查访问记录,再找法务部的同事一起,万一涉及外部泄密,也好留好证据。”
我点点头,立刻让人通知小李和法务部的王律师过来。
半小时后,四个人围在会议室里,桌上摊着代码对比图和权限访问清单。
小李盯着日志屏幕,手指飞快滑动。
“刘哥,最近三个月访问过渲染模块的有 12个人,除了咱们核心团队,就只有曾总在上个月申请过只读权限,他的账号在 1月 5号晚上 11点,下载过渲染模块的完整代码包。”
“下载?”
我皱起眉。
“他当时说只是看,怎么会下载?”
“日志显示是‘打包下载’,格式是 ZIp,”
小李把日志截图放大。
“而且下载 Ip是他家里的宽带 Ip,不是公司内网。”
法务部的王律师推了推眼镜:“如果能证明他下载的代码跟欧朋测试版里的一致,就可以认定他违反了保密协议。但现在还不能确定,欧朋的代码是不是从他这里来的,得再查他的外部传输记录。”
我让小李继续查曾庆国的邮件和即时通讯记录,自己则翻出之前的保密协议。
所有接触核心代码的成员,都签过“不得向外部传输、复制核心代码”的条款。
一旦违反,不仅要赔偿,还要承担法律责任。
下午的时候,钟佳琪给我发了条消息,问我“晚上要不要一起吃饭,安安说想你了”。
我看着消息,心里一阵恍惚。
想起跨年夜安安拉着我和菲菲的手说“希望你们都能陪爸爸”,再看看眼前的泄密危机,突然觉得肩上的担子更重了。
不仅要守住团队的心血,还要守住对安安的承诺,守住对曼丽的约定。
我给钟佳琪回了句“今晚要加班,等忙完这阵再陪安安”,就把手机调成了静音。
小李那边有了新发现。
“刘哥,曾总在 1月 6号早上,用私人邮箱给一个国外的邮箱地址发过附件,附件大小刚好跟渲染模块的 ZIp包差不多,但邮箱地址是匿名的,查不到归属。”
“匿名邮箱?”
王律师皱起眉。
“这就麻烦了,没法直接关联到欧朋,但至少能证明他有外部传输的行为。”
我手指敲着桌子,心里有了个大概的方向。
“先不打草惊蛇,继续查那个匿名邮箱的线索,同时盯着欧朋的测试版动态,看看他们后续会不会推出正式版。另外,老张,你再优化一下内核的加密机制,给核心模块加个‘水印’——在不影响功能的前提下,加一段隐藏代码,万一以后再出现类似情况,能直接证明是咱们的代码。”
散会后,我一个人留在会议室,看着桌上的内核重构合照。
照片里的大家都笑着,脸上沾着咖啡渍,背景是写满代码的白板。
想起曼丽当年送我的笔记本上写的“技术要为用户服务,更要守住底线”,突然觉得鼻子有点酸。
走到机房时,小李还在对着日志屏幕忙碌,老张则在调试新的加密代码。
我走过去,拍了拍两个人的肩膀。
“辛苦大家了,不管查到谁,咱们都要查到底,不能让大家的心血白费。”
小李抬起头,眼里带着劲。
“刘哥你放心,我肯定能找到线索!”
老张也点点头。
“加密机制今晚就能弄好,以后再想偷代码,没那么容易。”
不管泄密的人是谁,不管欧朋的目的是什么,只要我们守住技术底线,查清楚真相,就一定能度过这次危机。
我拿出手机,给菲菲发了条消息。
“最近还好吗?这边有点技术上的事,等处理完跟你细说。”
很快收到她的回复:“别太累,有需要随时跟我说,我这边也在帮你查欧朋的海外动态。”
握着手机,心里暖了些。
2008年的开头虽然遇到了麻烦,但只要身边还有这些一起并肩的人,还有要守护的约定,就没什么跨不过的坎。
我转身走回机房。
老张和小李还在忙碌。
屏幕上的代码像一串无声的誓言,提醒着我们要守住这份来之不易的技术初心。