写点什么

我的移动互联网十年经历(一):飞信时代

  • 2019-08-14
  • 本文字数:4047 字

    阅读完需:约 13 分钟

我的移动互联网十年经历(一):飞信时代

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

在 GTLC 台北站上,前美图技术 VP、AfterShip CTO & TGO鲲鹏会会员洪小军带来了「我的移动互联网十年成长经历」的主题分享。从 2008 年开始,洪小军历经中国移动飞信、新浪微博和美图三个中国内地很典型的亿级用户规模的移动互联网公司的关键发展阶段,历任工程师、架构师、技术经理、技术总监和技术副总裁。

TGO 鲲鹏会公众将分为 4 篇分享洪小军在过去十年对于行业、技术、管理等方面进行的思考,此篇内容着重讲述他在飞信时期的收获和成长。



洪小军 GTLC 现场分享照片


大家好,我叫洪小军,感谢 TGO 鲲鹏会台北分会志清会长(王志清,TGO 鲲鹏会台北分会会长,安世泰联合创办暨合伙人、LEADBEST 联合创办暨 CTO)的邀请,我先做一个简单的自我介绍。


2008 年,我加入了北京的一家移动互联网初创公司,作为初创团队成员做出行业第一批类似于微信的行业多终端 IM 产品;2009 年初,我加入中国移动飞信团队,作为架构师主要负责飞信互联网核心业务开发和平台建设;2011 年初,我加入了当时正在高速发展的新浪微博,从平台架构师到微博平台架构团队负责人,主要负责微博平台基础设施建设和部分核心业务研发,跟着微博一路成长发展;2014 年 10 月,我加入美图,负责公司前后端基础设施建设、平台服务、美图秀秀业务和创新业务(区块链)等;2019 年 5 月,我加入了 AfterShip,主要负责技术和研发团队,希望能构建面向全球电商领域的 SaaS 服务和平台。


过去的十年移动互联网浪潮,我刚好经历了一个创业公司和三个非常典型的发展型公司,包括中国移动飞信、新浪微博和美图,恰好也经历了它们在发展时期中的关键阶段。


这四段经历给我带来了很大且不一样的成长,创业公司的经历给当初那个懵懂少年带来很多关于移动互联网的思考和初体验;飞信让我对于构建亿级用户系统有了很多的实践经验,也见识了当时关键时间点的很多行业机会;在新浪微博期间,是我个人技术成长最快、最多的阶段,也让我对于行业、产品和团队有了更多地思考;在美图期间,是我个人综合成长最快、最多的阶段,让我能更多地思考有关于行业、公司、产品发展以及团队建设等各个体系性建设方面内容。


目前,我所在的新公司——AfterShip 正处团队建设和业务发展关键阶段,我也很期望能将自身对于业务和技术发展、团队建设等方面的思考与团队间做更深入的沟通交流,一起构建更适合 AfterShip 的管理方式。


我一直希望能找个时间把过往经历和收获到的经验用文字的方式表达出来,刚好借着这次机会把想说的写出来,不过发现越写越多,考虑到阅读体验,就拆分成 4 个部分,期望这 4 篇文章能给大家带来一些思考和启发。

我的移动互联网十年成长经历


2006 年大学毕业后,我进入了一家物流软件企业工作,在基础研发部门从事公司基础框架和组件的研发工作,目标是业务部门能专注在业务本身,而基础的框架、组件和通用业务服务可以由研发部门来完成。


2007 年,我们做了行业第一批支持多租户的 Saa 系统,在此过程中,我也一直在思考未来可能的发展趋势。那时候 SaaS、云计算等新技术开始萌芽,在平台上也有很多关于这个方向的报道,但是真正落地和做得好的还很少。对我影响比较大的一本书是由阿里软件公司主持编写的《互联网时代的软件革命 SaaS 架构设计》。在同一时期,还有一个关键事件是 iPhone 的发布,业内对此也有很多不同的声音。


当时,很多人都有一颗创业的心,也都希望去到一个新领域做一些改变未来的事情。我自己个人喜欢做有准备的事情,于是我在等待真正机会到来之前,尽可能地做了很多准备。比如,我常常关注互联网领域技术,阅读了大量互联网领域书籍和资料,同时做了一些与互联网方向相关的项目。除此之外,我也开始参加一些移动互联网会议。最后,我在接触到 iPhone 和 Android 后,我感觉自己越来越兴奋,更加明确了移动互联网将是未来的主要发展方向。



在 2008 年时,我逐渐看清了移动互联网的发展方向,不希望自己错过这波浪潮。因此,我在 2008 年中旬加入了一家位于北京五道口清华科技园的初创公司,做类似于现在微信的 App,期望能连接不同终端(Android、iOS 和 PC),让大家可以随时随地的沟通。


我带着一颗创业的心,开始探索和学习。当然最后因为市场还不成熟,开发完成后,哪怕在北美等相对成熟的市场也没有很好推广起来。虽然产品最终效果并不如意,但是在这个过程中,无论是对行业方向的理解、技术方面的成长,还是对于创业的理解,我都有进一步的提升。这些对于未来的职业生涯有很大的帮助,这是我在移动互联网生涯发展的起点,让我对整个市场、行业有了初步的认识。


通过这段创业公司经历,我更加清晰地看到了移动互联网的发展机会,虽然在某些方面还不够成熟,但是趋势锐不可挡,并且这时开始冒出更多的纯移动互联网公司,很多互联网公司也开始关注移动互联网的趋势。对于我来说,我也更加明确,这将是我未来的发展赛道,但是我需要先更加综合的提升自己。于是我给自己定的下一个阶段目标是,需要尽快成为移动互联网方向的业务和技术架构师,能对业务有更加全面和深入的理解,同时对于技术也能有更加全面了解并且有更多的实践经验,尤其是在高可用、高并发和海量数据的场景里。

飞信时期


中国移动飞信是当时国内纯移动互联网应用里的头部应用,拥有几亿的用户和海量的数据,依靠中国移动的渠道和免费发短信等优势在当时快速发展,吸引了大量的用户,尤其是 90 后年轻用户。


2009 年初,我加入飞信架构组,从事业务系统的研发和架构相关工作,架构组的工作职责是基础设施的建设、核心业务系统的开发以及一些平台性业务系统的研发,在具体的业务开发中,对于重要的业务项目,架构组会出人与业务开发部门一起组成虚拟团队去一起负责项目。



加入飞信后,我负责的第一个业务是好友动态(News Feed)。当时,系统存在比较大的瓶颈——数据量大、访问量大、聚合需求多、有大量的特殊定制需求。为了解决这些问题,我们研究了国内外相关产品的实现方案,获得的答案基本是大家所熟知的推拉方案。


在这个过程中,我们遇到的最大的挑战是,如何更好地满足各种特殊的聚合需求。


为了满足特殊的聚合需求,我们在产品、技术、时间、成本等方面,做了大量的 trade-off,我深刻体会到在分布式系统中,各项基础业务服务和技术服务的重要性。它让我知道,一个系统要做好,依赖的各项服务也是一定要做好。从架构的角度看,我们不应该单独看某个系统如何,而是需要从全局整体的视角去看待、准备和优化。


因此,自从好友动态业务开始。我逐渐重视重构和优化用户服务、关系服务等核心业务服务。在这个过程中,我逐步沉淀了不少技术框架和技术组件相关经验。虽然我经历了很多棘手技术问题,但是学到了很多高并发、大数据量、高可用系统的相关知识,有了很多的实践经验,尤其是在分布式缓存、队列、存储等方面,我有了更加深入认识。在此之前,虽然我对这方面非常感兴趣,也看了大量的书籍和材料,但是一直没有大量级系统的实践经验。从这个阶段开始,我拥有了更多的实践和感悟。



为了让数据在不同系统(飞信、139 邮箱、移动商城等等)之间流转,2009 年底,我们与移动研究院一起合作开发了中国移动动态平台。在移动系统内,标准化是非常关键的事情。从动态平台设计上看,通讯协议和消息协议等都采用国际标准协议,因此在这个阶段,我阅读了大量的 RFC、TEIF 文档,希望基于这些规范设计和各种维度的协议,能在系统设计层面整体上采用分布式设计,最终达到推动动态平台研发和落地的目的。此时,我对于国际标准协议和可扩展的协议设计、平台化、分布式系统也有了更深入的认识和理解。


到了 2010 年,开放是个很大的趋势,飞信也在积极构建开放平台,所以我以架构师身份参与到飞信开放平台的设计和研发。在开放平台设计上,我需要考虑很多的因素,也会对于各个业务系统有更多的需求,所以业务系统也逐步以现在比较流行的业务中台方式在演进,同时借鉴 了 Facebook 开放平台。


在这个阶段,因为面临更大的数据存储和访问挑战,所以我研究了大量 NoSQL 的资料和论文,阅读了很多很经典的,对我未来有很大影响的 Paper,比如 Amazon DynamoDB。


在飞信阶段, 我对于高并发、高可用、海量数据的互联网系统设计和研发以及标准化、平台化的实现有了更多的实践经验和理解。在这个过程中,我作为业务和技术架构师,对于架构师的岗位也有更深入的理解,除了需要掌握所需业务和技术技能之外,更重要的是做权衡好产品、技术、团队、时间和成本等方面。架构师需要站在不同的角度进行综合思考,做出最适合的架构。同时对于技术人来说,并不是技术多厉害就一定能做好,更需要深刻理解架构师的职位以及拥有复合性的能力。


对于具体职责来说,架构师除了需要具备综合方面的权衡能力之外,视野和格局也同样重要。我曾实践过一个很好的方式是,站在至少更上一级的角度进行思考。当你能站在更高的角度看问题时,往往很多纠结的问题变得不再纠结,公司和团队也能得到更好的成长。


在此阶段,我自己花了大量的时间和精力进行学习和实践,对于我来说,快速学习和成长是非常重要的事情。因为我认为,很多问题是不可避免会发生,但是发生后一定要深入要反思学习,避免再次出现;同时,我们还应该要留出一部分时间进行自我总结和思考,包括学习同行的做法、畅想未来等。


因此从那时候开始,我基本每周末会有半天时间在星巴克看书、做头脑风暴,或者是思考目前的工作和生活等等,主题不限,follow your heart。至今为止,我已经坚持这个习惯超过 10 年了,它对于我的成长有着非常大的作用。




TGO鲲鹏会,是极客邦科技旗下高端技术人聚集和交流的组织,旨在组建全球最具影响力的科技领导者社交网络,线上线下相结合,为会员提供专享服务。目前,TGO 鲲鹏会已在北京、上海、杭州、广州、深圳、成都、硅谷、台湾、南京、厦门、武汉、苏州十二个城市设立分会。现在全球拥有在册会员 800+ 名,60% 为 CTO、技术 VP、技术合伙人。


会员覆盖了 BATJ 等互联网巨头公司技术领导者,同时,阿里巴巴王坚博士、同程艺龙技术委员会主任张海龙、苏宁易购 IT 总部执行副总裁乔新亮已经受邀,成为 TGO 鲲鹏会荣誉导师。


2019-08-14 15:564652

评论

发布
暂无评论
发现更多内容

2020字节跳动安卓程序员视频面试,这五点一定有助你顺利拿到offer

android 程序员 移动开发

2019年阿里Android面试必问:Java+性能优化,android编程实战

android 程序员 移动开发

2019最新百度、头条、小米,retrofit源码

android 程序员 移动开发

Node.js 中 fs.renameSync 报错

liuzhen007

11月日更

2020了,Android开发是否真的还有出路!25岁的我还有机会吗(1)

android 程序员 移动开发

2020了,Android开发是否真的还有出路!25岁的我还有机会吗

android 程序员 移动开发

2020上半年百度Android岗(初级到高级)面试真题全收录

android 程序员 移动开发

2020年失业后我整理了一份系统的Android面试题(含答案)

android 程序员 移动开发

2019年Android-非科班硕士的阿里&腾讯&字节&爱奇艺&网易&华为实习面试大汇总分享

android 程序员 移动开发

2019,2021我是如何拿到小米、京东、字节的offer

android 程序员 移动开发

2020 年,我这样在项目中使用 MVVM,BATJ等企业Android面试知识分享

android 程序员 移动开发

2020Android进阶者的新篇章,一起努力应对互联网寒冬,冲刺年薪40w

android 程序员 移动开发

2020Android面试心得,已拿到offer,轻松获得一线大厂面试offer

android 程序员 移动开发

2020年12月大厂BATJ面试ing-本以为学了个好找工作的Android开发,没想到又是坑

android 程序员 移动开发

2020年腾讯丶百度丶字节丶OPPO等Android面试大全,附带教你如何写好简历

android 程序员 移动开发

2020年阿里巴巴Android面经:拿到字节跳动offer后,简历又被阿里捞了起来

android 程序员 移动开发

[ CloudWeGo 微服务实践 - 05 ] 服务注册(1)

baiyutang

golang 微服务 11月日更

2020-2021最新大厂面试题附答案解析【建议收藏】,android应用开发题库

android 程序员 移动开发

2020京东最新Android面试真题解析,kotlinarrow库

android 程序员 移动开发

架构设计七 如何设计异地多活架构

nydia

2020关于面试字节跳动,我总结一些面试点,希望对最近需要面试的你们一些帮助

android 程序员 移动开发

2020应届毕业生,Android春招总结,已入职小米,阿里牛逼

android 程序员 移动开发

2020应届毕业生,Android春招总结,已入职小米(1),kotlin安卓开发教程

android 程序员 移动开发

2020字节跳动安卓程序员视频面试,这五点一定有助你顺利拿到offer(1)

android 移动开发

2020抖音短视频爆火!它的背后到底是什么—,手把手教你写Android项目文档

android 程序员 移动开发

【投稿赢大奖】 -- 奇思妙想+AI技术=?

百度大脑

人工智能 百度

2020年Android开发年终总结之如何挤进一线大厂?,BAT这种大厂履历意味着什么

android 程序员 移动开发

2020年度总结:如果系统的Android学习可以这么简单!为什么不来看看呢

android 程序员 移动开发

2019年末阿里、百度等大厂技术面试题汇总(附答案,2021年Android社招面试题精选

android 程序员 移动开发

2020个人开发者做一款Android-App需要知道的事情,年薪百万在此一举(1)

android 程序员 移动开发

2020京东Android岗面试题大全(附赠京东内部真题解析PDF)

android 程序员 移动开发

我的移动互联网十年经历(一):飞信时代_技术管理_洪小军_InfoQ精选文章