首页 >热门资讯> 企业培训平台 > HiCTO创始人、前大众点评CTO龚世海:如何打造一支强战斗力的技术团队 >

HiCTO创始人、前大众点评CTO龚世海:如何打造一支强战斗力的技术团队

转载时间:2022.01.16(原文发布时间:2020.04.26)
119
转载作者:36氪企服点评小编
阅读次数:119次

编者按:本文来自微信公众号“高榕资本”(ID:banyancapital),作者 高榕资本,36氪经授权发布。

互联网创业成功离不开高效的技术研发体系,而高效体系的背后关键在于人。

创业公司在发展过程中,时常面对技术不断推倒重来、技术风险频繁出现、研发流程不顺、效率不高等痛点;人才方面,也经常陷入高端技术人才难以引进、优秀人才流失等困境。

在高榕资本联合清华五道口全球创业领袖项目举办的《修炼内功:创业领袖实战场》系列线上互动沙龙上,HiCTO创始人、前大众点评CTO龚世海,基于多年的一线技术管理经验,就创业公司在技术体系和团队搭建上的痛点问题开出“良方”。

龚世海2005年加入大众点评担任CTO,十年多时间帮助大众点评建立完整技术体系,将技术研发团队从几人扩展为六百人的精悍队伍。

一图get分享干货:

HiCTO创始人、前大众点评CTO龚世海:如何打造一支强战斗力的技术团队

如何根据产品规划,选择最佳技术方案

业务优先,最快上线

产品规划往往会有比较大的周期跨度,如何让技术研发更高效协同?首要核心是“业务优先”,保障核心产品可以最快上线。因此就需要对业务规划分阶段,具体到MVP的定义,要力图每个版本MVP的需求最小化。MVP需求越小,抓住的问题越核心,上线的速度就越快,交付价值和迭代速度也越快。

技术上兼顾快速上线和远期技术要求

伴随产品规划的演进,技术上要兼顾快速上线和远期技术要求。如何兼顾?

1)技术方案要尽量优雅简洁,同时清楚未来演进方向。

既能支持当前MVP版本,也明确未来随着流量增长、业务复杂度变高,技术向哪个方向演进。

这里有2个比较重要的提醒。首先,既要避免过度设计、也要避免粗糙的简单设计。有些人想在设计技术方案的时候,就设想未来一年、两年后的业务会长到什么阶段,系统复杂度会到什么程度,现在就都设计好。

这是不现实的,一来会造成系统复杂、上线很慢;二来很可能一两年后市场的变化和格局与预想不同,风险很大。但也要避免粗糙的简单设计,过于简单,可能一两个版本之后就发现之前的设计扛不住,会导致技术方案要大范围推倒重来,对公司造成的影响是很大的。

其次,在设计技术方案的时候,不要考虑太长远的事,也不能过于短期。根据过往的经验来看,除了非常基础的底层系统要看得更长远一些,一般应用层面的技术方案往后看半年是相对合适的。

2)从全局层面持续做业务逻辑抽象,抽象业务逻辑组件化。

在产品规划迭代的过程中,随着流量、业务和数据的增长,要从全局层面持续做业务逻辑抽象,即将抽象的业务逻辑组件化。例如可以将两个相近的业务抽象,使得系统更加简洁。

业务和技术如何实现高效协同

业务和技术高效协同的核心是合格的产品经理

产品经理是龙头,龙头方向错带来的损害很大,即使所有的研发扑上去,最后也是浪费了时间又浪费了金钱。

我见过一些创业公司的产品经理不够合格,他们更像一个翻译官或者传声筒,只是把业务线的需求翻译成技术语言,但并没有真正理解业务需求背后的逻辑,那么很可能在未来导致系统的失调。因此,一名好的产品经理,要是一个业务专家,甚至比业务人员更懂业务,能够比较有序、有逻辑地把产品一层一层地往前推进,从而实现业务和研发的高效协同。

产品经理和技术良好的协作文化

除了优秀的产品经理,产品经理与技术良好的协作也非常重要。如何培养团队这种协作文化?有几点经验可以分享。

1)既鼓励相互尊重,也鼓励相互挑战。

术业有专攻,技术要尊重产品的思路,产品也要尊重技术的判断,大家共同做出决策,从而更好地推进执行。但是也要鼓励互相挑战,例如技术工程师可以从用户角度去挑战产品的设计和逻辑;产品也可以根据实际需求的复杂度,挑战技术开发的工作量和周期。

2)重视产品需求评审会,提升需求质量。

这几年和一些创业公司接触的过程中,发现很多公司产品需求评审会没有做好,很多时候变成了一个产品宣讲会。建议一定要重视这个环节,去提升需求质量。第一,技术可以在会上对产品逻辑提出挑战,有助于产品把问题想得更清楚;第二,可以共同挖掘一些隐性需求,如果不充分讨论,很可能会导致后期出现各种各样的bug。

3)产品设计中包含产品改进的关键指标。

某种程度上看,产品和技术是一个team,产品上线后如何评估、未来是否要改进、如何改进,还是要让数据来说话。因此建议在产品设计中包含产品改进的关键指标,大家用共同的尺子来评估,如何优化也更容易达成共识、一同出谋划策。

4)鼓励产品经理和技术的私人友谊。

在大众点评的时候,我们会设置一些类似团建的费用,鼓励技术和产品团队可以在外面吃个饭或者喝杯咖啡,鼓励建立私人的友谊,也会有利于团队的协作。

5)招聘面试流程中建立相互面试的机制。

还有一点经验比较有效,就是可以在招聘面试流程中建立互相面试的机制。例如招一个产品经理的时候,我们也会请未来他所在业务线的技术经理或技术总监来面试,这种面试目的更多是为未来协作打下一个很好的基础。

打造高效研发团队

技术team leader三位一体的能力

打造高效研发团队,骨干的技术team leader很关键,如果评估他的能力模型?可以从三个维度来考察和要求。

HiCTO创始人、前大众点评CTO龚世海:如何打造一支强战斗力的技术团队

1)“事”,要有能力把事情做好。

体现在几个方面,第一是项目按时完成,对项目周期有比较客观的评估,既不高估也不低估,这样团队会有一个更好的节奏。有时评估一个需求需要很长时间能完成,但实际很快就完成了,让团队失去良好的节奏感,也会带来问题。

第二是项目质量高,没有比较愚蠢和严重的bug,让设计和架构合适、不拖业务后腿。

第三,好的技术team leader需要赞成业务导向,而不是唯技术论的。确实有些技术工程师不是业务导向的,想的只是如何把项目做得很有技术挑战性,某种程度上会不利于业务发展。

把事做好,基本可以给这样的team leader打60分。

2)“人”,即带好团队。

有几个维度,首先要让团队有凝聚力,不能是一盘散沙、有了问题互相推诿拆台。有凝聚力的团队是能够互相补位的,让团队能够达成共同的目标。

其次要让团队能够成长,对很多创业公司来说,研发团队是非常贵的,交给leader一个10人团队相当于交给他一年好几百万的投资,那么leader如何让投资“保值增值”很关键,即让团队有所成长、能力有所提升。这里有很多很多事情要做,包括如何安排任务、如何做职业辅导、如何引导不同能力类型的人走技术路线或管理路线、如何引导分享文化等等。

做好上述两点,如果能让团队成员在研发过程中有成就感就更好了,不会觉得自己是“码农”,而是对业务有贡献的,有成就感,做事的热情和效果也会提高。

把事做好、把人带好,这样的leader可以打7、80分。

3)“系统”。

一个非常优秀的leader,我认为还有一个关键的维度,即如何带领团队把研发系统做得更好。包括把系统的底层架构不断优化,为未来的变化和更高性能的要求做好准备;把业务常用的功能变成积木组件,可以在公司要尝试新业务的时候快速将系统搭建出来;也需要做机制流程上的优化,包括测试环境、持续集成、快速或灰度上线等;此外也可以打造一些通用的工具,提升内外团队的工作效率。

所以建议创业公司可以按照这些维度去寻找和评估team leader,哪怕现阶段达不到,也可以从这些维度去要求他,带领整个团队越来越优秀。

把好进人关,持续升级团队素质

很多创业公司业务发展很快,相应地团队规模的扩张也很快。过程中非常关键的是如何把好进人关,持续升级团队素质,为团队越来越高效打下良好的基础。

这里有两点建议,第一是当技术团队已经达到上百人规模的时候,启动校招很重要。从以前大众点评的经验来看,招到真正优秀的应届毕业生,他们很快可以成为公司里的研发骨干,做好后备力量建设非常关键。

第二要对新进人员严格把关,团队素质只升不降。在大众点评时,我们会要求技术总监在招人前要评估团队中位线的素质,然后要求新招的人一定是高于中位线的,从而让团队素质持续提升。

强化有助于建立高效研发团队的理念和机制

打造高效的研发体系,背后的理念也非常重要。这里我梳理了几点原来大众点评团队的关键理念和大家分享。

1)敏捷研发。

现在做敏捷研发的团队越来越多,大众点评比较早引入这种理念。即定义MVP,让研发有节奏地推进,可以快速迭代,这种理念会贯彻从需求到技术、测试、上线的整个过程。

2)产品化思维。

从研发角度有两种思维——项目型思维和产品化思维。项目型思维就是不停地切换到下一个项目,但是对已经上线的产品不太关注;而产品化思维的话,会持续追踪产品的关键指标变化,思考如何改进,例如负责支付研发的团队,会持续追踪模块的运行结果,如果性能耗时超过警戒值,就需要及时优化调整。

3)鼓励多面手文化。

一般技术团队会分前端工程师和后端工程师,后端只做逻辑代码,前端只会做JS页面、CSS等。所谓多面手,就是鼓励后端工程师也会做一点前端,前端工程师也了解后端代码,这样在实际研发过程中,可以把一些小的改动顺手修改、节省大量前端和后端协作修改的时间。

4)重视工具文化。

中国很多优秀工程师不大愿意做工具,因为觉得没有挑战性或者成就感。但我认为,如果一款工具能够发挥很大的价值,特别是当团队规模比较大的人,很有可能一个工具会造福很多工程师。Facebook很多优秀的工程师都愿意去做工具。

5)要培养开发工程师对质量负责的文化。

很多公司在产品出问题时会主要追责测试工程师没测试到,但实际上很多问题源自开发代码本身,如果都需要靠测试工程师来对质量负责,团队效率很难变高。真正的高效,是养成开发工程师对质量负责的文化,让开发和测试形成协作的关系,大大减少测试和修改的回合。

当团队规模比较精简时,更多是推动个人能力和团队的密切协作;但当团队规模变大之后,观念、文化、做事的底层一致性就变得更为重要。

文化上营造优秀人才生存的氛围

一个优秀的团队,还需要让优秀人才愿意留下来、长期待下去,而不是好的人流失走。这里有一些关键点。

平等、合作、正直诚信、公开透明的企业文化

工程师普遍比较追求平等和率真,没有那么多弯弯绕绕,所以他也希望公司是比较平等的、合作的、正直的、诚信的、公开透明的。所以如果企业文化和工程师内心能接受的文化是一致的,当然优秀工程师就比较容易留下来。

技术成就感

如果技术研发团队取得了不错的进度,应该能够获得不管是业务协作的平行部门还是上级的认可,提升成就感。

战场取胜

只要业务越来越好、不断打胜仗,公司日新月异地往前走,优秀的人才也愿意一同奋斗。

技术参与产品定义,不做码农

一些公司如何定义产品都是产品团队的事儿,然后做一次产品宣讲会,让技术团队写代码就行了,对于产品的价值、定位不够明确,其实就是让工程师自我定位为“码农”。我们需要剔除这样的观念,让技术适当参与产品的定义,包括重视需求评审会,鼓励技术提出更多隐性需求;早期也可以让一些技术leader参与到产品定义中,有助于后续的研发工作推进。

技术被重视

需要通过薪酬待遇、公司评奖等多种方式,让技术团队感受到被认可和重视。有一些公司的业务是运营和产品驱动,但也要让技术团队感受到被重视。

工作挑战性:技术深度、全栈发展、鼓励技术沉淀

如果一位工程师在一家公司技术没有提升,就会担心自己的市场价值越来越低,对于他的长期稳定工作是一个比较大的风险,我们需要重视技术工作的挑战性。

如果工程师负责的业务没有那么复杂或者没有那么大的流量,如何提高挑战性?也有一些方式,例如可以拓展技术深度、鼓励全栈发展、鼓励技术沉淀等等。

弹性工作时间、张弛有度、庆功文化

研发工作还是需要一些弹性工作时间的,此外我比较建议张弛有度的节奏。以敏捷开发来说,第一个冲刺阶段会要求非常饱满地工作,工作压力可能是120%,必须非常有效率地加班才能完成,这种高压也是对工程师能力的锻炼;第二个阶段可能就安排80%的工作量,让大家轻松一点。紧张-松弛-紧张-松弛,可以让团队能力和效率得到提升。

如果一项研发工作比较有突破性,或者解决了一个比较大的问题,在这些闪光时刻可以有一些庆功的仪式感。

轻松不压抑的环境、桌椅板凳、电脑

也要为工程师创造轻松不压抑的环境,提供好的工作设备和电脑,实际上这种成本的投入ROI是极高的。

快速淘汰不适合队员

最后一点,发现不合适的人要快速淘汰。工程师更愿意和优秀的人在一起工作。在招人的时候也是这样,一般A类人会招A类人,B类人一般会招C类人,C类人一般招F类、E类的人。

因此需要快速淘汰不适合的队员,其中核心是需要淘汰负能量、态度差的人。可能有些老员工能力弱一些,但对业务熟悉,是公司里的“稳定器”,公司应该提供匹配他的工作环境和工作岗位。

HiCTO创始人、前大众点评CTO龚世海:如何打造一支强战斗力的技术团队在沙龙上,来自高榕投资企业、清华五道口全球创业领袖项目的CEO/CTO,也与龚世海围绕技术团队实战问题进行了交流,以下为Q&A实录。

  • 对于高级技术人才来说,真正吸引他们的东西是什么,哪些元素在创业公司的抢人大战中能够真正吸引他们?

高端技术人才,包括技术大牛或者优秀的技术管理者,一旦离开大厂想进入一家创业公司,一般主要关注几个要素:

第一,对创业要做的事情是不是真正感兴趣,除了技术挑战性,也关心技术背后的价值,即便创业最后没有成功,未来的市场价值也没有降低。

第二是现实的考虑因素,刚性的待遇对比大厂不要差得太远,也会考虑未来有没有财务自由的机会,或者对未来自己创业有帮助。

如果上述两点都能达成,第三点是文化层面,吸引高端技术人才还要看他在与团队交流的过程中能否感受到团队足够优秀。

  • 随着创业公司的发展,如何搭建起一个成熟的招聘流程,持续性地吸引中高级、以及高级工程师加入?

有两个建议。第一是可以先找到一个方向的大牛,通过他来吸引一批高潜力的优秀人才。比如在大众点评的时候,算法团队从eBay挖了一位优秀的人,他进来以后配合校招选了一批尖子生,很快建起一支非常优秀的团队。

其次随着创业公司团队成员的增多,重视内推是一个很好的策略。因为内推的质量相对是比较高的,相对猎头成本也要低很多。

  • 如何做好技术研发团队的激励,让团队更具战斗力?

工程师的激励一定不能是单维度的,因为单维度激励往往会带来一些扭曲的动作,比如只根据工作量来考核,而不注重真正的价值产出,而且单维度激励会经常导致不公平的感受。

相反地,激励要从多个维度来展开。第一是绩效考核,一般一年做两次,可以根据整体战略方向进行相对灵活的调整。例如需要业务导向,那么对工程师的考核也可以有一定比例是业务维度的考核。

第二是职级层面,类似阿里、腾讯、美团都有自己的职级体系,及时对员工进行职级评估,如果升级了也会有配套的加薪和股权调整。

还有一些激励维度,例如公司层面的项目奖、新人奖、最佳进步奖、最佳分享奖等,甚至是一些“花小钱办大事”的小激励,向团队传递多元、公正的激励文化。

  • 创业公司技术团队从0到100人、从200到600人...不同阶段有哪些关键的抓手?

我加入大众点评的时候只有4位工程师,到后面扩展成600人的团队。一般50人是一个节点,50人以内在组织管理上一个人可以看得过来,对团队里的人和业务都会比较熟悉。

超过50、100人,就没有精力去了解每个人的情况,也很难一一面试,就需要建立起透过人来管人的机制,例如系统的会议机制、职业辅导体系等等。

当团队超过200人,公司可能有几个总监带着大的业务线往前走了,就需要在文化上投入更多精力。当团队更大的时候,观念、理念、文化上的东西反而更重要。例如不同的领导分别带着几十、上百号的人,难免有本位主义,就需要通过管理压缩本位主义的空间,让大家更多站在全局上考虑问题。

36氪企服点评

企业培训平台相关的软件

查看更多软件

行业专家共同推荐的软件

限时免费的企业培训平台软件

新锐产品推荐

消息通知
咨询入驻
商务合作