您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。 [2023第十二届全球TOP100软件案例研究峰会]:字节跳动-金雅谊-字节跳动技术Leader数字化研发管理案例 - 发现报告

字节跳动-金雅谊-字节跳动技术Leader数字化研发管理案例

报告封面

个⼈简介 ⾦雅谊 字节跳动DevMind量化与应⽤产品负责⼈ ⼯作经历: 曾就职于蚂蚁集团、⽹易等公司,做过可视化建模平台、智能机器⼈等,⽬前在字节跳动负责研发数字化产品与解决⽅案,负责公司研发效能提升、效能实践落地⼯作。 擅⻓领域: •数据驱动性解决⽅案&落地•数据分析和可视化•产品设计&项⽬管理•研发效能 今⽇旅程 03技术Leader管理⽬标:有哪些技术Leader管理⽬标:怎么做如何依托平台进⾏研发效能管理0102 ·了解团队效能现状设定可量化的核⼼⽬标进⾏⽬标管理⾃动检测异常洞察根因&改进··· 04⼀线技术Leader的管理案例 01技术Leader管理⽬标:技术Leader的职责 作为技术Leader(TL),相⽐个体贡献者(IC),必须带领团队成员共同前进,并同时承担三个职责: 1.业务交付责任⼈:对“事”负责,保证团队整体⾯向业务做⾼质量、⾼效率的交付,达成业务⽬标。 2.技术带头⼈:对“系统”负责,对研发过程中的关键环节进⾏技术把关、架构看护、关键问题攻关。 3.团队建设者:对“⼈”负责,结合业务来实施绩效管理,分解团队⽬标。并且还需帮助团队成员持续提升研发效率、研发能⼒,实现团队和个⼈的共同成⻓。 01技术Leader管理⽬标:有哪些 01技术Leader管理⽬标:有哪些 01技术Leader管理⽬标:有哪些 01技术Leader管理⽬标:有哪些 01技术Leader管理⽬标:有哪些 01技术Leader管理⽬标:有哪些 02技术Leader管理视⻆:汇报线&业务线 •汇报线 解释:是指按组织汇报关系,聚合展示实线管理的所有同学的研发全链路数据的空间。 适⽤⼯作项:团队】⼈员情况、【业务】成本情况、【研发】研发基本功。 •业务线 解释:业务线是产研过程中的管理单元。业务线是在业务线主数据的节点(⼀级)上,做⼀定程度的细拆,创建不同的层级节点,满⾜产研场景的管理及使⽤需求。 适⽤⼯作项:【业务】业务⽬标、【业务】产品体验、【系统】可靠性&稳定性、【系统】性能、【研发】研发交付、【研发】研发基本功、【综合】成本 02技术Leader管理节奏:每个阶段怎么做 每绩效季初:•根据⼯作⽅向、导向,设计下个周期的⽬标、检测指标。 •分析成本收⽀情况,制定策略 每周/双周:监控•监控⽬标达成度; •Review指标的线上表现•分析未达成/异常的原因,形成改进措施,并进⾏分发;•上次改进措施闭环 每⽉/每季度末:复盘•总结各环节现状,客观呈现符合预期的、不符合预期的现状。 •分析所有异常点,并制定下个周期的改进措施。•检查上个周期改进措施达成情况。•优化下个周期⽬标&指标,根据⼯作⽅向、导向,设计下个周期的⽬标、检测指标。 每半年:复盘&决策•评估下级团队/⼈员研发产出&能⼒ •识别异常团队/⼈员,并客观数据印证•印证优秀&⾼潜团队/⼈员的研发数据,是否符合主观认知。•分析成本收⽀情况,制定/更新策略 03依托平台进⾏研发效能管理——设定⽬标 什么是⽬标?⽬标是业务负责⼈/PMO/TL在明确年度关键战役后,分解出的年度重点事项的⽬标。⽬标⼀般是可量化、可监控的,如“产品双周UV⼤于10万/责任事故数⼩于3个/平台完全可交互时间⼩于5秒” 03依托平台进⾏研发效能管理:设定管理单元 管理单元,是实现⽬标的最⼩作战单元。使⽤管理单元,将不同汇报线/业务线/⼈员的⼒量聚合到⼀处。在平台上构建管理单元,并为管理单元设定可量化的⽬标。管理单元之间存在上下级关系。业务负责⼈默认呈现顶层的管理单元,各级别负责⼈看到与⾃⼰相关的管理单元。 03依托平台进⾏研发效能管理——了解⽬标达成情况 构建完⽬标与管理单元后,可在平台上完成业务⽬标的监控、跟进;也可以按特定周期查看⽬标情况,进⾏复盘。 03依托平台进⾏研发效能管理:了解团队效能现状 管理者⼯作台根据技术TL的管理⼯作项,内置了对应的卡⽚。 进⼊管理者⼯作台,按照相应的管理视⻆(业务线/汇报线),或者按照既定的⽬标,查看对应管理⼯作项的卡⽚。 03依托平台进⾏研发效能管理:了解团队成员在绩效周期的排名 在绩效周期,如需了解下级团队或者下属在研发效能⽅⾯的排名。打开内置的《⼈员研发情况》报告,点击“宽表模式”,展开下级汇报线,对于关键指标触发排序,下级团队的排名⼀⽬了然。 03依托平台进⾏研发效能管理:⾃动检测异常 ⼯作台提供「团队异常检测」卡⽚,按如下异常规则进⾏检测并预警: •责任事故数过⾼:连续2个周期「责任事故数」上涨10%的⼈员。•需求负载过低:连续1个或3个周期「⼈员投⼊需求负载率」⼩于10%,意味着有效缺陷重开数/有效缺陷数⼤于10%;•缺陷修复质量过低:连续1个或3个周期「有效缺陷重开率」⼤于10%,意味着⼈员投⼊需求⼯作量/⼈员可投⼊需求⼈⼒⼩于10%;•投⼊Oncall负载过⾼:连续3个周期「⼈均解决OnCall数(WebOnCall)」⾼于5个/⼈天的⼈员。 03依托平台进⾏研发效能管理:洞察根因 在⼯作台,选择对应的管理视⻆,平台将展示影响指标变差的异常因素。如导致指标异常波动的⼈员,导致指标异常波动的Oncall ID;导致指标异常波动的流⽔线列表等。此外,还可以指定维度,利⽤平台算法⾃动分析这个维度对整体影响最Top的影响因⼦。 03依托平台进⾏研发效能管理:驱动改进 当指标异常时,⾃动或⼈⼯分析出根因后,可以记录异常原因,并创建任务,驱动相关⼈员改进。平台的改进任务,将⾃动同步到⻜书任务,并将创建者添加为关注者。创建完成之后,在⼯作台的「我的改进任务」卡⽚中,观测创建的改进任务的落实节奏。 03依托平台进⾏研发效能管理:观测效果 经过了⼀段时间的改进后,当改进任务被标注「已完成」,进⼊⼯作台查看指标是否已经好转、有变好趋势。 04案例1:技术团队初创期,关注团队⼈员基本功 ⼩A是⼀位新述职的技术TL:•团队规模15⼈。 •技术团队已组建1年有余。 •原技术TL转岗。 对应的管理⼯作项: 如何应对? 1、进⼊“汇报线”视⻆;2、查看团队⼈员的相关报告; 2.1了解过往团队成员对业务上的分⼯和贡献,佐证⾃⼰的观点—关键指标:责任事故数、合⼊有效代码⾏、有效缺陷重开率、MR有效评审率2.2明确后续⾏动。从技术基本功和⼈员的研发效能情况,明确技术⽅向Owner 04案例1:技术团队初创期,关注团队⼈员基本功 【团队】人员情况 04案例2:技术团队业务⾼速发展期,关注产品表现和研发交付 ⼩B是⼀位经验丰富的技术TL:•团队规模50⼈。 •⼩B带领团队已两年有余。•对接的业务正处于⾼速发展期,需求节奏紧张,产品需求优先级互相PK,频频出现需求倒排现象。•业务⾼速发展时期,对于技术TL来说,产品表现与研发交付都有明确的必达的⽬标。研发拆为3个⼩分队组成,⼩分队有各⾃拆解的项⽬⽬标。 04案例2:技术团队业务⾼速发展期,关注产品表现和研发交付 如何应对? 1、有明确的必达的⽬标,划分最⼩的管理单元(作战单元),使⽤(可量化的)⽬标进⾏管理。2、每双周进⾏⽬标的进度Review;进度如有⻛险,进⾏预警;⾃动洞察⻛险情况。3、每个⽉/季度进⾏复盘。明确后续改进⽅向和措施。 04案例2:技术团队业务⾼速发展期,关注产品表现和研发交付 如何应对?1、有明确的必达的⽬标,划分最⼩的管理单元(作战单元),使⽤(可量化的)⽬标进⾏管理。 2、每双周进⾏⽬标的进度Review;进度如有⻛险,进⾏预警;⾃动洞察⻛险情况。3、每个⽉/季度进⾏复盘。明确后续改进⽅向和措施。 04案例3:技术团队平稳发展,注重架构治理 ⼩C是⼀位经验丰富,注重架构治理的技术TL:•团队规模130⼈。 •对接的业务正处于平稳发展期。•产品线上事故有增⻓的势头。•从众多反馈中了解到技术债严重。 04案例3:技术团队平稳发展,注重架构治理 如何应对?• 度量架构现状。印证⼈员的主观反馈。•根据度量结果,洞察异常。•识别到具体问题,进⾏改进。 04案例3:技术团队平稳发展,注重架构治理 洞察过程: 改进措施: 1、历史债务较多,加上业务逻辑复杂,新的业务逻辑开发⼀直不断加代码,没有在适当的时间进⾏重构治理,导致函数越加越多。例如xx预览⽂件4339⾏,创建xx实例函数>700⾏,xx详情代码⼀个函数超过500⾏。 1、代码层:对冗余函数进⾏合理抽象,代码层需要进⾏重构,沉淀出公共能⼒。代码重复度⾼,旧仓库较多;有⼤量废弃的库。需要进⾏代码仓的重新梳理。 2、数据层:对于冗余索引,需要分析业务使⽤场景,提炼出真正需要索引查询的列。⽐如,⽤ID查询,⽽不是⽤名称建索引来查询。 2、某张表存储结构复杂。数据库xx有较多表,索引超过17个。 3、服务层:服务混乱,新旧服务混合在⼀起。 3、服务层:服务按⼀定规则重新梳理,划分边界。 04案例4:多种情况并存 多种情况并存:•技术TL新上任。 •业务⾼速发展,对交付速度⾼要求。•产品直接服务⽤户,对质量有⾼要求。•技术架构混乱•……. 如何应对?ALL in ONE:管理者⼯作台 技术Leader只需关注每部分的结果指标。—进度是否有⻛险 —当前是否有异常—造成异常的根因—驱动谁改进—改进效果 了解更多 2022年09⽉,DevMind理念、⽅法、实践业界正式发布《DevMind:构建效能提升的“导航仪”和“发动机”,实现从数据到价值的跃迁》 2022年12⽉,DevMind技术架构在业界正式发布《覆盖数万研发⼈员,字节跳动⾸次公开效能度量核⼼技术!》