趋势与判断
先看近10多年2个趋势:
1)云计算与中间件发展飞速、软件从业人员增加、大厂输出等原因,技术稀缺性在降低(其中数据智能与BI的影响权重上升),未来会更关注研发效率与快速响应;具体表现为:a、关键核心项目尽快落地,给业务的比拼赢得时间;从长一点周期来看:减少研发成本,为公司治理赢得优势。
2)消费互联网飞快发展但增长也显著变缓,每个人的职业上升空间会减少;《浪潮之巅》作者吴军博士观察分析过欧美日等发达国家成熟时期软件行业的情况,大部分人的职业生涯2次晋升机会,需要更关注于能力提升和价值贡献来面对未来的不确定性;
在此背景下,相信很多人会思考QA这个职位的核心价值、前景与发展(其实前端、服务端、ued等也在思考各自的),也有担忧,to be or not to be,it's a question;笔者认为:QA基于岗位的底层约束和结构性优势,未来在电商研发体系中会有独一无二不可替代性的价值存在,其职业天花板是绝大多数从业者终身不用考虑的问题,本文提到5级工程师,每一级都值有很大的拓宽空间,两级之间也会有质的差异,大多数人可能只能停留到4-5级; 尤其在互联网电商域,因为涉及大量资金的交易流动,影响社会的供给和生产,对于稳定性、准确性要求极高,同时大型项目 对各子域的关联关系和全链路知识要求极高;相对社交等领域QA更有可为空间;
QA职位的底层约束与优势
从一个典型的技术部门的组织架构看起(以200-500人规模为例),一般开发和测试的团队比例在1:6--1:10之间;
- 信息广度(业务和技术架构)是做事和决策的核心因素,从图中可以看出QA的信息是与同级别开发的上层主管是一致的(结构性优势),比如QA总监可能是唯一一个跟CTO一样具备全局视角的角色,QA部门内部的TL与核心成员也会固定分享各业务领域的核心进展,同理:往下的每一层QA同学都具备同类的优势与视野;如果再具备一定业务知识和商业能力,很多时候可以给到业务最高ROI的解决方案;
- QA无需花时间去开发模块级别代码,但是有充分时间和机会去研究各维度的自动化方案、压测方案、灰度方案、可测性治理等,一样属于技术范畴且往往是大型项目中亟需的能力;
5级软件工程师
《浪潮之巅》作者吴军博士按照苏联著名物理学家朗道对工程师有5个等级划分(类似专业人士的评价体系),每个级别之间的能力相差巨大,几倍甚至是数量级;具体如下
- 第5级(最入门级别):能独立解决问题,完成工程工作;一个计算机毕业生,经过一定时间的训练,面对一个被分配的任务,知道用正确方法、找正确的人协同解决 ,就算合格的工程师;
- 第4级:需要带领他人完成任务、能把复杂问题拆分、并具备高roi解决方案的能力;并非只写代码,而是有背后的问题识别与思考;
案例:在建造一座海湾大桥时,工程师会在现有资金的条件下,根据交通的需求设计一个200年使用寿命的大桥,但是为了让军队迅速通过一条河,他们追求的目标就变成了在最短时间内建造足够让军队安全渡河的浮桥。目标不同,工程师的解决方案就不同,这件事对于土木工程师和桥梁工程师来讲,常常不是问题。但是很多搞IT的人,常常会把海湾大桥修成浮桥,也会把浮桥按照海湾大桥来慢慢修
- 第三级:能带领他人做出一个为公司挣得利益的产品,除了上述能力以外还需要对市场的判断和营销能力,该级别工程师本身就是比较好的产品经理;
- 第二级:做出先前没有的东西,世界因为他们不一样;比如北极光创投的创始人邓锋,在他(和谢青、柯岩)之前,世界上没有真正意义上的网络防火墙设备;google云计算的发明人杰夫迪恩;
- 第一级:开创一个产业,包括爱迪生、福特、贝尔等人;
PS:后来还增加了第6级,即针对刚毕业一两年的职场新人,能在指导下完成预定任务;
从上述分级同时结合 奇点同学荟上高年级技术同学分享:技术基础素养很重要,但是基于ROI的判断力和产品商业思维依然是工程师发展之路中不可或缺的能力点;
5级QA工程师
根据笔者观察:阿里绝大多数工程师可能停留在第4级,按照该划分维度对于阿里这样级别的公司区分度也不够明显,加上QA人数在工程师中又只是一小部分,所以笔者尝试提出针对QA工程师的5级分类,同理:级别之间能力差异明显,每个级别都有非常大的宽度;
PS:该分级更多来自于贡献度的高度和广度,对照的阿里层级仅做参考。
- 第5级:大部分毕业生经过2-3年的训练,能完成大部分项目的测试工作;
- 测试工具与手段:掌握功能、自动化、性能、安全等测试手段;
- PMO:基本的项目管理流程、PRD质量问题识别;
- 项目复杂度:能独立cover大多数项目
- 第4级:带领他人完成领域核心挑战;
- 问题识别(如可测性)与难点解决:能识别域内的核心风险和效率的核心约束并有效解决;
- 业务质量:在需求合理性识别方面,能通过业务、技术和数据分析,sayno 或提出更高roi的解决方案;
- PMO:领域核心项目节奏把控、体现测试贡献度;
- 测试工具与手段:某项测试领域有专长;把控高复杂度项目的能力;
需要电商多领域的经验,才有可能到达下一级;
- 第3级:BU测试架构师或做出成功的测试产品(1-N);
- 领域知识:全链路视角,起码有多个领域的业务与架构知识,知晓其可测性难点与解决方案,才能具备快速业务与架构的学习熟悉能力;
- 测试工具与手段:熟悉现有的测试工具和能力边界,能快速有效组合快速解决问题;
- 关键问题识别与解决、技术机会挖掘:bu级项目核心特点是由时效性,所以a和b的能力是其基础,而c的能力又是测试贡献度体现的重要表现;
- 业务质量与贡献:针对bu级项目能通过业务、技术和数据分析,可以sayno 或提出更高roi的解决方案;
- PMO:管控项目节奏来达到管控整体质量;测试贡献度体现;
- xx在文章中提到的2个项目;
- xx在多个大型横向项目的贡献度体现;
- 测试产品维度:某个域内解决方案做成通用性的产品并获得成功,但是并不是所在领域问题的定义者,非从0-1的突破,但是让使用者更低成本地、通用化的使用;案例:
- 月光宝盒:比如第一个时空穿越解决方案是太禅团队的隔离环境方案,月光宝盒解决“安全、便捷、0入侵”三大问题,并产品化成功;
- MAC:并非第一个数据对账平台,但是产品体验稳定性、运营良好取得成功;
- 第2级:定义测试问题并取得突破(0-1);或对业务产生重要影响;
- 定义问题取得突破:全链路压测的影子库&打标方案的提出与落地者,解决双11问题;doom双引擎的提出与实现者,解决电商核心系统部分回归问题;时空穿越提出并通过隔离方案实现:确保大促确定性;NOX:全域URL去重实现让 电商头号风险--水平权限漏洞排查成为可能;跨bu通用痛点解决:如测试环境;(在南门的文章中,提到测试领域还有一些列难点需要突破,比如回滚技术、测试充分度理论等)
- 对业务产生重要影响或技术拓展商业边界:背后是对商业分析、技术判断与能力边界等要求;这类案例极少,能想到的或者沾边的:
- 怀素在零售通阶段的费米项目(但是后期中断了,非常有这类想象力,即平时说的创造新商业);
- 云仓生产日期(问题规模小了点,沾点边):问题识别(持久性)、方案设想、调用最小资源完成mvp并ab成功 从而推动症结突破、最好完整立项解决;
PS:关于从0-1or从1-N,笔者非常明确的表达过当前更加需要的是1-N,因为该环节真正让创新突破变成生产力,让更多用户可以低成本使用;之所以把0-1放在更高的维度,是真正这样的突破比较少;
- 第1级:负责一个商业并取得成功;
- 此时已超出QA的范畴本身,和普通工程师差别不大;
6大能力模型
基于上述5级工程师的分类,笔者提出QA的6大能力模型,不同级别工程师对能力项的要求不同,对于同一能力指标,不同级别的工程师对深度要求也有很大差异,比如对于领域知识:理解领域部分模块 -- 精通领域全部-- 跨域(熟悉了多少个领域模型、痛点与方案,是一个衡量的重要标准,只有通过时间涨经验值才能达到)
- 快速理解:
核心项目对于测试负责人在前期的快速理解要求很高,快速设想未来的测试场景,才能挖掘出可测性要求在技术方案前融入其中;即使针对普通的项目,具备快速理解能力,可以用更短的时间完成特定任务,是QA需长期修炼的能力;只有熟悉&精通某领域、然后在不同电商业务部门轮岗经验&深度思考,逐渐具备电商技术的全链路视角和架构能力,才能在承担得住BU架构师职责;
- 快速实施:
能熟练使用所有的测试手段,有效组合到达问题解决;背后是对各测试手段、测试产品的能力边界的熟悉,同时可以经过有机组合达到;从点-先-面-题的不断深入理解,同样需要经过长期的时间积累;
- 技术深度:
- 测试解决方案的落地需要能基础开发能力(测“开”的由来)
- 对电商各领域的技术解决方案熟悉,在面对一个新领域问题时,有充分的可参考的经验,否则在技术方案阶段容易变成开发主导;
- 技术判断力:什么技术解决什么问题,以及不同技术之间的实现成本与质量风险;
- 只有具备上述能力,才能在面对复杂问题时给出高ROI的解决方案;
- 问题识别与解决、技术机会挖掘能力 (背后是人的底层创新能力、低效流程的强烈不认同)
- 是测试价值和贡献度的关键体现;
- 商业分析与产品思维
越往高级别走,该能力要求越强;QA对业务的贡献度从浅到深可以分为三个阶段:
- say No:通过ROI 或 基于商业和产品思维的判断,论证某PRD不能做;
- 移形换影:基于客户的原始needs和ROI判断,提出比现有prd更好的solution;
- 无中生有:挖掘|针对现存的业务痛点难点,提出全新的解决方案并被业务采纳和应用
- 需要从理解业务知识、背后商业逻辑、阅读相关商业&产品知识逐渐积累才能达到;
- PMO能力
- 管控项目风险的必要手段;
- 体现测试价值和贡献度的关键的少有途径;
PS:中西方对比
上周跟在硅谷工作10年的工作同学做了深入交流,阅读了一些材料,核心在于人才供给的差异。热点行业的人才趋势、中西方的社会成熟度和大学专业的偏向、背后的危机;
先看硅谷的情况:
- 近两年由于疫情、大公司收入提升,硅谷工程师的收入提升是比较明显的;
- 美国教育部数据:2017-2018年度,200w本科毕业生,商科+医学&公共卫生+社会科学历史+生物等约占50%,而计算机和信息科学(含信息安全)&纯理科约占6%
收入提升,本质是人才供给不足,还有因为疫情硅谷大公司盆满钵满;
国内情况:理工科比例明显较高,人文类的数量和质量会偏低(也是发展阶段的体现哈),所以一方面供给持续输入,另一方面 增长滞缓,技术人才价格就会降低,只能努力“人无我有-->人有我优-->人优我廉”。