应不少同学的要求,通过本文分享下对
测试工程师职业发展的看法,话题较大,不敢随便乱写,抛砖引玉,供大家参考。
1.测试行业发展背景
中国最早的对 IT 工程的启蒙和测试定位的探索大多来自于微软。当年的大背景是微软故意放任
Windows 的盗版,并积极的输出他自身的 IT 生态
技术栈到中国。中国从政府到民间几乎全部使用了 Windows。中国有大量的微软认证的 VP 等各种专家。
微软和他的附属生态带给中国测试行业的影响,简单总结下:
强调工程的严谨性。CMMI 一统天下。无数中国公司为了通过这个认证费尽脑汁。大部分公司通过它也不是为了自己的规范,而是为了能拿到政府或者国外机构的外包业务。
测试和研发的比例。因为都是客户端产品。如果交付出去出现质量问题是很难解决的。所以测试被放在一个非常重要的位置上。测试与研发比一度是 1:2
外包公司发展迅猛。短短的几年。中软,东软,软通动力,博彦等公司迅猛的发展起来。
当互联网世界开始爆发,测试行业的主要变化是:
CMMI 逐渐被互联网公司忽略。国内崛起的公司有自己的业务,他们不屑于不实用的认证,开启了自己独特的野蛮发展的节奏。这也是之前在外企工作的白领有优越感的一个原因。
测试技术大发展。不再是简单的
自动化测试,技术开始更加细化。比如
单元测试,代码动静态测试,
接口测试,持续集成,各种端的自动化测试。大家也不再迷信 UI 自动化,而分层自动化,持续集成,测试既服务等理念开始流行。
测试工程师技术型转变。以前的测试工程师就是点点点,不会要求技术的。但现在 BAT 等一线公司已经全部推行技术笔试了。可以说,不懂开发基础的测试人已经难以发展了。点点点测试工程师已经退化到只能用于用户端的功能校验工作了。
测试研发比:从 1:2 下降到了 1:3、1:5。
移动互联网+创业浪潮时代的测试发展
移动互联网爆发,IT 研发技术栈和
云计算服务也发展迅猛,这让小公司的生产力有飞跃性变化,也催生了一场席卷全球的创业浪潮。这股浪潮起源于硅谷,并迅速通过"Copy to China"模式烧到了中国。另外一个是中国大环境的变化,导致了外资企业生存困难,很多优秀的企业都从中国撤离。
这期间的测试行业发生了如下的变化:
服务于国内企业的测试工程师开始增多。外包测试工程师,外企工作白领测试工程师都被外企撤离影响到了,开始逐渐转到国内公司。外企工作的优越感逐渐丧失,国内的工程师开始崛起。
敏捷理念盛行。SCRUM 和 XP 理念被迅速的普及。Scrum 迎合了产品管理的需求,XP 迎合了工程化发展的需求。各自发展都很迅猛,然后逐渐衍生了更深入的 CI、CD 和 DevOps 等模式。
测试研发比。下降到 1:8 甚至更低。其实 BAT 都向往
Google 的 1:10。只是国内目前做不到。
大质量部模式被打散。为了提高运作效率,QA 或者测试工程师团队被逐渐分拆到各个具体业务部门。大质量部模式消失意味着测试工程师的发展开始遭遇天花板。很多人还没能体会到这个模式带来的巨大影响。
测试技术新发展。测试平台得到了很大的发展。研发工程师,技术型测试工程师也开始逐渐发挥价值。比如新型的全链路压测,全链路追,测试监控,各种接口测试和 mock 平台,各种云测和专项测试平台。独立的测试服务公司也开始层出不穷。
人类已经进入 DT 时代。大数据,机器学习,深度学习,图形渲染等技术栈也已经成熟了。随之而来会形成新的生产力并落地到测试行业,这个阶段大家刚开始感受到。我暂时不做评论。
2.测试行业发展总结
之所以列举过去的行业变化,其实是为了告诉大家,不要认为目前的模式就是行业的长期现状。目前不同企业仍然是处于不同的理念和不同的历史阶段中。没有绝对的对错,只有适合与否。
这些变化都是围绕着几条核心的主线发展的:
业务发展
业务发展带来了对质量和速度的追求。这是整个行业发展的主线。
业务发展的需求影响到了产品研发和测试。它和资本一样是贪婪的,无时无刻不在追求着突破瓶颈。追求更快更好的发展。它决定着很多公司的生死和很多行业工程师的前途。研发,产品,QA 都是要为业务服务的。
技术发展
技术是生产力的重要组成部分,技术的发展是自带加速度的。每次质变都会带来一些行业重大的变更。技术的成熟度决定了测试行业的成就能做多大。
作为测试工程师要善于利用当前的技术栈打造符合当前需求的解决方案。
管理发展
公司主体在追求简单高效的管理上是永不止步的。技术和工具的每前进一步,就意味着组织沟通的能力在增强。管理这个方向会逐渐的扁平化。高层管理会越来越少。一线管理会越来越多。
作为测试行业比较尴尬的一点是大质量部模式模式的消失,让测试行业的发展开始遭遇天花板。如果 Hold 不住研发和产品,在测试行业发展的人是没法往上有很好的晋升的。
3.测试工程师职业发展关键因素
薪酬数据参考
我根据测试人才的基本属性并用实际的例子总结,按照 8 年跨度(08-16),总结了行业的一些典型人才的职业发展现状(鉴于隐私要求,模糊了相关数据,与真实情况略有偏差)。
我手里也有更多的数据,之前也一直想搞个决策树模型,但是一直没完整的做出来。这次就先简单列举这几个典型的案,简要分析下测试人的职业发展关键因素。
职业上升的关键因素
技术能力决定了你的薪资增长加速度。在月薪 1-3w 中间。技术能力助力会较多。
管理能力决定了你的薪资阶层。月薪 2-5w 是管理层基本薪资。后面的要靠公司的股票和奖金。
业务能力决定了你的地位和长期回报。对业务的把控决定你在团队的影响力和重视度,也关联期权和股票的数量。
运气和选择决定了你的人生轨迹。选择的好就能获得最大回报。
股票或者期权回报是超过工资的。选择一家靠谱的可持久的公司很重要。
作为个人发展,我的建议是扎实的提升你的技能,培养好你的人脉和软实力。至于运气和选择不用焦虑,如果你有能力,自然会有高人拉拢你。比如之前就经常有朋友联系我,说是 XX 公司要发期权了,XX 公司要上市了,跟我们一起干吧。人品好,技术好,大家都会喜欢与你为伍的。
职场发展建议
切莫在不该有的年龄追求权利
这会断送你的整个前程。在一些面试场合,如果面试官问你愿不愿意做管理,如果你回答是,那么面试基本就挂了。一定要确认面试你的人是不是真的希望你走管理路线。大多只是测试你是不是真的是个实干家。
过早参与管理工作也会导致个人技能发展的不健全。这会为以后带来隐患。过于追求权力必然也会引发办公室政治和各种利益斗争。所以请谨慎面对这个毒
苹果。
在薪资和工作机会之间做合理的权衡
每家公司都有自己的薪资体系。你要参考这个数据来合理的确定自己的薪资,不要有幻想。不要觉得别人因为某次成功的忽悠拿到多就懊恼。
一个优秀而扎实的工作经历会让你受益一生,会为你的简历增光不少。对于这种机会降薪也值得去。
一个合理的节奏是,刚参加工作 1-2 年内主要是积累能力,薪资能糊口即可。2-5 年,可以适当的跳槽追求更好的待遇或者更闪光的工作履历。5年以上,就是要物色好的机会一飞冲天了。
如果跳槽太多,一些大公司也会非常的在意,会影响你的面试。比如工作经验不到一年或者两年就跳槽的人,很容易被 BAT 认为轻浮。
4.当下测试行业的发展
表面"衰落"的测试行业
鉴于过去的大形势变化,不懂技术的测试工程师会逐渐被淘汰出局。一波测试工程师的失业潮是在所难免的。虽然早期我也呼吁身边的人赶紧脱离落后的业务体系,脱离落后的测试技能,但是看到很多人越来越
生活艰难,也是挺心痛的。
包括测试工程师的需求越来越少,招聘职位也越来越少,典型的新崛起的巨无霸公司比如
Facebook 早期都没有 QA。甚至前几年一度有 QA 团队是否值得存在的争论。表面看起来是测试行业衰落了。
有趣的是,大家讨论 QA 团队是否值得存在的初衷,是为了更好的保证质量。这还是挺耐人寻味的。绝大多数的公司,都是非常支持 QA 部门的存在的,问题在于 QA 团队的存在的价值到底是大还是小。
过去陈旧的测试体系,落后的测试人员能力,冗长的测试流程是被整个 IT 行业诟病的一个关键。当研发的生产力在逐渐的提升,运维的部署在逐渐的自动化,QA 所带来的价值和耗费的成本就越来越不能忽视了。甚至成为了一个项目的最大的成本。
这是任何一家公司都无法忽视的问题。早年
阿里巴巴的高管曾经集体去硅谷拜访新崛起的巨无霸,得到的结论就是他们的流程和执行力比国内强很多。甚至 Facebook 早年都没有 QA 就成长为大公司了。所以阿里就迅速推动了流程的裁剪。这部分包括裁撤 SQA,裁撤
需求分析师,裁撤项目经理,削减 QA 名额。进入产品,研发,测试三足鼎立的最简模式。
QA 会不会被撤掉也取决于这个部门的价值。所以不要想当然的觉得"存在即合理",现在部分的公司已经在试验"无 QA"的模式了。互联网行业唯一不变的就是变化。
比如一个典型的例子,在搜索,推荐,机器学习等方向的算法测试是很重要的领域,是需要专业的测试工程师参与的。这个行业能容纳很多的测试团队。但是测试行业这些年就没形成对这个领域的正确测试方法,结果最后丢失了这个市场。现在都是研发自己保证了。因为找不到合格的测试工程师去保证这个业务。
同样在性能测试领域也是如此,随着性能测试平台,全链路压测,性能监控,AB Test,云压测这类技术和服务的出现,性能测试工程师的需求也会缩小。越来越多公司里的性能测试都已经变成研发主导了。丢失了这块的业务,性能测试 QA 的需求量自然会受影响。
一定要记住,业务空间决定 QA 的生存空间,这是所有行业都通行的道理。如果你不能满足业务需求,就会被淘汰出局,要么选择退守防御要么选择勇于接受挑战。
那测试行业的未来是什么样的那,很多人会担心。不过我还是整体乐观的。因为我喜欢整个行业,这些年也一直在进行不断的思辨。这里说下我的看法。
测试从业人员的规模
从业人员规模跟生产力负相关,跟业务规模正相关。以后能有多大取决于技术和业务规模的双重因素。
首先,是大环境因素。随着各种行业的互联网化,IT 行业在扩大, 外卖,美甲,甚至是无人机汽车航天产业都将成为科技公司。研发的队伍会扩大,QA 的队伍自然也会整体扩大。前提是 QA 自己要跟得上时代。
其次,是随着生产力提升自然就不会需要这么多人的。哪个行业都这样,测试行业并不特殊。就跟汽车行业一样。早年堆人,然后堆工具,堆技术,上机器人,改进流程。