北京

当我结束了自己的ACM生涯和大学生涯时,没有留下任何文字,如今想来,有些可惜;时隔多年,即便想重新回顾一番,也已经失去大半意义。

我马上要离开北京了,意识到这座城市,这几年的生活,对我整个人生应该会有深远的影响,因此这次我决定要用文字记录下来。落笔时的情绪更多地代表当下,多年后回头看,难免会觉得有些许别扭,因此这篇文章,我尽可能地以叙事为主,不带入过多的情感。

从南苑到公主坟

2014年12月我在华农的宿舍睡了一周,对于要去北京这件事情感到很害怕,我没有做好任何准备,觉得自己无法适应那里的生活。我出发去机场当天,是大学的驾校师傅送我去的,他并没有直接把我送到机场,而是把我丢在了离他最近的一个地铁站,我坐上地铁来到了白云机场,顺利上了前往北京的飞机。

从我坐上师傅汽车的那一刻,已经不再害怕那个未知的城市。

订机票的时候,我甚至没有看降落机场是哪里;当时我的钱不多,选了最便宜的那张机票,降落后才发现是南苑机场。我开始从南苑机场坐公交车出发,目的地是公主坟车站。

中途换乘公交车的时候,感觉北京的天气很冷,手机显示是7摄氏度。另外,北京公交车上下车各刷一次卡,分段计费,乘务员一直在车内大声吆喝这几件事情让我很震惊,这不像首都,像是90年代的广东。

我从公主坟站下车后,走了不到500米,抬头看见了360总部。对于一个程序员,以及第一次踏入社会的年轻人而言,看见了家喻户晓的互联网公司总部以及超大的logo,内心难免很激动。

经过一番波折,我和准备入住的酒店公寓老板接上头,我问她现在外面是7度吗,她告诉我是零下4度,你的手机可能有问题。公寓就在360总部对面,楼下是北京798艺术区。在后来的几天,我被北京干燥的天气以及雾霾洗礼了一番,顺便在准备实习入职。

第一站,China Cache

我的第一份实习工作是在China Cache;CC是当时中国第二大CDN服务提供商,互联网公司喜欢称它为传统CDN服务提供商。我在那里遇到了人生中第一个领导HFX,FX对我很不错,给予了我很大的信任和支持,当时我只是一个刚入职一个月的实习生,在人力不够的情况,让我干了很多正式员工的活儿。

我在CC干的比较有意义的事情,是加入了视频加速团队,为腾讯视频提供海外加速服务。要说学到了什么,留到今天还有些用的,应该就是Nginx + Lua。

最终促使我从CC离职的原因,是有一次我和视频加速的技术负责人聊天,我问他,为何我们的文件系统要用TFS,元数据和Cache要用Tair,有一天我们能自己写一个文件系统,命名为CCFS吗?他说,不可能,我们不是这样的公司。

对于“我们不是这样的公司”这句话,我无法接受。那一刻我决定找一个“是这样的公司”,有机会能写出一个文件系统,甚至任何一样东西。

实习3个半月后,我离职了,距离大学毕业还有一个月,我手上没有offer。

你要不要给百度投一个简历试试看

在CC离职前一周,当时在百度实习的同学问我,虽然百度不校招了,但你现在也没有工作,要不要投一个简历试试。后来我便投了,并经历了了无音讯的两周。

最后一个北京的座机打了过来,说要招高级研发工程师,我再三强调要找的是一份实习生工作;HR表示,没关系,先面着。

后来的面试很顺利,属于面试官就是看你很顺眼的情况;我当时在华农的宿舍,和面试官打了两个电话,几乎没任何刁难的情况下让我过掉了所有技术面试,并给我安排了前往北京的最后一面。

在前往北京面试的飞机上,循环孙燕姿的《相信》。

“该是我的总会来,就算挑战,我不走开。”

最后,HR给我发了实习生offer,我加入了百度云安全部,开始实习生工作;随后开始了人生中第一份正式工作。

我还会选择重构那份报表

来到云安全部我接手的第一个项目是产出一份中文网站CDN服务市场占有率的报表,数据源来自于百度爬虫产出的全网中文网站域名列表。这个项目从我实习生时期延续到转正,历经9个月。我是从我导师手上接过项目的,他是一个从业十多年的老工程师。但不得不说,这个分析程序在当时是一团糟的,如果仔细看代码就能看出,整个项目中充满了“我不想干,但我不得不干,所以随便写完交差”的味道。

作为一个还没毕业的年轻人,我越过了我的导师,直接和我的leader说要重构整个程序。leader回去思考了一晚,同意我这么干。

我不太清楚那一次是否跟我导师结下了梁子,但事情的结果还算不错,整个程序的性能提升超过100%,准确率也提高了很多,保证了一定能准时产出,直到今天我已经离职了,它还在运行着。

这件事情,是我在职场中第一次直接跟leader说,我能改变点东西,让我负责,能让它更好;后面的时间里,我很少再遇过这样的机会。尽管我和导师的关系在后面发生了很多变化,但对于眼前这个问题显而易见的程序,不改进它是一种过失。

方式和技巧都可以改进,但最重要的是保有态度和立场。

我的老大LTT

TT是我在百度的第一任leader,百度可能有很多问题,有很多糟糕的人,但TT可以称为行为楷模。

当时我还是个没毕业的楞头青,不知天高地厚地挑战了我的导师,想要重写整个程序,她回家考虑了一晚第二天便批准我去做;在我维护了那份报表长达半年后,她主动给我换了一份更有意思的项目;云加速从一款免费产品到实现商业变现,她让我负责了在线支付接入工作;在提出要做百度企业安全产品官网时,让我作为后台负责人完成所有的设计和开发工作。

下属的成功是自己的成功,团队的成功是自己的成功;总是先问我能为你做什么;站在下属的角度考虑他们的利益;总是鼓励下属向前;有立场但不失技巧;不总是做老好人,当机立断。

TT用其行动展现了一个九年老百度应有的素质,能在职业生涯早期遇到她,是大幸。

离开云安全部,没有后悔

选择离开云安全部是我做出的第一个重要的决定,这个想法在我心里超过半年。TT可能看我态度坚决,另外作为一个有分寸的leader,在最后的会议室谈话里,她没有做过多的挽留。

离开云安全部无论是当时还是现在,都没有值得后悔的地方。当时有一个同事一直持有一个观点,云加速的团队氛围十分融洽,相处简单。我对此有所保留,云加速的氛围和文化得以维持,最重要的因素是TT本人。但表面的和谐难以掩盖内在的战斗力匮乏。在我离开云安全部的十个月后,TT从百度离职,随后主要的云加速团队成员以极快的速度转岗或离职,印证了当初的想法。

在云安全部,我重构了一份市场占有率报表程序;作为主要的后台开发者维护云加速官网和核心API;作为唯一的后台开发者,设计并开发了第一版本的百度企业安全产品官网后台ENT;TT很给面子,推荐我入选百度新兴事业群的最佳新人。

抛开以上这些,对真实的互联网公司工作有了正确的认知,结识了TT,是我在这一站最大的财富。

在基础架构部认清自己

从云安全部离开后,我加入了基础架构部分布式计算组,参与百度自研的统一分布式计算框架Bigflow的研发工作。

在基础架构部的成绩看起来是很不错的。2016年我们获得了EBG & TG的最佳团队;随后在百度年度平台化评审中获得最佳新锐平台。2017年和北京大学高性能计算实验室合著论文,公开发表Bigflow嵌套数据集的概念并投递到国际顶级会议;随后Bigflow正式对外开源,成为百度基础架构部首个开源项目。由于leader的支持,我开始获得作为面试官的机会,随后第一次成为校招新人导师。

但在基础架构部的这些成绩,更多地依靠了团队的实力,乃至百度这个平台。另外在所谓的辉煌背后,整个团队并没有在真正打磨项目,只是在收割前人留下的果实。在我离职时,Bigflow组在基础架构部中已经名存实亡。

看清自己的能力,剥离平台带给自己的力量是很困难的;但无论如何,要坚持拷问自己,离开一个成功的平台,成功的项目,自己还剩下什么。

加入大家口中的好公司,好部门而沾沾自喜,显得幼稚而虚荣。但凡思考过如何实现自我价值的互联网人应该都明白一点,一个已经成功的产品带来的荣誉感并不足以填补自己内心的不自信,也不利于提升自己;有能力的人最终会选择打造自己的产品,哪里能给最大的自由,能最大限度实现自己的想法,哪里就是最好的地方。

纯粹的技术人只是一种选择,无须歌颂

在三年前我还打算做一个纯粹的技术人,带有一点高尚的味道。到后来发现,人终究是为了实现自己的想法而不断前进的。要实现自己的想法是一个艰难的过程,技术问题只占了很小一部分,最大的阻力总是来自于人以及他们背后的利益。纯粹的技术人得以“安静”地写代码,一般都是有人为他们挡掉了很多破事。

刚毕业的人喜欢谈论工资,为了一点月薪的差异破坏自己的心情,但到后面会发现,随着工资增长自己的力量并没有变大。最重要的,还是得升级角色,一个高阶角色,并不只代表着权力,更多的是责任和保护的能力。

评论一个技术人,最终还是要看他能创造的价值。无法达成目标而总是谈论技术品味的人,称不上纯粹。成为纯粹的技术人,仅仅是一种选择,甚至连好坏都谈不上,更达不到能被歌颂的高度。

若有能力,为何不去打造产品

服务于成熟的,公司级别的基础架构项目,并不是大家想象中的高大上。巨头公司的第一要务永远是稳定,基础架构尤为甚之。另一个容易被忽视的一点是,基础架构部的工作天然带有服务他人的性质,因此我们私底下经常自嘲是在从事服务业;基础架构部的工程师直面的人群是公司所有业务部门的工程师,辅助甚至指导其他工程师写代码,是日常工作的重要组成部分。

而我厌倦了这种充当“老师”角色的感觉。闻道有先后,术业有专攻;基础架构领域的工程师的能力比其他工程师强,这个观念尚且都不能得到绝大部分人的认同,哪怕这是真的,通过指导别人写代码而获得的“成就感”,更像是在自嗨。

过于远离产品,自然无法清晰感受到业务价值。基础架构部本身的使命就是“成就业务价值”。若有能力,为何不去打造产品,直面用户,实现自己的想法和价值。寄情于技术,看起来没问题,但大部分人都无法掌握好分寸;没有正确的动机,没有接地气的目标,只谈技术,想象自己的一行代码是怎么改变世界的,就是一种领着工资自娱自乐的行为。

并非要远赴千里,才能实现理想

我要回到中国南方了,那个我生活,学习过的地方。

从2014年12月来到北京,直到今天,故乡都在我心里。我在北京度过的一千余个日夜里,无不在思考哪里是我的归宿。人总需要一个落脚点,来开始生活和事业。我内心的声音在最后这一年,越发的强烈。

这座南方城市总被盖上科技不发达,缺乏机遇的标签;若是过去我会想办法去所谓更好的地方。但这一次,我不是为了成为“另一个工程师”而回来。一个地方正是因为不够好,才需要去建设,机遇就蕴含在其中。

正如过去有人抱怨,华农不是一个好学校,这里不是学习计算机的地方;但我就是在那里学习计算机并踏上这段旅程的。机遇随人而来,人才是关键。

外面的世界可能很美好,但起点永远在那里,是力量的源泉。

道别

2018年04月16日是我在百度的最后工作日,公司在计算我的百度工龄时,没有算上我的实习时间,有点遗憾。那段实习经历和任何一段经历一样,对于我来说都是特别的。

这座城市我应该不会再常回来;走出百度科技园的时候看了一眼,这座大楼和往常相比并无二样;我的好朋友们都先于我离开了这里,因此也无任何念想。

当年我如果没有给百度投简历,应该就不会来北京,故事又会是怎样。

坚持原创分享,您的支持将鼓励我继续创作!