技术方向
1. 测试开发工程师:
支撑测试部门,一般来说主要负责设计&编写测试部门所需的测试工具,提升测试团队的工作效率(当然,每个公司不一样,不排除,有些公司这个岗位,让你去测功能偏多) 。
门槛:必须具备非常强的代码能力,最好有一点测试思维,能理解测试部门的业务需求,对测试整个流程、诉求、痛点了解,开发出的工具,能解决问题,提高效率,而不是一堆华而不实的无用工具,自嗨 。
2. 自动化测试工程师,通过开源的自动化工具,或者一些商业工具,执行自动化测试,以及确定自动化测试方案 等 。
门槛:对常用测试工具熟悉,了解测试自动化测试流程,得具备基本的代码能力 等。
3. 性能测试工程师,大家都知道,性能分析、风险控制、性能评估、给出调优建议 & 结果 等 。
门槛:水很深,不是玩玩工具就可以的。老徐个人,不建议,走这条路。
4. 测试架构师 ,整个测试部,技术方向把控 。
门槛:测试方面的理论、方向,软件工程,语言基础 等,都必须得具备。
5. 高级测试工程师 / 资深测试工程师,一般来说,也是技术方向,偏业务方面多点 。
门槛:很多稍微有点技术能力,不是点点点,混几年,就可以了,具备基础的测试必备能力,linux/DB/Shell/Python/Java/工具等;当然,很多不会的也混的很好,只是核心竞争力不够 。
管理方向
1. 测试组长,公司只有几个测试的情况下,一般会有个测试组长,管几个测试,团队一般功能测试为主 。
2. 测试主管,基本同上 。
3. 测试经理,一般来说,管理一个测试部门,下设多个测试组,也许会有自动化测试团队、测试开发团队等 。除了关注技术本身,还得关注部门发展、绩效等。 具体可以看看之前的文章 -> 测试经理每天到底在忙些什么?
4. 项目测试负责人,很多项目制形式的团队,带领几个测试人员,对这个项目的整体质量负责,协调资源,确保整个项目,最终质量 。
5. 测试总监 ,根据测试经理延伸,市场岗位有限,看机遇,缘分 。如上,聊了两个常规方向 。
第五阶段:(资深安全或性能测试工程师)
测试/编程高级负责人(6-10)
自身条件:有6~10年经验的测试工程师或程序员。
具体工作:负责管理8~10名技术人员。性能测试整体方案设计,软件系统性能问题定位和性能优化,内存优化及分析数据溢出等,分析系统的安全漏 洞等。负责进度安排、工作规模/成本估算、按进度表和预算目标交付产品。负责开发项目的技术方法。为一些用户提供支持与演示。
学习方向:开发一些特定领域的技术专长
第六阶段:测试/质量保证/开发(项目)、经理
自身条件:有10多年的工作经验。(10年及之后)
具体工作:管理8名或更多的人员参加的1个或多个项目。负责这一领域(测试/质量保证/开发)内的整个开发生存周期业务。为一些用户提供交互和大量演示。负责项目成本、进度安排、计划和人员分工
第七阶段:(公司级质量总监)
计划经理
自身条件:有10年以上开发与支持(测试/质量保证)活动方面的经验。
具体工作:管理从事若干项目的人员以及整个开发生存周期。负责把握项目方向与盈亏责任