写点什么

在 Criteo 发展工程文化

  • 2017-04-12
  • 本文字数:1500 字

    阅读完需:约 5 分钟

高级管理层需要最优先考虑工程文化,并创造能支持搭建良好的工程文化的框架。我们需要价值观来推动文化发展,也需要能规范事情运作的规则来支持文化发展。

Criteo 的高级人员发展领导人 Manu Cupcic 在 QCon London 2017 大会上进行了有关 Criteo 发展工程文化内容的演说。InfoQ 通过问答、总结和文章的形式报道了这次大会。

Cupcic 认为,工程文化不仅仅只是一种价值观,它还应该包含可以约束我们如何完成事情的一系列规则。他是这样定义工程文化的:

做出分布式决定的过程。

我们要做很多决定,因此如何来做决定就非常重要。Cupcic 认为,自顶向下做出决定的惯例并不符合现在的情况。如今我们的产业变化很快,所以我们需要敏捷来帮助我们快速做出决定。

Criteo 的文化氛围非常轻松。在组织中没有负责发展文化的中心地带,但是有“框架”来“指导”如何发展文化。Cupcic 表示:“我们觉得从中心逐渐向外发展文化是没有用的,文化本身应该是分布式的。”

在 Criteo 有工程师和经理组成的智囊团,来自各方的新想法可以反馈在共鸣板上。智囊团每两周会面一次,任何人如果想参与讨论中来,仅需要预订好时间档就可以发表或讨论主题。Cupcic 解释说,工程师和经理将倾听、讨论并给出意见和反馈。他们也会建议发言人向组织中的一些特定人员谈论话题或听取一些建议。Cupcic 表示,发言人可以预订下次会议来讨论这一系列事情的进展,同时也能帮助想法逐渐变得成熟。

Criteo 还有由高层经理和关键人物组成的技术领袖小组。如果他们喜欢呈现给他们的想法,他们非常愿意帮助实现这些想法。

在 Criteo,有两个价值观帮助定义文化:授权(Empowerment)和实验(Experiment)。Cupcic 提出,这些价值观比上面提到的小组更重要。因为如果没有小组,文化依然可以发展,只是可能过程并不顺利,比如人们在尝试一些新想法的时候忘记要去咨询关键人物的建议,追究原因是因为没有专门的技术领袖小组来指导他们。但是如果没有了价值观,文化就不会发展,或不会向着正确的方向发展,因为没有人引导它向正确方向改变。

授权,即文化是每个人的责任。Cupcic 指出,没有授权,就不可能有分布式决定。他们会通过奖励机制鼓励员工的授权,比如说如果有人能解决问题,他们就能得到提升的机会。

实验的作用是在小范围内先进行尝试,并获得经验。Cupcic 表示,改变文化就是改变习惯。他建议不要太快推进实验,应该慢慢获取更多数据并尝试不同的方法。

Cupcic 举例介绍了 Criteo 的员工是如何提升工程文化的。“领航者”计划旨在通过分享最佳实践,让协作变得更加简单。在这个计划中,人们要去其他的团队分享自己的想法,还要收集其他团队的想法并带回自己的团队。

这个计划的想法在由工程师和经理组成的智囊团中进行过讨论,他们研究了如何更加简单地交换不同团队的员工,“领航者”计划通常需要进行多久等。技术领袖小组也研究过员工交换的规则定义。在两个小组研究讨论之后,领航者计划在“全体员工”会议上进行了介绍。

Cupcic 说,这个计划已然成为了 Criteo 文化的一部分。它帮助提升了灵活性,促进了移动性,并主张弱化“我们 vs 他们”的观点和行为。

Cupcic 认为文化实在是太重要了,所以我们不能听天由命,应该先做好准备。要建立良好的工程文化需要很多时间,因此越早开始越好。高级管理层需要最优先考虑工程文化,但他们不能亲自参与推进工程文化。Cupcic 认为高级管理层应该帮助创造能支持搭建良好的工程文化的框架。

查看英文原文 Evolving the Engineering Culture at Criteo


感谢张卫滨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-04-12 19:001427
用户头像

发布了 218 篇内容, 共 78.3 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

华为Push用户增长服务:精准触达,加速增长

HarmonyOS SDK

HMS Core

一步步实现React-Hooks核心原理

helloworld1024fd

JavaScript 前端

MIAOYUN 2023年度战略共识会

MIAOYUN

战略共识 战略会

瓴羊Quick BI可视化大屏功能强劲

对不起该用户已成仙‖

React源码分析8-状态更新的优先级机制

goClient1992

React

一个诡异的 Pulsar InterruptedException 异常

小小怪下士

Java 程序员 后端

实现一个简单的Database12(译文)

GreatSQL

sqlite greatsql greatsql社区

PCB生产工艺|主流程之AOI,华秋一文读懂其子流程

华秋电子

什么是物联网?常见IoT 物联网协议最全讲解——基础知识

阿里云AIoT

人工智能 安全 前端开发 网络协议 传感器

佳杰云星:基于鲲鹏DevKit开发多云管理平台,云资源综合管理能力提升约25%

极客天地

2023前端二面经典手写面试题

helloworld1024fd

JavaScript 前端

react源码分析:实现react时间分片

flyzz177

React

react源码分析:babel如何解析jsx

flyzz177

React

透明led显示屏的应用指南

Dylan

LED LED display LED显示屏

从React源码分析看useEffect

goClient1992

React

瓴羊Quick BI移动端自助分析功能受追捧

巷子

飞桨-鹏城云脑发行版亮相第四届启智开发者大会,软硬一体化助力科研

飞桨PaddlePaddle

深度学习 paddle 飞桨

从 Netflix 传奇看,结果导向的产品路线图如何制定?

LigaAI

敏捷开发 研发管理 技术管理 成长路线图 企业号 2 月 PK 榜

阿里前端二面经典手写面试题汇总

helloworld1024fd

JavaScript 前端

IoT设备身份三元组烧录方案汇总——实践类

阿里云AIoT

阿里云 物联网 IoT

AIGC的隐私安全问题及隐私保护技术 | 社区征文

京东科技开发者

隐私计算 语言模型 ChatGPT 企业号 2 月 PK 榜 LLM

HarmonyOS Connect “Device Partner”专场FAQ来啦!

HarmonyOS开发者

HarmonyOS

React源码分析8-状态更新的优先级机制

goClient1992

React

GAIDC 2023盛会迎来大模型论坛“主场”,百度飞桨护航大模型产业发展

飞桨PaddlePaddle

深度学习 飞桨

运联智库发布跨境电商物流50强排行榜

联营汇聚

聊聊火出圈的ChatGPT

江湖修行

人工智能 AI ChatGPT

vue的两种服务器端渲染方案

京东科技开发者

Vue 服务端 nextjs nuxt 渲染方案

react源码中的生命周期和事件系统

flyzz177

React

解析关于Tomcat Servlet-request的获取请求参数及几种常用方法

华为云开发者联盟

开发 华为云 企业号 2 月 PK 榜 华为云开发者联盟

js函数柯里化-面试手写版

helloworld1024fd

JavaScript 前端

在Criteo发展工程文化_文化 & 方法_Ben Linders_InfoQ精选文章