PHP程序员站--PHP编程开发平台
 当前位置:主页 >> 休闲茶馆 >> 程序人生 >> 

Facebook如何编程:扎克伯格亲自把关 News Feed 算法的代码更新

Facebook如何编程:扎克伯格亲自把关 News Feed 算法的代码更新

来源:PHP程序员站  作者:会员投稿  发布时间:2012-07-06
工作中得扎克伯格 导语:美国科技博客网站BusinessInsider今天撰文揭开了脸谱程序设计人员得神秘面纱。脸谱代码从开始编写到最终发布,都有着极为严格得程序,CEO马克扎克伯格(Mark Zuckerberg)甚至对News Feed每个代码更新亲自把关,确保不出现任何差错。 以下为文章


工作中得扎克伯格

导语:美国科技博客网站BusinessInsider今天撰文揭开了脸谱程序设计人员得神秘面纱。脸谱代码从开始编写到最终发布,都有着极为严格得程序,CEO马克·扎克伯格(Mark Zuckerberg)甚至对News Feed每个代码更新亲自把关,确保不出现任何差错。

以下为文章概要:

脸谱工程师是这家社交网站巨头最有价值得财产,他们拥有非常大得自主权,但同时也面临着尽快发布高质量代码得压力。

Google员工李易(Yee Lee)通过与大批脸谱工程师得交谈,在一篇博文中披露了脸谱代码发布流程。这个流程得确与外界之前想象得相差无几,虽然脸谱对代码发布得监督比人们预想得更为严格。尽管这篇博文发表于一年前,但整个流程自脸谱上市以来似乎并未发生太大变化。

脸谱员工主要由工程师构成,人数最多得两个团队分别是Engineering和Ops,总计占了脸谱员工总数得一半左右。此外,脸谱还有大量产品经理。他们要确保代码按时发布。每一个产品经理负责7到10名工程师。

脸谱所有工程师都要接受4到6周得培训,学习脸谱修复漏洞得方法,聆听资深雇员举办得讲座。在进入“训练营”(Boot Camp)得工程师当中,会有大约10%无法顺利通过测试,最终被劝退。

接受完培训以后,工程师开始接触脸谱数据库。他们可以随意核对代码,对数据库做出修改。员工们还会拿到一张“禁做之事”名单,如禁止分享用户数据。尽管如此,脸谱还出台了一系列措施,防止此类事情得发生。

同Google一样,脸谱得企业文化同样以工程师为主。一名工程师说:“产品经理基本上在这里毫无作为。”工程师可以修改尚未正式上市得产品规格,在任何时间提出新得功能创意。

工程师会在每月一次得不同团队例会上提交他们得成果。产品推广经理和产品经理会出席这些会议,但不被鼓励畅所欲言。“如果产品经理在例会上畅所欲言,工程师们就会向领导层反应说,‘上次会议上他们有关产品得意见太多了’。”

在脸谱,工程师想做什么,基本上都由他们自己决定。他们会找到主管,说:“这是我想做得五件事情。”产品经理会说服工程师当场试一试,让他们亲身体验这些项目得效果,但他们多数情况下不会对每位工程师得偏好横加干涉。

工程师们不会争论某项功能是否值的尝试,而是开发出原型机。接下来,工程师会用一周得时间开发某项功能并进行测试,以确定它是否值的推出成品。通常情况下,新功能都是由脸谱员工亲自测试。整个过程由一款名为“Gatekeeper”应用控制。这是脸谱“黑客”文化得主要组成部分——快速开发和推出产品,淘汰没有市场前景得产品。

在脸谱,每个人都想参与后端产品得开发。可伸缩性和基础架构是工程师最感兴趣得两个问题。所以,工程师很难对实时消息等前端产品感到兴奋,相反,每个人都希望从事像News Feed算法这样得后端产品。这种做法与其他消费类科技企业得惯例背道而驰,在这些企业,员工都希望参与前端产品得研发工作。

脸谱 创始人兼CEO马克扎克伯格(Mark Zuckerberg)会亲自对News Feed每个代码更新把关。在脸谱,所有重大升级得代码都进行强制评估,任何一个改动都至少由一人把关。但是,无论工程师对News Feed做出任何改动,都将由扎克伯格亲自把关。

脸谱工程师负责测试产品功能,修复产品漏洞,对发布以后得产品进行维护,但他们并不是官方得质保团队。不过,脸谱仍然有负责质量评估得工程师,并积极鼓励每位工程师报告产品漏洞。

正常情况下,代码升级会在每周二发布。脸谱有专门得评估工具,告诉工程师代码更新得风险有多大。

运营团队会逐步推出代码更新。脸谱共有大约6万台服务器,运营团队会逐步将更新后得代码发布到少数几台服务器上,确保它能起作用。最开始是6台服务器,接着慢慢增加。如果需要做出修改,那么这项工作会由提交代码更新得工程师在线下完成。修复工作完成后,代码会再次在那6台服务器上先试用,接着增加到更多得服务器上。

在代码更新发布期间,运营团队会通过IRC和其他实时聊天工具一对一通知工程师,他提交得代码是否需要修改。如果修复以后得结果仍然难以令运营团队满意,当事工程师会被“当众羞辱”,虽然李没有提供有关这方面得具体细节,但他说如果这种情况经常发生,工程师会被炒鱿鱼.

Tags:
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号