编者按:本文是杨武明在高可用架构群新年聚会暨架构开源研讨会上的演讲。转载请注明来自高可用架构公众号「ArchNotes」。
杨武明,熊猫 TV 首席架构师,曾担任奇虎 360 PC 网游技术架构负责人,前新浪微博平台资深后端开发、技术专家。对大型互联网架构有丰富的实践经验,擅长后端基础服务与组件开发,尤其高性能、高并发、大数据业务场景。
“在微博平台,有幸结识了一帮趣味相投资深码农,离开以后很难再有这么一个团队来成长了……想想都是幸运,成天跟一群这么优秀的人在一起,想变差都不容易。” —— 杨武明
我现在负责熊猫 TV 整体基础架构工作,是一个快 9 年工龄的码农。办公地点在 O2O 宇宙中心——望京 SOHO,附近的伙伴们可以随时约起。
我在 2007 年毕业,和很多同行一样,也是从小公司起步,曾做过 ERP,信息安全,互联网社交平台、游戏平台等,现在工作是直播娱乐平台。写过几年的语言有 Java、C/C++、PHP、Golang,偶尔写点 Python、Lua、NodeJS 等。花在开源上的时间不多,但也开源一些个人代码,如分布式发号器。
我今天演讲的主题是个人成长与选择。
在我讲我个人成长经历前,我先推荐一本书「联盟」,LinkedIn 领英创始人里德•霍夫曼的作品。在「联盟」中,提供了一种使雇主与员工之间从商业交易转变为互惠关系的框架,创建了一种鼓励公司和个人相互投资的工作模式。它提出打造任期制,将非终身雇用的员工变为公司的长期人脉,并吸收员工的高效人脉情报。
只有雇主与雇员结为强大的联盟,共同拥有持续的创新与丰富的智慧宝库,员工、团队、企业,乃至整个经济才能繁荣发展。
每个人对于价值观有不同的理解,我个人对于人生幸福理解很简单:年轻时有人生阅历丰富的人(下面我姑且称之为长者)指导,跟随有理想的长者去学习及改变世界;到自己成为长者时,也同样能将相同的价值观及做事方法影响一批人,聚拢一批有志青年来一起做有意义的事情。我说的长者不是指年龄,还是指在人生阅历及行业领域有深入见解的人。在这个时代,单枪匹马很难成功,我更看重团体的力量及跟优秀的人一起做事情。
长者能通过集市模式聚到一批与同样兴趣与尿点的人,这些人每天共同生活做事:吃饭、做事;吃饭、讨论;吃饭、学习打豆豆、睡觉, 找谁是豆豆。这个尿点这重要,有同样尿点也意味着有更多一起接触的机会。有些码农喜欢白天写代码,有些码农喜欢晚上写代码,这个尿点不一致,可能就少了很多交流的机会。一起生活只是一个比喻,重点是通过长者大家一起找到共同做事的节奏。Linux 操作系统就是在长者号召的背景下,产生于这种貌似混乱、无序的集市模式。
我的观察国内缺少这种长者,大部分团队都以商业为重。在国外,硅谷科技在几十年前通过创新走在世界前列,很大程度依赖这种土壤;几百年前,欧洲的文艺复兴也依附于这份土壤。有机会我要去佛罗伦萨圣母百花大教堂与硅谷湾区看看,去感受那些当时能影响一个时代的人物。
价值观就到这, 下面简单说下个人成长的经历。
刚毕业时,放弃了父母在家乡的安排及强烈反对来到了北京,以码农的身份及 3,000 元月薪加入到电讯盈科北京分公司的企业方案部门做 ERP,盈科是一家香港电信公司,可以理解成香港的中国移动。第二份工作是在神州泰岳做信息安全方面开发,在神州泰岳的经历如果说收获较多的,可能是信息安全的项目对代码质量要求严格,自己打好了较好的编程习惯与基础。
转眼就毕业三年过去,到了 2010 年时候开始有些郁郁寡欢,觉得自己往上进一步成长非常慢,也看不到未来的出路,感觉企业信息安全领域开发不是我长期想要的技术生活。但在另外一方面,我也观察到国内的互联网行业及技术都发展非常蓬勃,觉得它应该是技术人员未来的方向。因此也憧憬着去尝试海量用户规模互联网平台的技术挑战,希望能做一些更大的、能影响整个互联网用户的事情。
在迷茫的路口,我开始关注互联网技术,也阅读了很多互联网技术大牛的技术书籍及文章,包括有幸全盘拜读 Tim 的博客。一次偶然的机会,花了 100 元(谁说技术人员一毛不拔)报名了 CSDN TUP 技术沙龙,并聆听了 Tim 当时在会议上的演讲。会议结束后我在电梯口联系 Tim 表达了求职意向,Tim 当时给了一份考试题让我回去试试。
跟很多做毕业后一直从事企业开发的同行一样,当打算转入互联网行业时候,普遍碰到经验不足及资历不够的问题。我幸好有之前几年打好的扎实编程基础,因此提交的考题代码还不错,获得了微博面试的机会。在自己资历还比较普通的情况下,果断对自己身价清仓出血甩卖,也同样出于对团队的向往,面试时说只要能加入给多少钱都行(但码农通常也都很现实,面试完回家后就对自己提出的工资后悔了)。就在这不计较个人工资多少的情况下(也是个人为数不多的一次跳槽不大幅度涨薪),果断加入了刚处在风口不久的微博技术团队。总的来说,这次转换于我个人这是一次全新的开始,我可以开始做自己喜欢且擅长的事:网络服务器与高并发系统。
加入微博平台团队后,开始适应互联网团队在我看来全新的开发模式。一上岗发现已俨然进入摆好台的手术室,Tim 是教授院长,提出了技术前进的整体方向。田大师就是专家主刀医生,主控一个大的模块的架构设计,剩下就等着我这个护士递手术刀(写代码)。一开始我参与了 firehose-stream 项目的开发,这是一个管理微博所有内部数据的实时数据流服务,每秒实时推送数万条数据,包括微博、评论、私信等消息及事件。当时也是紧张而又刺激,在业务飞速发展及访问量剧增的背景下解决了上线后很多问题。
经过这个项目适应后,我开始接触千万级用户访问的平台,如每秒几万、甚至十万以上的全站提醒、通知、导航、邀请等系统。每个系统除了自己摸索,以及工作有田大师指教外,团队也提供了非常好的交流氛围。每周都有固定的时间,大家在一起讨论及交流技术。Tim 也每周拿出一些在架构领域有代表性的场景跟团队小伙伴一起探讨解决方案。除了平台有这么大的数据规模及用户访问量的环境给大家历练之外,我觉得平台的技术学习氛围这也是我当时成长较快的原因。
在微博期间做了很多项目,包括也有幸参与到核心 feed 系统的开发。几年的历练下来。慢慢从一个积极能动性型码农,成长为在高性能高并发领域略有心得的技术专家。
快乐时光总是过得快,转眼到微博又快 3 年。有一天突然发现自己又出现了原先郁郁寡欢的心慌,隐约感觉自己是希望下一步有机会再次做一些不同的事情。事后回想也许是自己在一定程度想从跟随者到召集者角色的转变。在微博平台的团队中,跑在前面的都是从技术到思想都非常优秀的人,在短时间内我不太可能有机会超越这些前辈转变到召集者的角色。
当时的心慌也可以用一句古话来描述,人无远虑必有近忧,这是不是说明我还是远虑者(现场鼓掌)。考虑到自己未来期望的转变,决定离开微博去创业,去主导及影响一个小范围领域的事情。走的时候心情也非常纠结,当时国内有氛围且有挑战,能收容有技术情节码农的技术团队不多,有些东西一旦失去可能再也回不去了。
不舍不只是微博平台本身,更多是有幸结识了一帮趣味相投资深码农,离开以后很难再有这么一个团队来成长了。包括有钢琴艺术气息的田大师、有时间洗千亿级数据(小编注:由于架构升级进行的迁移数据)而没时间洗澡的小军、算法、棋艺、运动与于一身的小麦、长胡子艺术家气息的老王、帅气的一乐、少年班福林、低调的朱总、呵护多年新同学成长的校长、国际范 James Wei、德州赌神刀刀、托马斯海涛、兵乓球及架构高手姚老板、烤鸭老板方圆等,这些好朋友今天大多数也来到了现场。包括还在微博战斗以及散落在各大互联网公司担任要职的好朋友,我就不一一点名了。想想都是幸运,成天跟一群这么优秀的人在一起,想变差都不容易。
但自己也需要跳出这个舒适区,走的时候回望奋斗过三年的理想国际大厦时,决定自己将来也要打造出一支有技术范与战斗力,同时能服务于社会并带来商业价值的工程团队,同时实现财务自由。
但创业的现实很骨感。创业失败看来是必然,里面有些隐私的因素就不在这里细说。创业公司虽然失败,但这过程中我经历了角色转换拐点,由成熟大公司的技术专家变为创业小公司的产品技术负责人,不再只执着技术细节点,同时还需要更多关注技术带来的商业价值。在创业阶段也经历了快速搭建一个技术团队并最后散伙的心情。
创业失败后,如果继续回到技术专家的岗位,我可以很快找到新的工作。但我内心仍然希望继续担当技术组织者的角色,这时候可能选择大平台里面成长快的业务、以及对技术带头人有强烈需求的团队更为合适,这也许意味自己需要更长的时间去寻找及物色。
2013 年,我加入奇虎 360 PC 网游团队,负责技术架构工作,由一个更专注基础技术架构专家逐渐接触更多商业化项目,更多思考技术的商业价值。也逐渐在引进技术人才与管理技术资源方面变得娴熟。
到 2015 年,外界的条件对我感触很大,“大众创业,万众创新”,O2O 与共享经济等方向带来的互联网创业热潮,瞬间感觉技术人员的春天来了,鸭子也可卖上好价钱。由于很多团队都出现“只差一个技术负责人”的场面,开始发现自己经常能跟这个行业里面大佬对上话,里面不乏有一堆跑车的上市公司 VP,或一出生坐拥数亿资产的创业新秀。当时想如果跟这些大佬们接触,即使暂时不愿加入,也可以帮他们出谋划策或物色技术高手,至少可以在一定层面发挥价值。
这是个最坏的时代, 也是个最好时代。最坏时代是到了 2015 下半年,转眼资本寒冬已来到,很多在创业的小伙伴感受到阵阵凉意。最好的时代是说互联网依旧是国内经济发展巨大的引擎,互联网的发展离不开技术,因此技术人有比过去多得多的机会。尤其是那些有实力与口碑的技术人,通常会被各路行业大佬直接抢夺。
为了让职业生涯更好,除了技术硬实力外,还需要有高度的软实力。俗话说两手抓两手都要硬。 提升自身价值与商业价值的匹配度,让自己做得事情满足老板同时贴切商业价值,也就是这个时代技术人员的风口,这是我对当前这个互联网时代技术人成长的思考。
这也是为什么我在 2015 年中选择加入了熊猫 TV,并承担了公司最重要的基础架构的职责。
回到这次新年聚会及架构开源研讨会,开源是让很多资源 free 的一个手段,但这个 free 不单指免费,更多是指提供廉价、自由、方便、开放、平等的资源, 可以供平民来使用,这些资源不再那么昂贵,尤其技术资源。让屌丝创业公司,也能够站在相同的起跑线与巨头比武。技术基础建设者七牛云、青云等是我敬佩的公司,我所在的公司也大量使用了这些业界提供的基础服务。
感谢这个时代通过技术人的努力,让我们闻到 free 的味道,并让其开始生根发芽,好戏开始了,让我们见证万物复苏的开端,由技术驱动互联网创新的大戏才刚开始。
文首是我最喜欢的歌曲之一,希望大家也能够喜欢。
- EOF -
本文是杨武明在高可用架构群新年聚会暨架构开源研讨会的演讲,有关活动的详情可以点击以下文章更多了解。
8 个社区人物的一天与一年
上文中提到部分微博技术团队小伙伴的文章
关于烂代码的那些事 - 评价代码优劣的方法
关于烂代码的那些事 - 为什么每个团队存在大量烂代码
微博基于Docker的混合云平台设计与实践
微博“异地多活”部署经验谈
微博基于Docker容器的混合云迁移实战
单表60亿记录的MySQL优化和运维之道
微博在大规模、高负载系统问题排查方法
对高可用架构线下聚会感兴趣的朋友,可以订阅公众号关注后续活动,转载本文请注明来自高可用架构 「ArchNotes」微信公众号及包含以下二维码。