分布式工程团队建设的十大教训

2023-11-06

转自:https://www.zybuluo.com/lsmn/note/1059823

摘要

人才招聘、培养并促进分布式工程团队的发展并非一日之功,但是值得投资。Bruno提出了一些非常重要的见解,揭示了如何让团队全力以赴,而不管地理位置在哪里。

正文

本文要点

  • 及早确定招聘方法,并根据反馈优化;
  • 从第一次见面就和队友建立起个人联系,以便最大限度地合作;
  • 平等对待同事,如果有一个人是远程的,就把所有人视为远程的;
  • 创建非正式的异步环境,促进团队交流;
  • 以小型交付团队运作,激发主人翁精神,促进软件质量提升。

一个多样化的团队是更好的团队。不过,组建一个多样化的团队并不简单。在Doximity,我们早就决定培养一种包容文化。在和可以为我们带来独特视角,帮助我们换个思维的人共事时,这是我们优先考虑的。我们发现,其中一个最好的方法是和地理上分散的团队一起做这件事。

Doximity只有一个实际的办公室,而人才,和办公空间不一样,不受地理位置限制。

利用分布式团队不仅让我们可以和具有不同经历的人联系起来,也极大地扩展了我们的团队成员候选池。在过去的六年中,我们的工程团队已经从3人增长到了超过65人,他们中许多人都是远程工作。这些年来,我们成功推出了10几种内部和外部产品,而在整个过程中,员工保有率超过90%。

早期,一个比较痛苦的问题是:如何同不在一个办公室里的人沟通我们的核心价值?事实证明,给远程员工灌输公司和团队的原则实际上并不比给本地员工灌输难。我们决定,第一个周让人们来办公室。此外,我们每个季度都会把整个团队的成员召集到一起,开工作会议,开展团建活动。文化就是没有人看着时你在做什么;对于远程员工而言,那意味着大量的运用公司文化的机会。根据我们的经验,我们发现,共同的价值观传开了,而不管物理位置在哪。

现在,你可能会有一个疑问,就是分布式团队是否真得实用,那是一个有效性问题。如何保证一种鼓励创新的文化,即使员工不在同一间屋子里?过去,企业经常宣称,让每个人都在同一个屋檐下是创新的唯一方式。现如今,故事已经变了。BasecampGitlabAutomattic等创新性企业已经成长为成熟的公司,他们招聘的员工完全分散,利润数以百万计。Automattic是WordPress.com、Longreads、Simplenote、Gravatar、 Polldaddy等流行工具的母公司。他们的员工工作在世界各地,在该公司的团队中,有将近500名员工分散在50个国家。这个完全分散的团队构建和维护着WordPress,这个平台支撑着互联网的27%。像这样的公司通常会超越竞争对手。而且,他们将继续从拒绝采用分布式招聘模型的公司那里挖人。在Doximity,我们成功创建了世界上最大的、专业的美国临床医师网络,现在有超过100万认证会员,这在以前是从未做过的——他们都工作在一个大型的分布式团队里。

你可能对创建一个自己的远程团队感兴趣,那么,你该从哪里入手呢?

1.确定招聘方法:首先,仔细了解下你的招聘方法。过去这些年,我们选定了招聘远程员工的一些基本原则。当对应聘总部之外的职位的人进行面试时,我们重点关注一些基本特征。自我管理能力至关重要,紧跟着是准确流畅地沟通、自尊及尊重他人。

远程工作确实需要一点时间来适应。招聘一个有过远程工作经验的人就省掉了这个过程。每次,我们和一个首次考虑远程职位的候选人交谈时,我们一定要讨论其他远程员工在这个过程中遇到的流程和沟通陷阱。

我们有过惨痛的教训。早先,我们招聘了一名软件工程师,他从来没有远程工作过。他低估了对安静的专用办公空间和可靠的互联网的需求。这看上去是常识,但根据我们的教训,我们现在面试时会强化这些细节。在这个岗位上工作了数周之后,他确定,远程环境不适合他。

2.和队友建立起个人联系:尽快建立个人联系非常重要。在视频面试中,我们可以尽早看到候选者,这时,我们就开始了这个过程。若干研究都显示出社交关系的价值。那就是为什么我们要求新员工至少第一周要来办公室。他们和总部的团队见面,一起吃午餐,最重要的,和他们的导师建立个人联系。我们鼓励远程员工不时地来办公室,那对各自的团队都是有益的。另外,我们每个季度都会有几天把团队成员聚在一起,回顾、分享经验教训、提前规划下季度的工作。这样每季度一次的聚会让我们有时间进行面对面的团队建设。从滑雪到骑马,我们一起度过了高质量的快乐时光,强化了同事之间的个人联系。

3.平等对待同事:多年来,我们已经看过、听过分布式团队里许多失败的尝试。这些失败几乎可以完全归因于没有认识到,一旦你招聘了一名远程员工,你就需要把每个人都看成是远程的。务必确保可以异步交流,务必确保可以开展连续的讨论,而不管位置在哪。即使是多年之后,我们有时候仍然觉得需要强化这一思维。二三年前,我在和一名工程师就有关情况进行一对一的交流时,我收到了反馈。他觉得,集中团队会将始于线上的讨论拿到线下,然后带回一个解决方案,所以,无意间就将远程员工排除在讨论之外了。记住,对所有人一视同仁。

4.虚拟饮水机:异步交流让我们可以免除干扰,但也少了调性和即兴——这是我们交流并彼此了解的关键。我们鼓励人们围绕感兴趣的话题即时交流;这大多数是由对这个主题感兴趣的那些人主导的。话题宽泛,从滑雪到游戏再到音乐。这些渠道里的对话通常是和业务不相干的,只是提供一个非正式讨论媒介,让人们有个地方可以增进个人关系。这种聊天室为人们增进关系提供了一个舒适的地方,否则,他们会在办公室里饮水机旁聊天。

5.关注交付团队:如何保证生产效率?如果我们看不到他们,那么我们如何知道一名工程师是否高效?这个问题很简单。招聘有自管理能力的人,把团队保持在一个较小的规模上,组建专注于产品的团队。每个主要产品都有一个专门的交付团队。团队包含把产品交付到生产环境所需的互补的技能集。这些交付团队是一个由6到10人组成的紧密型小组,他们紧密合作,构建并交付解决方案。这种设置让分散的小组对他们正在构建的东西、什么能提高效率有清晰的认识,并具有主人翁精神,这让它非常适合于团队的分布式性质。

6.利用恰当的技术:技术有了长足的进步。20年前,甚至是10年前,由于技术限制,招聘一名分散在异地的员工还是不切实际的。现如今,视频会议、屏幕共享以及异步通信的广泛应用帮助我们实现了这种便利的工作环境。每家公司最终都会采用最适合他们的方式,每一种流程都需要一点试验。在Doximity,我们已经测试了六种解决方案,最终选择了一套我们觉得效果最好的技术。

7.视频会议:我们在旧金山的办公室有12个会议室,其中每一个都配备了ChromeBox、会议系统和一个大型的壁挂电视。ChromeBox直接集成了谷歌日历,让参与会议变得轻而易举。每个邀请都自动包含一个视频会议连接,不需要任何额外的步骤。ChromeBox提供会议期间屏幕共享、双向视频,并使用了一个全向麦克风,让所有的呼叫者都可以清晰地听到双向语音。对于更大的会议室,你可以购买ASUS Chromebox。我们以前试过其他的系统,如Skype和HighFive,两者都需要额外的软件,但是,对于我们来说,它们未能提供与谷歌日历的稳定集成。

8.异步聊天:我们选择的是Slack,但还有许多等效的工具,如HipChat和Stride,这两个都是Atlassian的产品。甚至Facebook都试图借助其“Workplace”工具涉足这个领域。我们选择了Slack,因为它提供了我们需要的集成,可以把工作统一到一个平台上。这些集成包括来自DevOps栈的警示讯号、日历提醒、自动回复。

此外,开放式开发平台让我们可以构建自定义的集成,完善我们的工作流。我们的“午餐机器人”就是一个自定义集成的好例子。隔周五,这个机器人就让员工们选择加入公司资助、随机分配的5人午餐小组。对于那些彼此之间通常互不联系的人而言,这是一种有趣的对话促进方式。

9.屏幕共享:在促成分布式沟通方面,屏幕共享无疑是其中一项比较显著的技术改进。不管我们是在帮助同事解决一个配置问题,还是结对编写一段比较难的代码,亦或是仅仅共享一个幻灯片,可以快速共享屏幕的能力让整个过程变得更愉快。Slack内置了语音电话和屏幕共享;它甚至允许任意一方控制另一方的屏幕。

10.语音呼叫:异步的文本聊天很有效,但那并非总是最有效的交谈方式。我们测试了几款在线语音呼叫工具,最终还是选择了Slack,因为它已经是这个工作流中不可或缺的组成部分。Slack让我们有能力从文本聊天快速、无缝地转到语音呼叫,再到屏幕共享,在到视频。除了工具之外,重要的是要尽早认识到,什么时候文本聊天比语音更有效。

当然,建立一种全面的分布式文化有个学习曲线,但是,其结果值得这样努力。如果想要有一个让你可以取得成功的环境,你必须确保你招聘的人在没人监督时仍然高效;就是说,没人看着的时候仍然做正确的事。分散的员工必须能够清晰地表达自己,对于他们的产品质量,有着类似的自豪感。

我们不断地收集反馈,改进流程。我们发现,这非常地有用,提高员工的幸福感、生产力和保有率。花些时间仔细优化下公司的入职指导方法,最重要的是,提供一个便利的环境,可以异步通信,从而建立起你希望建立的多样性分布式环境。作为领导者,你的工作就是要让信任、协作和创造性流行起来。

关于作者

Bruno MirandaDoximity工程部门副总裁,这是一个HIPAA安全的医疗社交网络,面向医护专业人士,美国超过70%的医生都是其会员。作为工程部门的副总裁,Miranda管理着软件工程部门。他是来自巴西的第一代移民,他很幸运,早在10岁的时候就开始钻研计算机。他那会用的还是一台IBM XT 286,从那时起他就迷上了计算机。从2000年初开始,他大部分的时间都在开发软件,领导工程团队。Miranda之前在Hoodiny工作,是MSN.com的合作伙伴,从事个性化在线电台工作。Bruno的Twitter账号是@brupm

查看英文原文:Top 10 Lessons in Building a Distributed Engineering Team

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分布式工程团队建设的十大教训 的相关文章

  • 国内IT公司病的有多重?技术圈交际花谈软件研发管理怪现状

    虎嗅注 在创业过程中 研发管理是很重要的内容 但是国内创业公司的研发管理却长期处于一种比较混乱的状态 国内创业公司的研发管理到底出了什么问题 技术人攻略的Gracia采访了素有 技术圈交际花兼娱记 称号的程显峰 从程显峰的口中 我们可以了解
  • Tom DeMarco:软件工程这个概念已过时?

    原文作者 Tom Demarco 写于2009年7月 作者简介 Tom DeMarco是大西洋系统协会 www atlsysguild com 的负责人 他的职业生涯开始于贝尔实验室 是结构化分析和设计的创始人之一 研究领域主要集中在对软件
  • 吴博:京东应用架构设计与治理

    吴博 京东应用架构设计与治理 经过十年的业务快速发展 京东信息系统复杂度越来越高 一般电商系统只需关心 进销存 中的 销 京东系统需要管理采购 进 销售 销 和库存 存 三个环节 系统做水平垂直拆分后 需要解决系统间如何解藕 如何保证高效通
  • 团队管理那点破事,OKR绩效、核心人才、面试、技术分享、研发流程

    微信搜索 微观技术 关注这个不喜欢内卷的程序员 精彩文章汇总 GitHub https github com aalansehaiyang technology talk Star 12K 汇总java生态圈常用技术框架 开源中间件 系统架
  • 技术管理者培训小结三:强弱矩阵的优势和劣势

    强弱矩阵的区分关键 绩效是部门主管考评还是项目经理考评 人员在项目中是否唯一确定 三大关注点 是否有利于快速向客户交付价值 是否有利于人员能力的长期积累 是否有利于架构的稳定和演进 一 弱矩阵的优势 有利于专项人才培养 有利于单点技术积累
  • (转)如何有效地管理好技术团队?

    转自 https cn 100offer com blog posts 307 技术管理是一个综合性岗位 要求你具有技术能力 管理能力 也要懂一些心理学 情商也要高一些 说实话 你想做好这个岗位 真的不容易 尤其是在中国 我相信今天的分享过
  • 多项目管理的一点思考

    与人闲聊 被问到如何去同时管理多个软件项目 讨论思考有三 第一 制度化 多个项目进行 势必会分散人的精力 在有限的时间如何把这些工作做好 通过规范化的制度 各个项目的文档 进度都应该做到去规范 制度化 第二 项目进度的掌控 软件项目最重要的
  • 选择 dwm 作为窗口管理器的 4 大理由分析

    导读 我喜欢极简 如果可能 我会尽量在一个终端下运行所有需要的程序 这避免了一些浮夸的特效占用我的资源或者分散我的注意力 而且 无论怎么调整窗口大小和位置却依旧无法使它们完美地对齐 这也让我感到厌烦 出于对极简化的追求 我喜欢上了 Xfce
  • 腾讯架构师谈技术管理:十年沉浮,最后我选择了离开……

    转自 http www techug com post tencent architect talk about team managment html 作者介绍 韩伟 腾讯科技互娱研发部架构师 曾在网易任职8年 担任无线事业部产品总监 多
  • 2008.06.01 读华为前执行副总裁李玉琢的《我与商业领袖的合作与冲突》有感(二)

    读华为前执行副总裁李玉琢的 我与商业领袖的合作与冲突 有感 二 关于作者的收山之作 利德华福之战 李玉琢如何收拾人心 天地虽小故事多 人生成就有几何 放杯一饮长江水 何计万里波与折 做人虽难仍须做 问心无愧是原则 人间会有公道在 种瓜种豆各
  • [管理与领导-71]:IT基层管理者 - 辅助技能 - 4- 职业发展规划 - 职业情绪管理

    目录 前言 一 迟到 不积极的三种情况 二 工作动机 动力模型 2 1 兴趣 能力 价值感模型 2 2 动机模型 三 常见的负面的职业情绪 四 应对措施 4 1 职业中应对焦虑的策略 4 2 职业中应对厌倦的策略 4 3 职业中应对失落的策
  • Sprint回顾会议的一种简单玩法

    原文作者 Mike Cohn 回顾会议该怎么开 团队不同 大家的做法或许各有不同 我想介绍一种我最喜欢的方式 特别是因为这种方法经受住了时间的考验 很多年以来 我已经把它运用在了很多很多的团队里 开始 停止 继续 我喜欢在sprint回顾会
  • 技术经理、架构师、技术总监、VP、CTO,这些岗位都是如何挣出来

    所有的职位不是别人给你的 而是你自己挣出来的 对于技术经理 首席架构师 技术总监 技术VP CTO 各个岗位之间存在差异 我将从以下五个核心点来分析 技术实力 领导力 战略观 组织能力 文化建设能力 这五个核心能力的强弱 决定你在市场的价值
  • 与MySQL的零距离接触(三.函数、存储过程、引擎、图形化管理工具)

    金山竹影几千秋 云索高飞水自流 万里长江飘玉带 一轮银月滚金球 远自湖北三千里 近到江南十六州 美景一时观不透 天缘有分画中游 祝大家小年快乐 2018福气生财 一 运算符和函数 准备 连接数据库 mysql uroot proot P33
  • 华为的成功依靠的不是IPD

    几次聊天中 有人提到他们的公司在学习华为 贯彻IPD 这些企业都发展的比较大了 希望能用一套行之有效的管理方法来进行规范化管理 对于IPD我总是保持谨慎的态度 如果公司已经发展到一定阶段 内部形成了明确的部门分工 同时也出现了严重的部门墙
  • 【操作系统】虚拟存储器概述

    存储管理分类 实存管理 分区 Partitioning 连续分配方式 包括固定分区 可变分区 分页 Paging 分段 Segmentation 段页式 Segmentation with paging 虚存管理 请求分页 Demand p
  • 眼睁睁看着乙方把项目作死是一种什么感受(项目作死10大方法)

    刚跟乙方开完会回来 在会议的后半程我感觉快要窒息了 基于本次项目合作浓郁的 政治因素 作为 掮客 的我们只能要求不再延期跳票 尽快处理等嘴皮子功夫 其它的实在力不从心 这种感觉就真真是眼睁睁看着甲方作死 极力想拉住它 它还嫌 累 我是如何看
  • 并不是所有的程序员都适合做技术管理

    CSDN记者 张勇 写在之前 在CSDN博客闲逛时无意间进入一个博客 博客地址 博客里的文章质量很高 文章话题主要涉及程序员素养和管理 文章有翻译也有原创 看了几篇文章之后 突然很想和这篇博名为 呦呦鹿鸣 签名则引用孟子 穷则独善其身 达则
  • 使用Minitab解决Excel的限制问题

    前两天 当我在做数据转置以期获得更好分析图形的时候 我碰到了传说中excel的限制 如图 在解决这个问题的过程中 我发现了用来做数据分析 比excel更好的工具Minitab 打开minitab 把纪录数据的Excel表以File gt O
  • MES11大标准模块(ISA95)

    1 资源分配及状态管理 ResourceAllocationandStatus 该功能管理机床 工具 人员物料 其它设备以及其它生产实体 满足生产计划的要求对其所作的预定和调度 用以保证生产的正常进行 提供资源使用情况的历史记录和实时状态信

随机推荐

  • Android中的USB中的UsbAccessory和UsbDevice的区别

    转载自 http www crifan com android usb usbaccessory vs usbdevice utm source tuicool utm medium referral UsbAccessory和UsbDev
  • MySQL更新表的记录详解

    目录 前言 前言 一 更新数据记录 1 特定数据记录 2 所有数据记录 总结 前言 更新数据记录是数据操作中常见的操作 可以更新表中已经存在数据记录中的值 在MySQL中可以通过UPDATE语句来实现更新数据记录 该SQL语句可以通过如下几
  • 5个炫酷登录页面,拿去就能用(附源码)

    5个炫酷登录页面 拿去就能用 附源码 登录页面 觉得显示效果很好 借鉴其他博主的 喜欢的可以收藏关注 不商用 只为学习传播 目录 1 炫酷星空登录 2 动态云层登录 3 深海灯光水母登录 4 炫酷蛛网登录 5 彩色气泡登录 1 炫酷星空登录
  • 响应式网页设计(Responsive Web Design)的核心原理

    聚沙成塔 每天进步一点点 专栏简介 响应式网页设计的核心原理 优点和缺点 优点 缺点 写在最后 专栏简介 前端入门之旅 探索Web开发的奇妙世界 欢迎来到前端入门之旅 感兴趣的可以订阅本专栏哦 这个专栏是为那些对Web开发感兴趣 刚刚踏入前
  • CVE-2022-26134 Confluence OGNL RCE 复现

    一 漏洞概述 Atlassian Confluence 是一款各企业广泛使用的 wiki 系统 在Atlassian Confluence Server and Data Center上存在OGNL 注入漏洞 远程攻击者在未经身份验证的情况
  • Servlet之间传递数据

    转自 http jallay iteye com blog 256004 1 如何让用户的请求数据从一个Servlet传递给另一个Servlet 第一种方式 通过超链接传递数据 第二种方式 通过表传递取参数 第三种方式 通过setAttri
  • 『数据结构』B树(B-Tree)及其变体 B+树,B*树

    原文地址 1 背景 当有大量数据储存在磁盘时 如数据库的查找 插入 删除等操作的实现 如果要读取或者写入 磁盘的寻道 旋转时间很长 远大于在 内存中的读取 写入时间 平时用的二叉排序树搜索元素的时间复杂度虽然是 O log2n O l o
  • BBR拥塞算法的简单解释

    TCP BBR的ACM论文中 开篇就引入了图1 以此来说明BBR算法的切入点 为何当前基于丢包探测的TCP拥塞控制算法还有优化空间 BBR算法的优化极限在哪儿 图1 为了理解这张图花了我整整一个晚上的时间 它使我重新审视了所有基础概念 而我
  • vue2.js初探

    今天学习了一下vue2 js 感觉很好用 一个是把相同的功能组件化了 把他定义一个标签 不用多次开发重复的代码 直接加标签就可以了 还有就是他把数据和标签的显示修改完全分开了 之前用jQuery开发 如果数据变动了 需要用jquery回调事
  • 计算机网络第八版——第一章课后题答案(超详细)

    第一章 该答案为博主在网络上整理 排版不易 希望大家多多点赞支持 后续将会持续更新 可以给博主点个关注 第二章 答案 1 01 计算机网络可以向用户提供哪些服务 解答 这道题没有现成的标准答案 因为可以从不同的角度来看 服务 首先要明确的是
  • ThreadX 内部系统时钟服务

    ThreadX中 有两个函数可以获取和设置内部系统时钟服务 tx time get 获取当前时间 tx time set 设置当前时间 tx time get 获取当前时间 原型 ULONG tx time get VOID 描述 这项服务
  • VUE安装问题

    启动应用 npm run serve 默认进入为 http localhost 8080 由于部署在虚拟化linux上 需远程访问 需将localhost修改为服务器IP 1 修改package json 新增host 0 0 0 0 2
  • 【Flutter 系列——1】Flutter环境搭建及配置这一篇就够了(Windows)

    最近正式入坑Flutter 首先从环境搭建开始 看了网上好多关于Windows环境搭建的资料 基本都是按官方文档写的 看完的感受是 还不如直接去看官方文档 官方英文文档传送门 Get Started Install on Windows 本
  • 数据要素流通视角下数据安全保障研究报告

    报告围绕数据要素流通视角下流通数据 流通活动 流通设施的安全需求 分析健全我国数据安全保障体系的推进思路 并从分类分级 流通环境 安全技术 协同共治等方面提出措施建议 为完善我国数据要素流通视角下数据安全保障提供有益参考与借鉴 关注公众号
  • WinCE5.0显卡驱动修改笔记

    WinCE5 0显卡驱动修改笔记公司前段时间让我在Geode上安装一个CE5 0 我把系统安装好之后发现显卡驱动不支持开发板的屏幕 我们的屏幕是800x480的 所以我只能自己动手写修改了一下驱动让它能够支持800x480 一下是我对驱动的
  • python报错code for hash md5 was not found解决方案

    因为开发机服务器不能上网 只能手动安装Python 但是装完后import hashlib出现异常 出现不支持sha256 sha512 md5等错误 现象如下 gt gt gt import hashlib ERROR root code
  • 排序算法之时间复杂度为O(N^2)的算法

    背景知识 排序算法算是比较基础的算法了 但是在面试过程中偶尔也会被问到 虽然很多语言都内置了排序函数 例如php的sort函数等等 但是还是有必要聊聊排序算法 这篇文章中将介绍时间复杂度为O N 2 的几个排序算法 本文基于从小到大排序讲解
  • react面试题(30个)

    1 React Native相对于原生的ios和Android有哪些优势 react native一套代码可以开发出跨平台app 减少了人力 节省了时间 避免了 iOS 与 Android 版本发布的时间差 开发新功能可以更迅速 等等 2
  • go语言后端调用以太坊rpc

    任务要求 使用golang作为后端语言 获取eth 私链 中的账户信息以及创建新的账号 1 启动geth geth identity aaron datadir data0 rpcport 8545 rpccorsdomain port 3
  • 分布式工程团队建设的十大教训

    转自 https www zybuluo com lsmn note 1059823 摘要 人才招聘 培养并促进分布式工程团队的发展并非一日之功 但是值得投资 Bruno提出了一些非常重要的见解 揭示了如何让团队全力以赴 而不管地理位置在哪