当前位置: 首页 > news >正文

公司对不同职级能力抽象要求的具体化

要先把当前级别要求的能力提升到精通,然后尝试做下一级别的事情。

但可能不确定高一级的能力要求究竟怎样,不同Title,如“工程师”“高级工程师”和“资深工程师”等。但这样 Title 对我们理解不同级别的能力要求,完全无用。“高级工程师”到底“高级”在哪?

1 公司统一的能力描述:抽象

为指导员工晋升,公司会对各级能力要求给出描述。但因细分的领域太多,公司只能进行抽象描述。如:

  • P7要求,“具备系统思考能力,能全面掌握某技术领域”
  • P8要求,“具备前瞻判断的能力,能够规划技术领域的发展方向”

从实际效果看,这样的描述无效,还是不懂在说啥。我们经常困惑:

  • 什么是系统思考能力?P7才要求系统思考,可我P6时参与项目开发,就要考虑需求合理性、索引设计高性能、接口兼容性和易用性、上线的灰度方案这么多事情,这些难道不是系统思考?
  • 什么是前瞻判断能力?P6要预测需求变化,P7要规划团队技术发展,这些也是前瞻判断呀,为何P8强调前瞻判断?

晋升疑惑千千万,能力要求占一半。

2 领域定制的能力解读:比较具体

因为公司的抽象描述很难指导实际工作,有些领域会独立定制自己的职级能力解读,一般由P8或P9级以工作组的方式讨论得出。

如“Java业务开发”领域,P6、P7能力解读参考:

跟公司的描述相比,具体很多。按此思路,完整把各级要求能力列出,不但可作为晋升标准,也可作为学习参考。

这种做法对员工有利,标准越明确,越容易“照本宣科”去做。但公司角度,这成本太高(有几十上百个专业领域要制定详细标准,每年都要更新)、限制创新(大家就只管对照公司标准来做事,其它一概不管)等问题,所以没有公司这么做。

3 COMD能力模型

为彻底解决要求不明确,更好理解不同职级能力差异,整理一套兼容性强、易理解的能力模型:面向复杂度的多维度能力模型(Complexity-Oriented & Multi-Dimension Capability Model),COMD能力模型

核心指导思想是,通过事情的复杂度来判断能力的高低,级别越高,所做的事复杂度越高。

只是单纯用复杂度判断能力高低,那它本质和其他方法没啥不同,看不懂的地方还是看不懂,不同的人理解还是不同。所以,为清晰描述不同能力层级的差异,COMD能力模型还进一步明确复杂度,包括规模复杂度、时间复杂度、环境复杂度和创新复杂度。

3.1 规模复杂度

规模越大,节点越多,节点间的关系越复杂,而且节点间的关系复杂度是指数增长的。

就可对一些常见工作维度的规模复杂度进行比较:

以上对比前提是,除了规模,其他条件差不多。200行代码和2000行代码对比,前提是代码复杂度差不多。因为200行核心代码的复杂度,显然比2000行拷贝粘贴的代码高。

3.2 时间复杂度

时间跨度越长,复杂度越高。原因在于万事万物都处于不断发展变化当中,时间跨度越长,变化的因素和可能方向越多,越难判断准确。

三大维度的时间复杂度的对比:

3.3 环境复杂度

和环境不确定性有关的复杂度。

我们很多的判断、决策和行为都依赖于对环境的认知和反应。总的来说,环境不确定性越高,复杂度越高。

环境的不确定性具体分为环境的稳定性、环境的透明性和环境的可预见性3个方面:

  • 环境的稳定性,指环境变化的速度快慢。
  • 环境的透明性,指是否能够明确地获取环境相关的信息。
  • 环境的可预见性,指是否会发生完全无法预料的黑天鹅事件。

环境的稳定性、透明性和可预见性越低,它的不确定性就越高,复杂度也越高。

宏观分析技术、管理和业务三个维度所面临的环境不确定性:

对互联网行业业务,环境稳定性、透明性和可预见性都较低,所以环境复杂度最高。这也是在互联网大厂,大部分P9/P10都需要把很多时间和精力投入到业务上的主要原因。

3.4 创新复杂度

常见创新包括理论创新、思想(或方法)创新和技巧创新。

理论创新复杂度>思想创新复杂度>技巧创新复杂度。

高可用技术领域

  • FLP原理、CAP定理是理论创新。它们奠定分布式高可用设计的基础和边界,无论是缓存系统、存储系统、批处理系统、流式处理系统还是采用微服务架构的业务系统等,都不能跳出这两个理论的约束和限制
  • 批处理和流处理属于思想创新。对于大数据技术来说,一开始Google提出的批处理思路开启了大数据时代,而后来Storm开启了流处理这个新的技术领域
  • 实现Exactly Once特性属于技巧创新。开源框架Flink使用Chandy-Lamport 算法,实现了流处理Exactly Once的特性,能够实现消息精确投递,避免重复消息导致业务出错

创新复杂度越高,影响的范围往往也越大。理论创新会奠定整个行业的基础,而思想创新可能开辟一个新技术领域。

创新并不意味着一定要全球首创,只要相比团队当前现状来说有改进就行了;创新也不局限于技术领域,管理和业务一样可以创新。所以,下面这些事情都可以算是创新:

  1. 开发Memcache
  2. 有Memcache后,开发Redis
  3. 引入设计模式,优化代码
  4. 使用微服务拆分系统
  5. 优化项目流程
  6. 提出新业务模式

各领域的部分典型创新案例:

除了刚才说的这4种通用的复杂度之外,在每个领域内部,也会有一些工作的复杂度本身就要比另一些工作高。

比方说在软件开发领域,我们一般认为各项工作的复杂度排序是这样的:

从0到1创造系统>架构重构>项目方案设计>编码实现从0到1创造系统 > 架构重构 > 项目方案设计 > 编码实现01创造系统>架构重构>项目方案设计>编码实现

不过这些认知是领域经验总结形成的共识,并不能通用。所以在使用COMD模型的时候,你还是需要结合领域经验综合判断。

4 COMD与抽象描述的对比

公司写的那些抽象描述跟COMD能力模型的具体拆解比起来,只是脱离实际的文字游戏。

4.1 系统思考

某大厂,“系统思考”的确写在P7级能力描述,但它不是P7才有的能力特征。P6以上都要求“系统思考”,只是思考范围不同,即规模复杂度不同。

以B2C电商业务开发为例,在某些大厂,不同级别“系统思考”范围:

  • P6,系统思考范围是某个需求,考虑需求合理性、设计可扩展性和上线后的稳定性
  • P7,范围是单个系统,考虑单个系统的架构设计、架构重构和技术选型
  • P8,范围是某领域,考虑领域的发展趋势、架构演进、团队组织结构
  • P9,系统思考的范围是多个关联的业务域组成的业务线,考虑业务发展趋势、架构演进、团队组织结构

4.2 前瞻判断

某些大厂,“前瞻判断”虽写在P8描述,但P6以上都有前瞻性要求,只是前瞻范围、时间跨度和面临的环境不同,分别对应规模复杂度、时间复杂度和环境复杂度。

B2C电商为例,某些大厂P6~P9前瞻性要求:

若你还苦逼钻研“为何P7才提出系统思考”、“P8要求的前瞻判断有啥深意”,就会掉入文字陷阱,白费脑细胞。从坑里走出,要灵活应用COMD能力模型。

5 应用COMD

当你想要了解某个级别的能力要求,不要再对那些抽象和模糊的词语,不着边际猜测和想象。

静下心,坐下来填“能力矩阵”表格,把每项要求完整且具体列出。如下摘录P6部分要求,可参考:

若表格有些内容填不出来,说明你对这级别理解不到位。

在这基础上,可请教你的主管、HR和同事等人,完善、细化表格。详细填完表格,就对级别很清楚了,后续针对性提升能力。

6 总结

  1. 公司会对各个级别的能力要求给出一个抽象的描述,比如“系统思考”和“前瞻判断”等,但实际指导意义不大。
  2. 有些领域可能会独立定制相关技术方向的能力解读。虽然这种解读比公司的抽象描述稍微具体一些,但因为投入成本太大和限制创新等原因,很难大范围推广。
  3. 我总结的COMD能力模型,把能力分成技术、管理和业务三个维度,并通过规模、时间、环境和创新四个复杂度来判断能力的高低。
  4. 如果你想了解某个级别的能力要求,为晋升做准备,可以把这个级别的能力模型表格列出来,然后针对表格内容做针对性的提升。

FAQ

“为什么说P6是独当一面,难道P7、P8和P9没有独当一面的要求吗?”

独当一面的“面积”不一样,P6的面积是15寸笔记本屏幕大小,P7的面积是32寸液晶显示器大小,P8的面积是65寸高清显示器大小,P9的面积是公司门口的大号液晶显示屏。

单维度内:把基本的事情做对,把难的事情做对
多维度内:把基本的事情做对,把难的事情做对
多维度间:把基本的事情做顺,把难的事情做顺
新维度时:把基本的事情理清,把难的事情理清

为清晰地描述不同能力层级的差异,COMD 能力模型还进一步地明确了复杂度,具体包括规模复杂度、时间复杂度、环境复杂度和创新复杂度 4 种类型。怎么想到按这几个维度来拆分的。很多时候对一件事情的理解无法深入就是不知道该怎么继续往下拆分,老师的能力模型一下子把模糊的评级能力要求拆解的特别清晰。特别想提升这方面的能力,可通过哪些方式锻炼?

如何衡量和考察技术人员的能力,对于一个复杂模糊问题,一下子看不到答案,可尝试拆分,按逻辑维度、流程维度、分类维度,COMD模型的3个维度其实就是分类拆分的,4个复杂度就是按逻辑来拆分。

如何提升这种能力,可能跟我看书多有关,例如人文社科心理学经济学管理学等,看多会潜移默化,无意学习一些方法。

中途转的JAVA,目前作为一个小组长,技术不行,管理上也在摸索,这种情况下,是偏向技术还是偏向管理比较好?P9以前都是专业为核心,管理是附加分。

直面自己和直属领导的差距!除了直面,更要学习别人的长处和厉害的地方。

相关文章:

公司对不同职级能力抽象要求的具体化

要先把当前级别要求的能力提升到精通,然后尝试做下一级别的事情。 但可能不确定高一级的能力要求究竟怎样,不同Title,如“工程师”“高级工程师”和“资深工程师”等。但这样 Title 对我们理解不同级别的能力要求,完全无用。“高…...

Java之MinIO存储桶和对象API使用

环境搭建 创建一个 maven项目&#xff0c;引入依赖&#xff1a; <!-- minio依赖--><dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.3.3</version></dependency><!-- 官方 minio…...

如何用java实现同时进行多个请求,可以将它们并行执行,从而减少总共的请求时间。

1.使用线程池 通过使用Java提供的线程池&#xff0c;可以将多个请求分配到不同的线程中并行执行。可以通过创建固定数量的线程池&#xff0c;然后将请求分配给线程池来实现。线程池会自动管理线程的数量和复用&#xff0c;从而减少了线程创建和销毁的开销&#xff0c;提高了程序…...

高端装备的AC主轴头结构

加工机器人的AC主轴头和位置相关动力学特性1. 位置依赖动态特性及其复杂性2. AC主轴头2.1 常见主轴头摆角结构2.2 摆动机构3. 加装AC主轴头的作用和局限性4. 切削机器人的减速器类型5. 其他并联结构形式参考文献资料1. 位置依赖动态特性及其复杂性 However, FRF measurements …...

【Proteus仿真】【51单片机】粮仓温湿度控制系统设计

文章目录一、功能简介二、软件设计三、实验现象联系作者一、功能简介 本项目使用Proteus8仿真51单片机控制器&#xff0c;使用声光报警模块、LCD1602显示模块、DHT11温湿度模块、继电器模块、加热加湿除湿风扇等。 主要功能&#xff1a; 系统运行后&#xff0c;LCD1602显示传…...

【LINUX】环境变量以及main函数的参数

文章目录前言环境变量常见环境变量&#xff1a;设置环境变量&#xff1a;和环境变量相关的命令&#xff1a;环境变量的组织方式&#xff1a;获取环境变量环境变量可以被子进程继承环境变量总结main函数的参数前言 大家好久不见&#xff0c;今天分享的内容是环境变量和main函数…...

使用Pyparsing为嵌入式开发定义自己的脚本语言

Python在嵌入式开发中也很流行生成实用脚本。Pyparsing还允许你轻松地定义在Python上下文中运行的定制脚本语言。Python实现的系统旨在能够独立执行用户传递的一系列命令。你希望系统以脚本的形式接收命令。用户应该能够定义条件。这种对通信中逻辑元素的最初简单的声音要求&am…...

C win32基础学习(二)

上一篇我们已经介绍了关于窗口程序的一些基本知识。从本篇开始我们将正式进入C win32的学习中去。 正文 窗口创建过程 定义WinMain函数 定义窗口处理函数(自定义&#xff0c;处理消息) 注册窗口类&#xff08;向操作系统写入一些数据&#xff09; 创建窗口&#xff08;内存…...

理论五:控制反转、依赖反转、依赖注入,这三者有何区别和联系?

关于SOLID原则,我们已经学过单一职责、开闭、里式替换、接口隔离这四个原则。今天,我们再来学习最后一个原则:依赖反转原则。在前面几节课中,我们讲到,单一职责原则和开闭原则的原理比较简单,但是,想要在实践中用好却比较难。而今天我们要讲到的依赖反转原则正好相反。这个原则…...

读书笔记//《数据分析之道》

出版时间&#xff1a;2022年 作者曾在互联网大厂做数据分析。从举例可以洞见作者的工作经历。 点评&#xff1a;作者在数据分析领域非常资深&#xff0c;尝试在书中提供一个数据分析工作框架参考。书本内容有点感觉是ppt的集合&#xff0c;辅以案例说明。不过&#xff0c;干货还…...

1个串口用1根线实现多机半双工通信+开机控制电路

功能需求&#xff1a; 主机使用一个串口&#xff0c;与两个从机进行双向通信&#xff0c;主机向从机发送数据&#xff0c;从机能够返回数据&#xff0c;由于结构限制&#xff0c;主机与从机之间只有3根线&#xff08;电源、地、数据线&#xff09;&#xff0c;并且从机上没有设…...

KUKA机器人外部自动运行模式的相关信号配置

KUKA机器人外部自动运行模式的相关信号配置 通过例如PLC这样的控制器来进行外部自动运行控制时,运行接口向机器人控制系统发出机器人进程的相关信号(例如运行许可、故障确认、程序启动等),机器人向上级控制系统发送有关运行状态和故障状态的信息。 必需的配置:  配置CEL…...

【RabbitMQ笔记02】消息队列RabbitMQ七种模式之最简单的模式

这篇文章&#xff0c;主要介绍RabbitMQ消息队列中七种模式里面最简单的使用模式。 目录 一、消息队列的使用 1.1、消息队列七种模式 1.2、最简单的模式使用 &#xff08;1&#xff09;引入依赖 &#xff08;2&#xff09;编写生产者 &#xff08;3&#xff09;编写消费者…...

Spring MVC 源码- RequestToViewNameTranslator 组件

RequestToViewNameTranslator 组件RequestToViewNameTranslator 组件&#xff0c;视图名称转换器&#xff0c;用于解析出请求的默认视图名。就是说当 ModelAndView 对象不为 null&#xff0c;但是它的 View 对象为 null&#xff0c;则需要通过 RequestToViewNameTranslator 组件…...

Linux--TCP编程--0216 17

观前提示&#xff1a;本篇博文的一些接口需要前几篇博文实现的 线程池的实现Liunx--线程池的实现--0208 09_Gosolo&#xff01;的博客-CSDN博客 线程池的单例模式Linux--线程安全的单例模式--自旋锁--0211_Gosolo&#xff01;的博客-CSDN博客 1.TCP编程需要用的接口 创建 sock…...

关于设计模式的记录

############### 先弄清楚类模型的关系 ############### 万物的抽象关系 ############### 1.组合 composition实菱形 实线 无填充箭头整体与部分的关系同生共死代码体现&#xff1a;成员变量如&#xff1a;生命体与器官&#xff0c;http请求&#xff08;请求行&#xff0c;请求…...

Lambda-常见的函数式接口

如果需要使用Lambda接口&#xff0c;就必须要有一个函数式接口 函数式接口是有且仅有一个抽象方法的接口, 对应的注解是FunctionalInterface Java中内置的常见函数式接口如下: 1.Runnable/ Callable /*** The <code>Runnable</code> interface should be implem…...

P1196 [NOI2002] 银河英雄传说 带权并查集

[NOI2002] 银河英雄传说 题目背景 公元 580158015801 年&#xff0c;地球居民迁至金牛座 α\alphaα 第二行星&#xff0c;在那里发表银河联邦创立宣言&#xff0c;同年改元为宇宙历元年&#xff0c;并开始向银河系深处拓展。 宇宙历 799799799 年&#xff0c;银河系的两大军…...

【项目实战】快来入门Groovy的基础语法吧

一、Groovy是什么? 1.1 与Java语言的关系 下一代的Java 语言,增强Java平台的唯一的脚本语言跟java一样,它也运行在 JVM 中。支持Java平台,无缝的集成了Java 的类和库;Groovy是一种运行在JVM上的动态语言,跑在JVM中的另一种语言编译后的.groovy也是以class的形式出现的。1…...

Mybatis中的动态SQL

Mybatis中的动态SQL 当存在多条件查询的SQL时&#xff0c;当用户某个条件的属性没有写时&#xff0c;就会存在问题&#xff0c;在test中则不能很好的运行 所以Mybatis提出了动态SQL。 即判断用户是否输入了某个属性 动态SQL中的一些问题 方法一 这个里的and是为了确保if条…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

React19源码系列之 事件插件系统

事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...

智能职业发展系统:AI驱动的职业规划平台技术解析

智能职业发展系统&#xff1a;AI驱动的职业规划平台技术解析 引言&#xff1a;数字时代的职业革命 在当今瞬息万变的就业市场中&#xff0c;传统的职业规划方法已无法满足个人和企业的需求。据统计&#xff0c;全球每年有超过2亿人面临职业转型困境&#xff0c;而企业也因此遭…...

对象回调初步研究

_OBJECT_TYPE结构分析 在介绍什么是对象回调前&#xff0c;首先要熟悉下结构 以我们上篇线程回调介绍过的导出的PsProcessType 结构为例&#xff0c;用_OBJECT_TYPE这个结构来解析它&#xff0c;0x80处就是今天要介绍的回调链表&#xff0c;但是先不着急&#xff0c;先把目光…...

如何把工业通信协议转换成http websocket

1.现状 工业通信协议多数工作在边缘设备上&#xff0c;比如&#xff1a;PLC、IOT盒子等。上层业务系统需要根据不同的工业协议做对应开发&#xff0c;当设备上用的是modbus从站时&#xff0c;采集设备数据需要开发modbus主站&#xff1b;当设备上用的是西门子PN协议时&#xf…...

EasyRTC音视频实时通话功能在WebRTC与智能硬件整合中的应用与优势

一、WebRTC与智能硬件整合趋势​ 随着物联网和实时通信需求的爆发式增长&#xff0c;WebRTC作为开源实时通信技术&#xff0c;为浏览器与移动应用提供免插件的音视频通信能力&#xff0c;在智能硬件领域的融合应用已成必然趋势。智能硬件不再局限于单一功能&#xff0c;对实时…...

EEG-fNIRS联合成像在跨频率耦合研究中的创新应用

摘要 神经影像技术对医学科学产生了深远的影响&#xff0c;推动了许多神经系统疾病研究的进展并改善了其诊断方法。在此背景下&#xff0c;基于神经血管耦合现象的多模态神经影像方法&#xff0c;通过融合各自优势来提供有关大脑皮层神经活动的互补信息。在这里&#xff0c;本研…...

OPENCV图形计算面积、弧长API讲解(1)

一.OPENCV图形面积、弧长计算的API介绍 之前我们已经把图形轮廓的检测、画框等功能讲解了一遍。那今天我们主要结合轮廓检测的API去计算图形的面积&#xff0c;这些面积可以是矩形、圆形等等。图形面积计算和弧长计算常用于车辆识别、桥梁识别等重要功能&#xff0c;常用的API…...