如何打造高效的团队(一) - 团队架构
本文转自: https://blog.csdn.net/xiaozhi239/article/details/108163138
文章目录
- 关于团队管理的常见误解
- 团队设计基本原则
- 康威定律
- 系统设计从团队设计开始
- 团队是执行任务的最小单元
- 四种团队类型
- 三种团队交互模型
关于团队管理的常见误解
如果在现在这样的背景下,依然认为技术管理还只是软件开发里的附属品、只要技术好技术管理能力就自然而然的好、技术管理非常务虚、技术管理没有什么难度,我觉得其实就有点对不起认知升级的成长趋势了。
团队设计基本原则
康威定律
康威定律最早是在1967年Conway发表的论文《How Do Committees Invent?》被提出,之后《人月神话》里引用并将其命名为康威定律(Conway’s law)。
系统设计从团队设计开始
这是根据康威定律很自然的一个延伸,当年决定团队架构的时候,你就已经在决定系统架构了。
团队是执行任务的最小单元
书中的另外一个原则就是团队是执行任务的最小单元。“团队”这个词在书中有明确的概念:一个拥有5到9人、有共同目标的稳定小组。作为执行任务的最小单元,公司应该把任务分配给团队而不是个人。
- 团队规模不应过大,比如贝佐斯的两个披萨原则:Every internal team should be small enough that it can be fed with two pizzas. 书中引用了许多理论和研究来佐证,业界推荐的智力工作型团队最佳人数为5-9人。
- 业务上“高内聚,低耦合”。
- 连续性和稳定性,团队需要经历一段时间的招募、磨合和成长才能进入高产期,频繁的变换团队架构(reorg)一般来说都不是好现象。
- 明确的团队目标和团队的边界。
- 合理的团队Cognitive Load。
四种团队类型
书中认为所有高效的公司,团队类型需要最终都能被四种类型覆盖:
- Stream-aligned team:迭代业务输出、交付用户价值的主要团队类型。一个公司里大部分团队都应该属于这个类别。其它团队都是围绕着怎么支持stream-aligned team来构建的——减少Stream aligned team的Cognitive Load,使之更高效。(对于Stream的理解。Stream就是用户value在产品中从设计到交付的一个过程/流/周期。Stream-aligned 的这种团队设计方式,有利于团队对最终交付负责,并得到用户反馈,持续改进提供给用户的价值。)
- Enabling team: 赋能团队,一般是由专家、顾问或者培训师组成,帮助另外的团队onboard某个新系统或者建立某种能力。一般来说都会有一个明确的赋能exit criteria和任务时间,最终的目的是让被赋能的团队可以独立运行。比如team A开发了一套新框架,某个stream-aligned team B决定采纳,team A决定在一个quarter的时间里协助他们迁移到新框架上并且培训team B让他们可以独立运行(exit criteria)。
- Complicated system team: 专业领域团队,负责某个具体高门槛的核心技术的实现、维护和提升,并通过提供工具或接口的方式赋能其它团队。比如一个具体的数学库、或者语音识别的算法库,如果普通的团队要掌握的话一般需要付出很多的精力。这个时候我们可以招募一批专家负责封装细节和提供self-serviced服务。
- Platform team: 平台组,实现对底层细节的屏蔽,帮助Stream-aligned team更高效的关注业务层面。
三种团队交互模型
- Collaboration: 即两个团队直接紧密合作。不过虽然这种方式往往能带来快速的思想交流,同时它也需要付出更大的代价:比如更多的交流,需要说服更多的人,两个团队之间要有更多的协调,两个团队之间产生互相的依赖等等。所以一般建议一个团队在同一个时间最多只和另一个团队以collaboration的方式合作;同时最好提前明确collaboration的时长和要达成的结果。
- X-as-a-service: 将团队产生的价值通过(内部)产品、服务的方式推广出去;接受方同理。服务指可以让对方以self-service方式consume的价值,可以是API,可以是library,可以是一套工具,可以是文档等等。上面提到的platform team和complicated system team一般情况下最终目的都是以这样的方式去服务stream-aligned team。
- Facilitating: 帮助另一个团队扫清障碍、建立能力;接受方同理。这种方式的直接代价就是提供facilitation的团队的工程师需要占用自己用在维护或产出新功能的时间,不过好处是可以进行宣传和教育、增强公司内对相应技术、工具等的认知。一般建议一个团队同时不要facilitate很多个团队;提前协调好时长;并且以被facilitate的团队最终可以独立运行为目的(自主掌握、可以自己解决这方面的问题,或者说不用再考虑这方面的问题)。
这篇文章到现在分享了我个人认为Team Topologies这本书的一些主要概念。后续我应该会结合一些实战事例再对书里的内容进行讨论。不过还是非常建议读一读这本书,应该会有更多共鸣和收获。
如何打造高效的团队(一) - 团队架构相关推荐
- 如何打造高效的项目交付团队︱中国联通(江西)工业互联网研究院熊小云
中国联通(江西)工业互联网研究院高级咨询顾问熊小云受邀为由PMO评论主办的2022第十一届PMO大会(线上会议)演讲嘉宾,演讲议题为"如何打造高效的项目交付团队".大会将于8月13 ...
- 打造高效研发团队 (1) —— 组织架构篇
原文:https://my.oschina.net/huangyong/blog/1812037 2015 年,我加入特赞,带领了一支小规模研发团队.那时公司还在天使轮,团队最大的目标是能让产品上线, ...
- 打造高效研发团队 (4) —— 团队文化篇
原文:https://my.oschina.net/huangyong/blog/1823660 软件开发是一场需要集体智慧的运动,它的成功不完全属于团队中任何一个人.然而,团队成员们做人做事的风格却 ...
- 如何打造高效的团队(五)- 文化
文章目录 为什么需要团队文化 什么样的文化能带来更高效的团队 提高业务契合程度 提高资源利用率 提高执行速率 减少团队阻力 为什么需要团队文化 如何打造高效的团队(一) - 团队架构 如何打造高效的团 ...
- 如何打造高效的团队(四)- 团队效能度量
文章目录 为什么效能度量很重要 度量什么 怎么度量 定性指标 定量指标 发挥效能度量的价值 为什么效能度量很重要 如何打造高效的团队(一) - 团队架构 如何打造高效的团队(二) - Android平 ...
- 如何打造高效的团队(三) - 领导力
文章目录 综述 管理和领导的区分 影响力的来源 合适的团队领导力 因地制宜 因人而异 1. 情景领导模式 2. 需求三角 3. Project Oxygen 适合自己 常见最佳实践 相关博客 综述 如 ...
- 打造高效的项目团队,促进项目进度管理
项目管理是项目的管理者,在有限的资源约束下,运用系统的观点.方法和理论,对项目涉及的全部工作进行有效地管理.从项目的投资决策到项目结束的全过程进行计划.组织.指挥.协调.控制和评价,以实现项目的目标. ...
- 打造高效团队的四个着力点
转自:https://www.fx361.com/page/2021/0630/8521470.shtml 精准目标.精湛专业.精化机制.精铸共识是打造高效团队的四个着力点. 高质量发展必然对企业提出 ...
- 如何打造高效的团队协作
"如果干得好,管理是最崇高的职业之一.没有哪一个职业能像管理一样为他人提供学习和成长的机会,让他们懂得承担责任并取得成绩,以及为团队的成功做出贡献" <你要如何衡量你的人生& ...
最新文章
- 稳定性专题 | Spring Boot 常见错误及解决方法
- 软件测试人员需要掌握的linux命令(一)
- 第十六周程序阅读(6)
- PCA--主成分分析(Principal components analysis)-最大方差解释
- java 线程---成员变量与局部变量
- [项目更新] 集成RabbitMQ队列与EventBus总线
- 【并查集】打击犯罪(ssl 2342)
- 稍微有点难度的10道java面试题,你会几道?
- centos移动文件到指定目录_Dynamo批量分离中心文件并另存到指定目录
- cordova 项目添加splash启动界面
- 前端学习(1670):前端系列实战课程之核心运动原理
- 之前画得太丑了,再来张好看的.我试着改小点.但是就看不清了
- manacher 背诵用模板
- powershell 常用命令之取磁盘分区信息
- Android 读取手机归属地
- JavaSE 字符串
- 中国专利申请CPC客户端软件问题解决方案
- stm32 W25QXX系列驱动 W25Q80 W25Q16 W25Q32 W25Q64 W25Q128 W25Q256
- 技术美术个人笔记(三)——各贴图格式
- 线性回归分析步骤总结