http://www.sohu.com/a/248889691_629652

为什么需要技术KPI?

在业务技术团队,有一个不好的趋势就是团队越来越业务,越来越没有技术味道。每个人都在谈业务,技术大会上在谈业务,周会上在聊业务,周报里写的是业务项目......

唯独少被谈及的是技术本身。此处并不是说业务不重要,而是说理解业务和把控业务需求是技术人员的base,而不是全部。

将就的代价

这种技术味道的缺失对技术团队来说是非常可惜的,也不利于技术人员的成长和发展。因为很难想象一个没有技术追求的团队能开发出一个健壮的、可维护性好、可扩展性好的系统。相反,这种业务代码的堆砌,从短期看也许是“较快”实现了业务需求,但是从长远来看,这种烂系统的增加会极大的阻碍业务的发展,形成一个个的黑洞应用,而工程师被裹挟在业务需求和烂系统之间,疲于应对,心力交瘁。

这种将就将导致系统腐化,技术债越垒越高,像肿瘤一样消耗你所有的能量。

我不是药神,只能尝试开出一方——那就是在不影响业务的情况下(特别是相对稳定的业务,请拒绝业务方的时间倒排),Tech Story应该和User Story有同等的重要性,要把重构优化提到和业务需求相等的优先级去处理。我们不仅要对业务需求负责,我们更要对应用的质量,系统的可维护性负责。

因为我们技术人员是应用的父母(有些是亲生父母,有些是养父母),你不照顾它们,不治理它们,它们就会生病,你忍心看到这样的局面吗?

技术管理者者(TL)的失职

造成这种局面,我们的技术管理者,我们的TL要负有主要责任。如果一个TL从来不关注系统架构和设计,从来不写code,对技术没有热情也不学习,甚至其本身技术就很烂,那么在这个TL领导下的技术团队,又怎么会有技术味道,团队成员又怎么能进步和成长?

现在很多的TL每天都混迹在各种会议上,很忙,做着各种沟通协调的事情,可是我们真的需要这么多的会议、这么多的沟通吗?

如果沟通的结果只是做业务和PD对团队的传话筒,没有业务创新,没有用技术和数据系统化的解决业务问题,没有在技术方向和架构上给团队指引,没能切实的帮助系统优化、团队提效,请问这样的沟通给业务带来了什么价值,给团队带来了什么价值?还是沉下心来,多看看书,哪怕非技术的书也好。多写写代码,哪怕跟业务无关的代码也好。

所以,我们要回归技术本身。我们不需要这么多“高高在上”、“指点江山”的技术Manager,而是需要能真正深入到系统里面,深入到代码细节,给团队带来实实在在改变的技术Leader。

技术KPI的量化

提升技术氛围,打造工程师文化不能仅停留在口头上,可搭配一定的强制手段,比如和技术人员的利益绑定。这种绑定就需要我们能对技术贡献进行一个相对公平的分解和量化。

技术KPI

基于此,我将技术人员的KPI分解为业务贡献、技术贡献和团队贡献三个大的部分,其详细内容如下。

  • 业务贡献:包括需求把控,业务项目和业务创新。
  • 技术贡献:包括设计重构、技术影响力、Code Review、创新提效和代码质量。
  • 团队贡献:包括招聘、新人培养和团队氛围。

那么技术贡献中的这几个维度要怎么理解呢,解释的话我就不多说了,用我们工作中的一些案例来描述一下吧。

应用质量:

  1. 你负责或者共同负责的应用质量分(可以从代码重复率,圈复杂度,分层合理性等维度考察)。
  2. 你做了哪些提升应用质量分的工作。

设计重构:

  1. 我在客户通项目中,对CRM销售域进行了领域建模和设计,并且抽象合理。
  2. 我发现Infrastructure中package分类不合理,进行了重新设计并重构完成。
  3. 我发现现在系统中错误码比较混乱,我梳理制定了新的错误码规范,并完成了代码重构。

技术影响力:

  1. 在团队内分享10篇干货,点赞数1000。
  2. 团队分享策略模式,得到同学好评 。
  3. 我接受邀请,在行业会议上分享了SOFA架构。

Code Review:

  1. 我在review某某代码的时候发现,可能存在线程不安全的隐患。
  2. 我在review某某代码的时候发现,存在设计不合理的现象,此处使用责任链可以很优雅的解决问题,并具备一定的扩展性。

创新提效:

  1. 我发现本地测试启动PandoraBoot比较浪费时间,所以写了一个TestContainer大大提升了自测效率。
  2. 我发现有一些boilerplate代码不需要写,所以对乐观锁、分页进行了annotation支持,简化了代码。
  3. 在某个项目或者技术点上面,我产出了一篇专利:基于领域模型的业务配置化。

代码质量:

  1. 提测后的Bug数,线上故障数(系统可以提取,不用自己填写)
  2. 我完善了某某模块的单元测试,并多次在自动化回归中发现问题。

KPI答疑

对于上面的KPI大部分的技术同学是表示认可的,当然质疑的声音也很多,我这里挑一些典型的回答一下。

Q:技术KPI的提出,会不会导致技术同学只关注技术不做业务项目了?

A:关于绩效,肯定是综合看业务贡献,技术贡献和团队贡献。但是作为一个重要参考和风向标,技术KPI是有积极意义的。

Q: 你这个设计重构怎么量化?

A: 这个很难用系统标准化,更多的还是要依赖TL的专业能力进行评分,但即使是这样,也比以前什么都没有完全黑盒要强。至少在传达一个信息,我们鼓励好的设计,鼓励不断地重构优化。

Q:我们现在的业务需求已经在堆积,一线同学根本没有时间去做重构优化。

A:这个问题开篇其实已经说过了,你是要不断地裹挟在业务需求和烂代码里面呢,还是花时间improve,然后更快地支持业务。这个权衡应该不难做,关键是要看决心和能力。对于很多业务,我没有看到推迟几天上线就会影响业务格局的业务场景,所以作为技术团队,我们就应该在User Story之外,加上我们的Technical Story,把完成业务需求和系统重构都当成我们的核心任务。

关于技术童鞋的量化考核,你有哪些好的建议或想法,也可以在留言区交流,一起探讨

转载于:https://www.cnblogs.com/davidwang456/articles/9598981.html

如何量化考核技术人的 KPI?相关推荐

  1. 阿里工程师修养之:如何量化考核技术人的 KPI ?

    量化考核技术人的 KPI 前言 为什么需要技术 KPI ? 将就的代价 技术管理者者(TL)的失职 技术 KPI 的量化 技术 KPI KPI答疑 前言 对技术人来说,技术是成长的"核心&q ...

  2. 如何量化考核技术人的KPI?

    对技术人来说,技术是成长的"核心".然而,在实际工作协作中,技术的重要性常常被业务所掩盖,造成先业务后技术的现象. 针对这个痛点,阿里高级技术专家张建飞提出了自己的解决思路,希望能 ...

  3. 【科创人独家】知道创宇杨冀龙:技术人的商业思维都是锤出来的,真实需求长在客户的KPI上

    采访开始之前,杨冀龙非常老江湖地整了一套口头版<用户协议>:话有多少.言有轻重,成稿的时候请留意,<科创人>果断点勾确认. 2007~2019,深耕网络安全行业12年,没有不可 ...

  4. 计算机专业技术考核表,专业技术人员量化考核计分表(3类).doc

    专业技术人员量化考核计分表(3类) 高 级 工 程 师 任 职 资 格 考 核 计 分 表 工作单位姓 名出生年月日毕业学校专业毕业时间参加工作时间已获职称评定时间现申报职称考核项目 简 要 说 明分 ...

  5. 35岁技术人如何转型做管理?阿里高级算法专家公开10大思考

    简介: 35岁左右对工程师而言是个不同寻常的年龄段.技术人有可能面临人生中的转型:从纯技术岗转向管理岗.也将面临诸多新的挑战,关于组建团队.领导以及KPI设置等.本文将讲述阿里资深技术leader张荣 ...

  6. IT部门的绩效考核:OKR和KPI该如何选?

    官方网站 www.itilzj.com 资料文档: wenku.itilzj.com  我们在落地ITIL建立IT管理相关流程的过程中,每个流程.每项业务都涉及到KPI的设计.近些年随着OKR的或者有 ...

  7. 2021阿里技术人的成长路径!

    为什么要成长 成长是为了在职场升值,提升职场竞争力! 衡量标准:你成长的速度要匹配甚至超越业务发展的速度. 当你成长速度超越业务发展速度的时候,组织才会把更重要的职责交给你,如果你成长的速度跟不上业务 ...

  8. 阿里技术人的成长路径是什么?

    作者 | 儒枭 来源 | 阿里巴巴中间件(ID:Aliware_2018) 为什么要成长 成长是为了在职场升值,提升职场竞争力! 衡量标准:你成长的速度要匹配甚至超越业务发展的速度. 当你成长速度超越 ...

  9. 从求生存到修体系,我在阿里找到了技术人的成长模式

    作者 | 悟寻 阿里巴巴前端技术专家 导读:成长即意味着改变,而改变本身是一件很痛苦的事情.改变会有连锁反应,一次改变之后,你的心态和认知可能会和以前大有不同.平凡的人总是相似,不凡的人各有各的不凡, ...

最新文章

  1. 计算机的桌面图标类型,给“我的电脑”翻身 另类桌面图标排列
  2. jQuery中增加新元素后没法响应原有的事件
  3. 风云编程python-二十年编程语言风云,哪款是你的爱豆?
  4. 修改文件的所属用户和所属用户组
  5. 微信小程序-01-项目组成文件介绍(入门篇)
  6. 需求评审五个维度框架分析及其带来的启示-5-结束语
  7. 31天重构学习笔记3. 提升方法
  8. 【小米笔试题】二分查找算法的变形
  9. mysql windows 安装 错误
  10. 网易云api及 asrsea 加密参数文档
  11. linux 编译环境包,linux上war包编译环境搭建
  12. 铁芯用matlab怎么仿真,Simulink的BLDC建模与仿真
  13. 剑指 Offer——和为 S 的两个数字
  14. jupyter notebook和python有什么区别_Python神器 Jupyter Notebook
  15. Matlab里c2d命令,matlab中c2d如何将连续函数离散化
  16. 程序员高效率办公软件(推荐)。
  17. 微信 html5 动图格式,微信真人动态表情包 怎么给自己录制GIF动态图片 你也可以录制搞笑微信gif图片;...
  18. c语言里面temp是什么文件夹,Temp文件夹是什么?Windows下Temp文件夹可以删除吗?...
  19. 我二刷以上的网文小说,本本经典,值得推荐
  20. 杯具的无线鼠标安装记

热门文章

  1. 切削为什么没有切屑_机械加工切削“断屑”的经验分享,老师傅来看看!
  2. Android实训日志:基于外部存储的音乐播放器V05
  3. java 隐藏标题栏_两种方法一句代码隐藏Activity的标题栏
  4. 全志uboot修改_全志SDK编译问题解决二:build uboot only
  5. boot数据加解密 spring_springboot项目使用druid对数据库密码的加解密
  6. 白大脑比超级计算机还,和超级计算机相比,人类的大脑很弱吗
  7. java中的me关键字_java中的volatile关键字
  8. python批量清除一个列表中的某个内容,filter和lambda结合使用的方法
  9. 存储组件的实现思路分析及代码实现
  10. mybatis insert 返回主键_面试准备季——MyBatis 面试专题(含答案)