思考,思考自己、思考别人!
#ps -ef | grep oracle 修身、齐家、治国、平天下!
Facebook怎样开发软件:工程师驱动的文化
上一篇 /
下一篇 2011-01-19 12:09:20
我对Facebook的运作方式一直着迷。这是一个很独特的环境,不容易被复制(他们的体系并不适合所有的公司,虽然他们努力尝试过)。下面是我和Facebook的许多朋友们关于他们如何开发和发布软件所做交流的记录。
aN xi"hB[9tS051Testing软件测试网1TFp%^9_]Cgt-d
然而,Facebook对自己的内部流程说得很少。他们的工程团队经常发布笔记介绍各种新的功能和内部系统,但对如何开发却不怎么讲。因此对于外部人员而言,了解Facebook是怎样远比其他公司高效地对服务进行创新和优化并不容易。为了更多地了解Facebook的运作,我花费数月时间收集了下面这些文字。为了尊重隐私,删去了所有人名和具体功能与产品的名字。另外又等过了6个多月才对外公开,所以它们可能会有点过时。我希望发表这些记录有助于大家了解Facebook是怎样致力于将决策下放而同时又不至于陷入混乱的。无论 Facebook的结果怎样,产品是否成体系,我认为并希望许多面向消费者的互联网公司能从中有所裨益。51Testing软件测试网@h%{s]
/}o"M5T3~H
v0非常感谢那些帮助我整理这篇文章的Facebook的朋友们。同时也感谢提出指正的Reddit网友。
H
g`u%kp051Testing软件测试网&HE2M1_K+\
记录:
?-x;H&lZ_&w g0
d_`v(Tt a0 * 截止到2010年6月,Facebook有将近2000名员工,10个月前只有1100名,一年之间差不多翻了一番。51Testing软件测试网l Ykl7Mx%?
* 两个最大的部门是工程和运维,每个部门大概都是400~500人。这两个部门人数大约占了公司的一半。
ZD[.@V2uB0 * 产品经理与工程师的比例大约为1:7到1:10。51Testing软件测试网%hx&x'Qq4}h
* 每个工程师入职时,都要接收4-6周的培训,通过修补bug和听高级开发工程师的课程来熟悉Facebook。约10%的受训者无法通过,并被请出公司。51Testing软件测试网n9b&Cx5Oa(d+Z3vn
* 培训结束后,每个工程师都可以接触线上的数据库(更大的权力意味着更大的责任,也有一份"勿做清单",写明那些行为会导致被开除,比如共享用户的隐私数据)。51Testing软件测试网9bp;R;\&q