跟花和尚学系统设计:明星公司之Netflix(下篇)

谁是花和尚?

花和尚是一个定居西雅图的程序员,拥有多年系统设计和开发经验。喜欢研究和总结System Design, 并传授给大家。花和尚在MITBBS一篇 "我的System Design总结" 文章获得超过8万访问量,并被多家网站和博客转载。

前言

下篇扯一扯Netflix和AWS的紧密关系以及Netflix的各种周边和八卦。

Netflix and AWS

Netflix并不是最早的AWS customer,但却是最重要的AWS customer之一。毕竟超过1/3的traffic经过netflix,其中绝大部分还要经过AWS。其流量之大超乎想象。

说起Netflix migrate到AWS这件事还要追溯到2008年8月,在一个夜黑风高的夜晚,Netflix创始人Reed Hastings走在Los Gatos Creek Trail上独自冥想,突然一道流星划过天际,Reed头上灯泡一亮...

画风不对。我们重新讲一遍。

2008年8月发生了一件事情,Netflix的database被corrupted,导致长达三天的时间,没有任何用户可以接收到来自Netflix的租赁DVD。我们都知道,对于一个互联网公司,时间就是金钱,即使是2008年主要还靠DVD为生的Netflix。

Netflix的engineering team痛定思痛,在想:怎么样才能建立起完美可靠的架构?而防止此类事故不再发生?

他们做了一个后来看起来无比正确的决定:架构外包。

作为一个大公司,作为一个心高气傲的Engineering团队,在当时没有继续选择搭建自主的infrastructure,而是退而选择了AWS,这点不仅需要勇气,也需要智慧。

回想当年,笔者2008年还在国内,还记得在那些年国内互联网业界对云计算的态度基本上是嗤之以鼻的,认为是绣花枕头,华而不实,系统还是要自己搭。这个观点对错现在看当然是错的,但当年的AWS稳定性而言跟现在必然是差着数量级的。

当年的AWS刚刚起步,拥有的产品远不如现在丰富,只有EC2,S3等旗舰产品。在把Scalability的任务交给AWS的同时,Netflix需要很多tools去保证网站的availability,防止failover等等。以及专门为AWS service实现的优化和管理工具。正因为如此,很多Netflix OSS才应运而生。

举个例子,比如上文讲解到的Asgard项目始于2010年,为了防止manual deployment 引起的human error,Netflix设计了这个AWS auto-deployment tool。现在该项目已经在github上拥有超过2100个stars。直到2014年,AWS才跟进推出了类似的tool:AWS CodeDeploy。

现在的Netflix和当年比已经成长了太多。举个例子,从2007年12月到2015年12月,在这8年里用户时长指数级井喷,增长多达1000倍。这期间也恰好是AWS快速发展的8年,现在的AWS稳居云计算老大,市场份额超过下6个竞争对手市场份额的总和。Netflix这个赌算是打对了。

现在的Netflix和AWS的关系就像两个好伙伴,每次AWS的re:invent大会,Netflix都不会缺席。Netflix还被当作case study挂在AWS官网上。作为回报,Netflix OSS绝大部分tools都是为AWS量身定做或是兼容的。当然也不是所有人都happy,AWS内部的oncall的朋友开玩笑说:Netflix当年选择AWS就是为了把他们变成Netflix的DevOps,自己就不用雇人了。玩笑归玩笑,但也从侧面反映AWS的oncall活不好干。不过总体来说,Netflix和AWS,谁短期也离不了谁。

Netflix战略

Netflix从1997年起步,到现在已经过去了19年,并成为了streaming领域的龙头。我们说成功永远是实力加运气。撇开运气不说,我们看一看Netflix做对了什么才走到了今天。在笔者看来,有几个关键点Netflix走对了:

  • 1997年,创始人Reed Hastings和Marc Randolph测试了邮寄DVD的可行性,并创建了Netflix。这也是Netflix的第一项服务。到现在Netflix还保留着邮寄DVD这个subscription service。
  • 2007年,Netflix开始了新的"All-You-Can-Eat" streaming subscription service。尽管早在2006年Amazon Video就创立了(那时还叫Amazon Unbox),但提供的服务却是在网上购买电影电视剧的服务,直到2011年Amazon Video才推出了Amazon Prime Video提供类似Netflix的subscription,但Netflix已经优先抢占市场,稳固了行业老大的地位。
  • 2013年,Netflix发布第一部原创电视剧House of Cards,受到了世界电视剧迷的好评。Netflix此举是非常重要的,光靠购买版权,Netflix永远受制于人,而自主原创剧才能够让Netflix成为市场独一份,就像HBO的Game of Thrones一样成为吸金利器。
  • 2016年,Netflix宣布全球化,全世界200多个国家可以订阅Netflix观看电影电视剧。上篇提到过目前全球8100万用户有4600万在美国,这与美国占世界的人口比例严重不符。这也就意味着Netflix的下一个增长点应该是国际化。Netflix看到了这个机遇,领先于行业对手完成了全球化,为自己争夺了主动权和蛋糕。

Netflix原创剧推荐

笔者把自己看过并喜欢的Netflix原创剧推荐给大家,欢迎留言讨论补充:

  • House of Cards -- 应该不用怎么讲了,国内最火的Netflix原创剧,给你一个比现实精彩的美国白宫(不过现在被Trump碾压了)。
  • Making A Murderer -- 笔者最喜欢的Netflix剧!是一个纪录片从一个"杀人犯"视角讲述自己如何两次含冤入狱。温馨提醒:全程心情可能都非常压抑的片子,不建议郁闷的时候看。
  • Master of None -- 一部讲述二代美国移民的轻喜剧,讲述很多有意思的美国社会现象。比如其中有一集讲拍电视剧里面只能有一个印度裔美国人(主角是印度裔美国人),于是主角和另一个印度裔抗争到最后,结果终于同意他们俩都出演这个电影,但是给的剧本却是一个印度口音的和一个美国口音的兄弟相聚的故事。这个电视剧每一集总是能让人思考一些影射的社会问题。
  • Narcos -- 一部类似于Breaking Bad的电视剧,剧的特点是大量的西班牙语,估计是为了讨好西语观众。

Netflix企业文化

作为一个技术宅程序员,看完中篇的技术干货,你可能有一种现在就投简历加入N家的冲动。不过技术是公司的一方面(当然是很重要的一方面),但撇开技术,这个公司到底是什么样的?

Netflix和很多公司都不大一样。他家绝大多数engineer的title都是Senior Software Engineer Hierarchy及其扁平化。这意味着两件事:

  • Netflix不喜欢招new grad。毕竟一毕业就当senior是需要实力和勇气的。
  • 同是Senior Software Engineer,你的工资和别人的工资可能有天壤之别。

Netflix给钱给的非常慷慨,慷慨到业界除了他家很少见到如此高的工资。他家动辄给200k到400k的年薪 你可以去h1bdata.info这个网站自己查看(http://h1bdata.info/index.php?em=NETFLIX+INC&job=SENIOR+SOFTWARE+ENGINEER&city=&year=) 但缺点是几乎所有的perk都折成工资(不过最近好像有所改观 开始给股票ESPP了)。

给的钱多不是让你歇着的:Netflix3个月一次review。对于review的underperformer,难逃进PIP卷铺盖走人的厄运。

当然他家对外宣传的福利还是不错的:unlimited pto and sick days,以及多达12个月maternity and paternity leave。

总结下来就是12个字:收入颇丰,涨知识快,钱不好赚。

Netflix and Chill

由于Netflix在美国的风靡,衍生出来了"Netflix and Chill"这个习语。在这里Netflix做动词 就像"Google it yourself"里的"Google"一样 表示"看Netflix"。所以字面意思就是"看Netflix并且放松"。

当真就这么单纯么?当然不是。

一开始的时候 大家说"Netflix and Chill"真的是去看Netflix了。后来某些心怀不正的少年们就借着这个幌子求啪啪啪了。在越来越多的女性同胞痛斥这个幌子之后,慢慢这个习语就带有性暗示的意思了。所以女同学们如果有一个男同学说今晚上跟我一起去"Netflix and Chill"吧,你最好问清楚他家有几房几车。。。

还有一篇文章专门考证了"Netflix and Chill"的起源(http://fusion.net/story/190020/netflix-and-chill/)。我只能说美国记者要么是太无聊,要么是太敬业。。。

尾声

花了三篇文章,终于把我想讲的Netflix的方方面面都讲完了。其实一开始写Netflix的动机只是想写一篇关于Netflix OSS项目的文章科普一下,结果越写越觉得准备大家对Netflix这个公司知道的并不多,所以决定以上帝视角把这个公司的方方面面都尽量讲到。希望对大家了解Netflix这个公司有点帮助(Netflix真该给小编点稿费= =)。


跟花和尚学系统设计工程目录(编写进行中):

  • System Design 101
  • 基础学习
  • 架构学习: Lambda Architecture
  • 架构学习: Kappa Architecture
  • 架构学习: Microservices
  • 积木学习: Caching: Memcached/Redis/Guava cache
  • 积木学习: NoSQL DB: Cassandra/DynamoDB
  • 积木学习: Queue: ActiveMQ/SQS/Apache Kafka/Kinesis
  • 积木学习: Data Processing: Apache Samza/Storm
  • 积木学习: Data Querying: Apache Hadoop/Spark/EMR
  • 公司学习: Netflix(上篇/中篇/下篇)
  • 公司学习: Amazon

原文发布于微信公众号 - 包子铺里聊IT(baozitraining)

原文发表时间:2016-06-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏达摩兵的技术空间

聆听心灵的声音

问今天的自己有何不同, 问过路的风景曾否留意, 也许你还在漫无边际的熟练的切换着那几个app, 或者约三五好友打球唱歌游戏睡觉, 是否我们还有另一种选择...

11020
来自专栏数据的力量

一张图识别好公司和烂公司

导读:如看一个工厂的管理好坏可从其厕所的清洁度看出,好公司和坏公司从员工状态一眼可以看出一个公司的管理,看一家好公司的20条铁规。

10930
来自专栏AI科技评论

前沿|量子计算机重大突破:可在室温下运行

前言 人类对意识和智能的研究仍处在十分初级的阶段,其实就是说,人们其实并不知道真正的AI到底该如何制造出来,事实上,看起来深度学习能带领我们达成真正AI的概率是...

39960
来自专栏Crossin的编程教室

大家的编程故事

我觉得1万个小时定律真的很对,付出的越多,得到的越多。一定要多敲代码!熟能生巧。不要每次写代码都到网上复制,可以把经典的用例自己总结写个通用的demo,然后去反...

17910
来自专栏CDA数据分析师

小明说,我是数据分析师 ——-浅谈数据分析师的前世今生

“小明,听说你是数学专业出身的?”   “是的,领导。”   “那你去把这些手抄报表录入到电脑里去。”   “老板,请你尊重我的专业”   “那你把...

20980
来自专栏大数据文摘

[重磅]吴军:数据为王和机器智能的时代

22820
来自专栏腾讯大讲堂的专栏

最怕这样的好文案,把人生都戳破

14700
来自专栏光变

麦肯锡思考问题之道

麦肯锡强调运用有组织的思考模式、依据事实基础、确认各项假设基调。虽然要有假设,但一定要找到有具体的数…

11120
来自专栏新智元

【研究院】CHI 2016大会丨人机交互进入手感操作时代

【新智元导读】新智元开通“研究院”专栏,提供各大研究院最新人工智能技术和产业信息,助你掌握业界动态,了解顶级机构研发实例。第一期专栏推荐三星电子中国研究院人机交...

30130
来自专栏软件测试经验与教训

空降兵如何管理团队?

30260

扫码关注云+社区

领取腾讯云代金券