独家揭秘 Airbnb 的产品开发理念和工程师团队文化(上)
本文来源: nerds.airbnb.com 译文创见首发 由 TECH2IPO/创见 花满楼 编译 转载请注明出处
创见干货:
是时候来涨一波姿势了! 这一次,Airbnb 在公司文化以及制度架构上给我们做了很好的示范 ,告诉我们一个真正符合互联网精神的科技公司应该是什么样儿?或者更加具体点儿说,一群埋头搞技术的工程师团队应该拥有怎样的团队文化?
从这篇文章中,你能懂得如何搭建一个纯技术的团队架构,如何设计部门之间的协作 ,真的可以算得上一次全面细致的分享了。也只有在创见,幸运的读者才能看得到「干货」与「有趣」久别重逢。
如果你曾经访问过 Airbnb 的办公场所,你很难不被一件事情吸引,那就是「鼓掌」。参观的人也许会一时一头雾水,但不要担心自己是不是走错了门儿,进到了某个传销团伙的据点。
不知道什么时候,你会发现身边一个小团队开始为一次小小的胜利鼓掌,然后周围越来越多的人也开始加入到鼓掌的队伍中,最后在整个产品研发和工程办公区,汇聚成为了滔天的声浪。 说起来好笑,大部分人都不知道为什么自己在鼓掌,他们只是想在此时加入到欢呼庆祝的队伍当中,表示自己对他人的鼓励。这是在 Airbnb 经常看到的一个现象。
这本身就是一种优秀企业文化的具体体现。
每一家公司其实有着各自的公司文化。有一些很精心的设计打造,非常用心地关注和调整它一点一滴的发展,而另外的一些公司只是让文化自行在公司内部发展,期望最好的结果出现。无论哪种情况都改变不了这样一个标准: 优秀的企业文化能够让身处其中的员工以最投入的态度去工作,而坏的企业文化则会腐蚀破坏人们的灵魂。.
笔者曾经有幸在 Airbnb 工作了 1 年多的时间。之前笔者曾经在其他若干公司担任工程师和产品经理,包括了 Facebook 以及 Yahoo。这么多年的职场经验让笔者明白了一些道理,怎么样才能打造出最优秀的工程师团队文化。
工程师团队文化首要原则:工程师有着各自的影响力
工程师团队文化的核心就是:工程师都拥有各自的影响力。每一个工程师都在为客户以及公司创造价值上面承担着非常巨大的责任。
工程师本身就是出于「解决问题」的需要而招聘进来的。如果你的团队是由一群「解决问题能手」所组建而成的,那么最快推动公司向前发展的 最有效办法就是让所有的决策落实在每一个工程师头上 。 工程师团队的文化、工具、流程,所有的一切都围绕着尽可能给这些工程师以最准确、最及时的信息,方便他们在第一时间做出最合理、最有效的决策。这能够帮助团队更快的进行产品的迭代更新,实验、以及更快的学习。
让这样的工作氛围得以实现是需要几个前提条件 的 :工程师需要在所有的项目开发过程中,参与到制定目标、计划、头脑风暴中来,同时他们还需要具有对项目的自由选择权,更要有如何平衡短期工作和长期工作之间的灵活性,在不断应付技术层面带来挑战的同时,还能创造出商业价值。但这是不是说工程师就是由着他们的性子想做什么就做什么呢?其实也不是这样的。他们需要跟团队其他成员一起商量,不断地确认当下实质性的工作是什么,并且将这些工作按照优先级排序。在这里其他成员指的是项目开发经理、设计师、数据分析师以及其他人员。
更重要的是,工程师拥有的是无限透明的信息知情权。关于信息分享这件事,Airbnb 工程师团队是将其置于最高准则上的。 工程师知道的信息越多,那么他们工作的自主性和自主能力也就越强。 除非有一个非常明确,非常站得住脚的原因摆在那里让大家不要分享信息,否则大家是会做到信息同一时间,同一层面上的分享的。这里信息包括但不限于:分析用的数据库、周项目进展报告、CEO 所召开的会议纪要等内容。
这样的环境其实是会给人带来压力的,尤其是对于那些刚刚进入这个环境的新工程师来说更是如此。没有人会告诉你怎样去发挥自己的作用。而这就引入了工程师团队文化的第二个要点:帮助其他人寻找到当下的工作重点。
在 Airbnb 的团队,没有人会忙碌到抽不出时间来伸出援手的。往往刚刚进入 Airbnb 团队的新人,他的背后都站着一个团队的人,随之帮助他解决困难。不管这个困难是来自技术层面,又或者是工作计划层面,工程师们永远能够及时地给出最正确的答案。
结构化的团队,流动性的责任
在由公司所作出的清晰的战略规划下,让每个人都知道自己当下的工作内容应该是什么,并且在过程中不断推动决策的产生,这是可能的。 因为 Airbnb 的发展战略一直以「可以量化」和「足够简洁」为两个主要特点 。它足够简洁到所有的东西都能体现到一张白纸上,每一个在 Airbnb 的员工都很清楚自己肩上的职责,自己所负责的工作内容将会对这个更加宏大完整的图像产生怎样的影响。
知道了你的团队目标之后,你就能够清楚合理的规划自己的时间,尽可能地把曾经会浪费在争论上的时间拿来去做实质性的工作。因为 Airbnb 的各个大目标下都有着具体的数字目标,所以工程师们能够很快地评估出来每个项目的有效性,无论结果成败与否,都能够很快地从中学习,并且调整方向。
不仅如此,公司团队的结构也能够很好地体现出来公司的发展战略。事实上, Airbnb 的团队结构都是由大概 10 个人组成的小团队所组成的,成员包括了工程师、产品经理、设计师以及数据分析师。有一些团队成员还会兼任好几个小团队的岗位角色。同时,在不同的功能板块之间,Airbnb 是有着很强的协作性的 。支付板块中会有来自财务的人,内部工具板块中会有来自客户体验的人。工程师与设计师经常会成双出现,实时地去解决当下的某个问题。最好的想法,往往就是来自于这种紧密的协作过程中。
在 2015 年,Airbnb 有 10 个团队面向产品开发,还有 4 个团队是面向技术的底层架构。 每一个团队都将 Airbnb 的某个板块视为一个独立的产品来做,并且将这个产品不断拆分细化,使其成为以季度为分割的种种目标,而公司所做的整体战略规划是他们手中的指南针。
尽管每一个团队所负责的内容都是相对独立,不会产生重叠的,但是团队之间的频繁协作却又是经常发生,而且是被公司鼓励的。
举个例子,Airbnb 中分了两个不同的小组:「房东」和「租客」。因为从产品逻辑上来说,房东和租客是两个完全不同的群体,他们各自的诉求点是完全不一样的,但是正是因为房东和租客之间的互动,才使得 Airbnb 在世界上那么得不同,所以这两个团队之间的协作沟通频繁程度,紧密程度完全超乎了一般人的想象。他们彼此分享经验,帮助对方来绘制「路线图」,分享目标,合作开发项目,而另一方面,他们还能够拿出足够的专注程度投入到各自不同性质的工作中,满足拥有不同诉求的两种人群的各种需要。
言而总之,跨团队的协作帮助 Airbnb 弥合了产品板块与板块(部门与部门)之间的鸿沟
在 Airbnb,工程师突然换了团队,又或者做一些超出当下团队范畴的事情是很普遍的情况。举个例子,专注于产品的团队往往都需要在项目的工作流程中不断去提升底层架构,而如果这个团队中的某个成员忽然发现自己的工作也许会在其他团队带来更加明显的效果,又或者是别的团队所做的事情更能引起他的兴趣,那么工程师转团队是完全可以实现的,他们有这方面的自由。经理们会帮助他们理顺这一切。
其实说到底,一切都取决于工程师认为调整后的岗位角色会给整个产品团队带来更大的动力,只要满足这个条件,一切变动都不在话下。
在接下来的章节中,我们将见识到 Airbnb 的产品工程开发进度中存在着怎样独特的理念?让我们共同期待!
对 TECH2IPO 或本文有任何想法,可以添加我们的编辑部个人微信号进行交流:
T2IPO001
招聘:
加入 TECH2IPO/创见
,全世界在等待你书写新的科技故事
标签: 产品开发 团队管理 Airbnb 企业文化 公司文化