2014年4月23日,全球软件开发大会QCon北京举行,其中我也参与团队建设中一个主题,《中西对话-团队管理的五项理论和实战》下面就是演讲全文和PPT。
主持人:我们面对的系统越来越复杂,我们的软件也越来越庞大,包括我们一些技术的细分也越分越细,在这种情况下,其实一个人很难做一个事情,往往要靠团队的这种力量去把一个事情做好,但怎么能够把团队带起来,怎么能够比较好的建设团队,然后让团队运转的比较高效,这其实是跟写代码还是不一样的,所需的技巧也不太一样。我们今天有幸邀请到今日头条副总裁谢欣,他实时连线在硅谷的数据工程师董飞,一起跟大家分享他们在过去总结的一些管理的经验。
谢欣:今天跟董飞一起,我们探讨一下关于管理方面的,我们总结了5项理论和5项实战。我先做一个自我介绍,我一共工作过四家公司,第一家是微软,第二家公司算是国内一线互联网百度,第三家是一个本土创业公司酷讯,当前是在今日头条。我觉得我工作的这几家公司,正好代表不同的风格,所以对我自己的管理经验这种沉淀都很有用处。我自己个人的经验来讲,做过工程师、项目管理,然后也做过产品经理,同时管理过很多完全不同类别的团队。
董飞:国内朋友们大家好,我现在是在线教育公司Coursera软件工程师,我是在南开大学本科毕业之后,后来去了美国的杜克大学攻读硕士,之前我在国内也有一段工作的经历,当时第一家也是在酷讯,跟谢欣当时是同事。后来去了百度,做一些云计算的项目,我在美国也是做特别是与大数据相关的公司和领域。比如我在亚马逊核心的云计算部门做过,之后我在LinkedIn的广告部做数据架构。除了我的工作经历之外,我还很喜欢分享,经常在知乎上分享一些关于硅谷的公司文化,创业趋势,大数据的技术,然后在上个月,在国内高校和企业做过一些讲座,也包括CSDN CTO的俱乐部的交流。
谢欣:我们是成立了三年,现在有两亿的装机用户,日活两千万,去年做了一亿美元的融资。我们团队规模现在是一个急速的增长,我们从几十人,一百人,两百人,到五百人这么一个规模。在管理上也确实是一个挑战,工程师团队也在飞速的增长。
董飞:我们现在来看一下硅谷,在这边我们也经常说一些巨头facebook、linkedin、谷歌,这几个大公司我们取他们的首字母简称FLG,当然他们都是一些技术型很强的公司。他们的福利跟待遇肯定是一流的,除了这些之外还有文化方面的吸引,我举几个,比如说facebook,它有一个新兵训练营,新的工程师通过几周之内全方位的了解公司,之后就选择他感兴趣的组。创始人Mark说过,最大的风险就是不愿意承担风险,还有一句是move fast and break things. 如果在前进过程中没有遇到磕磕碰碰,说明不够快,这是一个快鱼吃慢鱼的时代,也是创新的源泉。我之前也在linkedin工作过,它比较强调的是用户第一,有很多数据产品,比如说像(People you may know),或者工作的推荐,都是通过海量的数据去挖据,给用户精准快速提供推荐。谷歌,工程师的话语权很大,之前创始人把所有的PM都裁掉,认为他们没有“什么用”。有很多未来项目包括google x,像google fiber,气球作为网络连接。
除了上面一些大公司,还有一些我们叫独角兽公司正在快速成长,这里面我也说几个Airbnb, Uber, Pinterest,他们现在的估值都是在100亿美金以上,上市机会很大,都是目前最火的创业公司。他们的文化也各自不一样,比如Airbnb,它强调的是社区融入,像(Uber)是车的共享经济,最近我看在杭州推出了一键叫船,在上海开发了叫直升机的服务,在北京可以通过叫车跟高管对话,都是非常有创意的。像(Pinterest)是做分享图片的,它是希望激励大家去寻找生活的灵感和创意。
还有一个神秘公司Netflix,它是做在线视频的服务公司,已经上市了。大家猜猜股价多少,560,他的文化更特殊,我公司Coursera有很多高管也是从那过来的,Netflix对待人才会给出一个最高的薪水,但是没有奖金,你可以选择现金多一点,也可以一部分转化为它的股票。另外一个他的选拔也是非常苛刻的,如果说你不合格的话,他会让你直接走人,但是会给你半年的赔偿费,今天也会详细去解析它的神秘文化。
谢欣:这里面谈到的(Netflix),我们的文化其实有相当一部分是借鉴它的做法。即便在硅谷来看,它的做法也是比较独特的。我们在讨论一些管理问题的时候,我们在想一套管理的框架,但我们很多时候忽略了一个问题,就是管理的根本是为了达成公司的业绩目标,是达到公司的高绩效。而高绩效的根本是靠什么呢,靠的是人,不是靠流程,也不是靠各种约束等等。所以说从我们这边总结的一个经验来讲,公司出现了管理问题,要提升管理水平的时候,很多时候在想我们要制定一些章程和流程。其实根本上讲应该看公司的人对不对,如果公司出现了管理问题,很大程度上是人肯定不对,这个时候只能换一个人,而不是说我们去想办法制定一套特别科学的规章,至少在现在的互联网的公司里面,我们认为人才是根本,而不是说制度本身是改变,如果人选对了,其他都是相对次要的事情,看上去很简单的一句话,包括我自己前前后后花了挺长时间才领悟到,我们老在想制度本身。
既然人是重点,那么人才的招聘和面试就是一个非常重要的事情,当然我们谈的是工程师,也是请董飞介绍一下在硅谷工程师的招聘和面试是什么样的情况。
董飞:我非常同意谢欣的观点,人才是最重要的,有一句话说一个优秀的工程师可以以一抵十,这个一点都不为过。我自己也是做了很多面试,在去年我面试过硅谷这边一线的创业公司,然后我在linkedin也作为面试官,面了将近200人,是全公司前三的面试官。我跟大家说一些我个人观察和总结出来的特点。首先如果大家想去一些优秀的公司,第一个还是要想到内推,首先它有个好处,会让内部的人帮你做一个了解,有没有合适的岗位,他也会根据你的能力帮你去匹配,可以跳过一些HR的面试。第二,利用好Linkedin也是非常重要的,特别是在硅谷的人,他们很喜欢把自己的经历都放在LinkedIn上,写的非常详细。这个好处是会主动有一些HR会来找你,你也可以在上面找到那些优质的公司跟团队。
从面试流程上来说,一般是先电话面试。之后会在Onsite复试,这个就比较有挑战了,特别是在美国这边,它一般是四轮以上,对体力也是一个很大的挑战。面试内容有一到两轮是算法和代码,有一轮是系统设计,还有技术的交流,讲你之前做过一些项目的背景,最后也包括一些行为面试,对你的价值文化观做一些考察。
总体从面试官的角度来说,我个人比较喜欢的有几个特点,一个是你要聪明,聪明体现我给你一个问题,你能很快的反应。第二好奇,我不希望说你就停留在狭小领域,而是你有广泛的兴趣和涉及。你在谈一个项目或者公司的时候,也要体现出你的交流能力。还有两点是不喜欢的,一个是不愿意学习,还有一个是企业文化不和,我觉得这些大家其实都可以去留心准备的。
谢欣:我也想问一个问题,你原来也在linkedin工作过,我看你来源写的首要内推,在linkedin这家公司里面,首要的是不是应该来自linkedin自己的数据库?
董飞:其实也没有说一定要内推,HR也鼓励很多不同的来源,但是我们发现最后招过来三分之二的人都是来自于内推,这是非常高的比例。
谢欣:你的意思是说即便在linkedin公司自己内推就超过了从linkedin来的人是吗?
董飞:对的。这确实是一个有趣的现象。
谢欣:这是内推的重要性,我们谈到五项理论和五项实战,实战里面有一个点,内推确实在硅谷是很重要的。首先先说一下我们怎么去获取人才,全员工作之一就是招人,招人不仅是HR的工作,是每个人的工作,偶尔我们也会用一些比较特殊的方法,比如会在百度上投一些技术上非常小的词汇,只有工程师才会去查,然后我们花钱去投,投了之后,恰恰会成为我们的广告。因为只有真正做这项技术的工程师,他才会看到这种广告,其实也不太贵。比如我们自己会谈一谈微博,微博可能会用到一些技术的文章和分享,比如说头条是以大数据为主的,我们去谈跟大数据相关的词,看什么用户会感兴趣。
我们自己的面试流程上讲,我们也是算法、编码,然后考察他的项目和能力,基本技能,这些没有什么特殊的。对于技术团队的面试来讲,不论你是写代码的,还是做管理的,技术经理的,我们都会考验你的技术能力,我们认为既然你是技术,你的技术是根本的。在我们的技术团队内,纯管理职位的人极少,纯粹管理,一点技术都不懂得,非常非常少。我们这种表达方式来讲,比如会采用直接编码,拿一张纸让你写代码,个别的比如说你这个人确实技术性非常强,其实你更多是做一些架构性的工作,但我这边就直接讲一些分享,这一方面是学习,一方面是面试。
所以回顾来讲,5条理论和实战,第一条管理的根本是人,而不是制度,一个时代,我们分享了面试的方法。团队结构,我们请董老师介绍一下在硅谷的情况。
董飞:首先大家看一下右边这张图,它是很多技术公司的架构图,我给大家详细说一下,比如第一个是亚马逊,做电子商务的,它就是典型的层次型,第二个是谷歌,谷歌应该说是典型的扁平文化,我听说创始人当年是把所有的PM都统统裁掉,因为他觉得他们没用,就是要工程师来决定产品方向。第三个是Facebook,因为Facebook是社交网络,所以你看它的结构也是一个网状的结构。第四个是(Microsoft),它有很多资源去做同类项目,导致大家互相去竞争,这个当中也会有一些政治斗争在里面。第五个是苹果,应该讲苹果这个公司是非常强调设计师的地位,以及他有强有力的领导人。所以说这是一个大蒜的结构,就是往中间汇集。最后一个是(Oracle),它左下角写的是法务部的,而右边是工程部的,它的意思是说像(Oracle)传统的软件的法务部门里面的律师人数,比工程人数还要多。
总体来说这里面体现出来一些风格,第一:很希望重技术轻领域,这个道理是因为这边的人力成本比较高,通过技术的手段把这个边际成本给降低。硅谷公司喜欢做一些国际化的产品,比如说做一个东西,他希望在全世界,几十个国家,几十个语言同时推行。当然反过来,对基础的架构要求特别高,也就需要更扎实的技术人员。这是硅谷公司的典型特点。
谢欣:其实本土这边也有人画了一些本土的公司风格的漫画,这个我不介绍了。我们这边更多看中的是工作本身,看中的是工作效率。我们对于团队结构是非常不规整的,很多时候你这个人是适合做什么事情,你适合什么样的团队,很可能两个产品从道理上它应该是平行的,但是可能这个人他能力很强,那个人能力要弱一些,团队结构就是不一样的。所以我们对团队结构没有严格的划分,所以头衔上我们也是非常的弱化的。比如我出来做报告,我会告诉我是什么头衔,但是回到公司,其实没有人知道互相的是什么头衔,因为我们觉得这个不重要,目标反而会耽误一些事情。同时我们把一些重要项目,我们项目组做项目,在结构上我们也是比较追求扁平。
谢欣:讲讲实战,关于团队来讲,我们谈一个东西叫跨部门沟通,最常见跨部门沟通的问题解决的方案是什么,两个团队,比如说我们每周有一个沟通会,大家把所有的问题都摆一摆,每个人都讲讲,这是最常见的办法。其实我们认为这样做是不好的,应该避免这种做法,我们认为在团队结构本身的设计上,就应该引导部门之间不互相依赖,团队之间应该尽可能的孤立,也不叫孤立,尽可能互相不依赖。如果这两个团队,他们同时完成一个项目,在一开始来讲,应该讲这个项目的目标、背景,这个项目怎么叫做成功,怎么叫做失败,以及这个项目最重要的关系人全部讲清楚。团队一起召开这样一个会议,这个会议是我们一起召开的,这个在会上大家的目标可能达成高度一致,然后在此后就不要召开跨部门沟通会了,如果要经常召开跨部门沟通会,可能在团队结构设置上太构成依赖了。
所以我们在跨部门沟通上来讲的话,应该减少团队之间的这种跨部门沟通会,不是说团队之间不沟通,而是说具体事情,比如说有一个具体事情,这两个人私下去找找,或者两三个人私下碰碰就行了,不要整个团队都在一起跨部门沟通,如果经常跨部门沟通,真的是结构没有设置好,会浪费效率,这是我们的一个经验。所以说回顾一下,我们认为理论2,从人到了团队,是一个跨部门沟通的分享。有了人,有了团队,接下来我们谈一下制度,通常而言发展初期是没有制度,公司还是快捷和灵活的,随着不断的发展,问题肯定会出现,于是每出现一个问题,我们说我们做一下沟通,一个问题出现我们怎么怎么办,我们制作一个流程,通过流程能够避免这个问题的发生,这个很常见了。但是随着公司的发展,流程越来越多,但公司其实还是会发展的很好,公司会壮大的很好,但是这个公司制度很完善,就会趋于僵化。经常市场环境会发生变化,新的技术会出现,因为你有太完善的制度,你那个制度是非常适应原本的生产环境,当新的环境出现的时候,公司你往往很难再适应一个新的环境,因为你整套公司的体系制度,已经高度对原来进行优化。
董飞:以前移动互联网不是很发达,传统IT公司进入移动互联网之后,它再适应是很难的。比如说以汽车来讲,大家都知道特斯拉出来之后,对市场是一个搅局,而传统的公司它是不太愿意花精力做这种电动汽车的,因为它想做也非常困难。就是一旦这种环境发生变化的时候,你虽然建立了很好很完善的制度,你制度越完善,一旦发生变化,你就越难继续取得成功。那这时候应该怎么办呢?这个事情怎么做,还是回到人和工具。首先来讲就是说应该加速人才的增长,不是说人数的增长,就是我们通过控制这个组织的复杂度,把组织复杂度控制到一定程度,当然随着企业的增长,这个复杂度通常还会继续增大的,这是没办法避免的事情。但是我们要让人才密度增长速度,超过组织复杂度的增长速度。为什么初期不需要很多制度,创业初期,因为你组织复杂度第一人少,而且往往创业团队的那个核心的创始团队其实都是很优秀的人,后面才慢慢拉进来一些普通的人,甚至一些水平不高的人,有的时候我们会觉得为什么招那些水平不高的人,因为有些脏活累活总得有人做,然后这种人越来越多。随着一个金字塔,就是顶上的人很优秀,下面更多的人水平很差。我们觉得好像是正常的方式,但实际上这种方式的结果就是必须要用更多的制度来解决。而如果你的人能足够优秀,通过人才密度的增长速度,超过或者达到组织复杂度的增长速度,这时候你不用制定太多的流程。
还有一条就是工具,因为光说人来讲,这个有点理想化,哪有那么多很优秀的人让你全都招过来,一些非常初级的工作,你找很优秀的人让他来做,确实有难度。所以我们还要借助工具,这个工具一定是先进的工具,因为先进的工具,当你使用的时候,你不仅使用工具本身,你也是不自觉的使用了先进的工作方式,这里面的工具既包括管理的工具,也包括技术的工具。我们先看一下这种技术类的工具。
我在这里面给大家列出来软件开发工具图,我在这边现在使用了一些先进的技术和软件,分成了几块,第一是开发类工具,我们使用的编程语言是(Scala),然后基于这个之上有一些框架,比如有一个叫(Play),就是做前端的框架。对于开源组件来说,我们也用到很多,比如说在数据库这一块有(MySQL),我们也用到了NoSQL(Cassandra),然后像前端的服务器是用(Nginx),这个性能非常高。第二是对一些编译方面,我们用NPM作为一个模块的管理包,还有一些如Docker,在右下角看到有一个鲸鱼,这是轻量级的容器。还有(Mesos),是作为一种支持不同分布式系统的集群管理工具。第三块是部署,我们完全是基于亚马逊的云计算平台,所以用到了它里面非常多的组件。我拿一个比如左下角的(Redshift),搭建高性能的数据仓库。第四块是监控,其实作为创业公司,我们应该把重点更放在自己的业务核心。而像监控,包括一些数据的管理,其实可以通过第三方,或者是购买一些服务来实现。我举几个例子,比如在右下角的(Datadog),它是做一些流量的监控,然后最右下角是(Sumologic),它可以做一些日志的管理过滤。
谢欣:我们继续往后看管理类的工具,比如我们用的邮箱用的是谷歌的企业邮箱,很多人说你们企业邮箱翻墙好麻烦,又不稳定,为什么不用别的呢,我们觉得谷歌它在微软里,它是更先进的一个东西,所以我们坚持用这个。而且你一旦被迫翻墙之后,你就顺便看很多翻墙才能看到的东西。比如我们更推荐(Google Drive),因为它会更促进协作,协作起来很方便,虽然说它功能虽然没有office强,但是一旦你开始用office,那更多是一个人在用了,而用这个的话很方便的几个人一起工作。比如那个IM,我们同时用了微信和(slack),很少用公司用微信做IM,为什么用微信呢?我实在找不到一个除了微之外,在7×24小时都能联系到人的工具,任何一个工具,都能把人严格的分成上班时间和下班时间,而只有微信是7×24小时的。为什么用(slack)呢,因为有了它之后,其他都不叫做企业的IM了,只有(slack)叫IM,其实很厉害。管理上还会用一些人力系统,包括zoho people这种相对比较小众的一些东西,但我们实际使用中觉得它是更好用的东西。
董飞:我先问大家一个问题,就是你们公司有多少天的年假,正常来讲,很多公司都有一些规矩是固定天数,比如说在硅谷这边也是很多,像facebook它的年假21天,像linkedin大概是15到18天。但是有人提出不同的见解,他说为什么我们加班的时候不记录下来,而年假是需要记录下来呢。所以当时unlimited vacation就提出来了,干脆就不设限制,如果说你觉得方便和认为需要的话,你就可以去休假,这也是体现了一种自由的制度,真正的做到以人为本。其实我现在的公司也是实施这样的制度,并且发现一个有意思的现象,统计发现,大家平均休年假的天数,比之前那些规定公司的时间还少,说明大家还是很努力工作的。
谢欣:我们接着回顾一下从人到团队,从团队之后到我们讲的制度,制度它实际上讲的制度和自由的这么一种关系,一个实战就是说我们用一些先进的工具来解决我们可能达不到的那种理想化状态。而工具的先进性,保证它实际上传达了一些先进的思想。
董飞:我想大家一定很关心这边薪酬的构成,简单说里面有三块,一个是你基本的薪水,第二个是奖金,奖金应该说不一定有,一般的大公司,像谷歌和facebook等等,他们会占15%甚至会更高。但是有的公司还是属于亏损的阶段,就没有奖金,那他靠什么去吸引人才呢,就靠第三块所谓的期权和股票。应该说如果这个公司做好了,比如说他通过上市,或者被收购,是有可能在短短的几年之内,是会有一笔不菲的回报。当然总体来说,一般的上市公司它愿意使用一种叫RSU,作为股票的奖励。创业公司早期他们还是发放一些期权,总体来说期权数量是要远远大于RSU的。
另外一个就是怎么去调薪,一般来说是根据你个人的表现,跟公司的效益,但是还有一种声音,说要通过这种市场行情而不是上者,你可以想象,如果说你在的公司,仅仅依据公司的绩效而没有给出一个市场行情的话,那么这个人才他可能就会被别人挖走,或者在这里待的不开心。所以说这个不应该由你公司的业绩所决定,而是由市场价值决定。这可以让大家去思考一下,到底是哪一种适合你们现在公司的做法。
谢欣:我觉得刚才董老师介绍的第二点,我很感兴趣,就说你的那个薪酬应该由市场行情,而不是由公司经营的好坏来决定,这个听上去很靠谱,如果大家觉得不合理,可以跟老板说一下,不要管公司发展的好不好,市场的行情在涨,就一定要涨上去。对工程师绩效考评,传统的模式会设一些KPI,定一些指标,其实从我们现实的经验来讲,这些指标都是胡扯的,你工程师的水平好坏很难反应出来。然后比较大的外企是怎么做的,他们会有一些比较科学的方法,然后进行一些360度的考评。这个看上去效果比较好,但我觉得对于绝大部分中小型企业,这个实现操作成本太高,而且这些东西也确实没有第三方工具可以用。你要做那种复杂考评类的,自己开发一套工具,所以难度很高。创业公司是怎么做呢,从我的经验,就说从实践,尤其在创业一开始一年两年,对绩效考核最好的做法就是不做绩效考核,大家工作都是很努力,在创业初期,从我的经验,任何一种方法,到目前为止我看的方法,真的都不够好,尤其对工程师而言,做了半天又不做了,其实最终取得的效果差不多。所以我觉得从我的经验,在创业初期最好的绩效考核方法就是不做绩效考核,解决了管理成本,最终的效果也是差不多的,你很难说做和不做,到底哪个对工程师最好。
回顾一下第四条理论,有了人,有了团队,定了制度,那我们薪酬和绩效这边怎么做,实战经验我们在福利上面,我们没有强调说有没有健身房,有没有桌上足球,没有这些东西。但有手机,住房补贴,免费三餐,更多是一些更接地气的福利,就是更靠近你生活的福利。
董飞:我们再谈工作之外的时间,我觉得这一条是传统企业不会这么做的,现在社会,尤其在创业公司里面,每个人和同事共处的时间已经超过了和家人共处的时间了,如果我们和同事还只是同事关系,很难拼过通过同事之间的关系远不止于此的公司,所以我们认为工作之外的事情是很重要的。其实最容易做的一个实战经验就是团队建设。
在这边工程师有一些活动,他们喜欢做编程大赛,或者叫编程马拉松,比如提供一个周末,召集一些有前端,有后端,有产品设计的,大家一起讨论,集思广益,一起做一件事情,也不一定要真的做的很成功,就是有趣的项目就好。他们还喜欢写一些博客,会放在公司宣传博客,或者个人博客上。有一个叫头脑风暴,一般会去一些风景很好的地方,比如可以去爬山,滑雪,或者去海边,这样大家即可以增进友谊,又能够探讨一下产品的未来发展。我们的工作环境,现在流行一种开放式的办公,让大家没有隔间,有什么问题就直接问,比较不必要的间接沟通,没有个人办公室的概念,然后这个也体现出来坦诚和透明。
谢欣:总体来讲就是这些东西,讲了5项理论,从先有人,人决定团队,然后再定什么样的制度,薪酬等,我们对这5项展开具体的实战经验,希望大家能有收获,我们分享就到这,谢谢大家。