软件开发工程师(SWE),测试开发工程师(SWT),测试工程师(TE)。 三个岗位几个区别 SWE也需要做测试的工作,SWE需要编写测试驱动的设计、单元测试、参与构建各种大小规模的测试等(简单说开发其实需要对自己的代码负责,并不是很多人理解的代码写出来扔给SWT和TE去测) SWT也是一个开发者角色,只是工作重心在可测试性和通用测试基础框架上。(SWT也要会写代码,代码要求并不比开发低,他们写代码的聚焦点是测试,PS:以字节为例,大部分的测开是技术序列,代码要求和开发一致,薪资也一致(当时宣讲会听的))。 SWE和SWT不是敌人(不是一个生产BUG,一个挑刺的),更多是合作伙伴,SET写代码的目的是可以让SWE测试自己的功能。 TE把用户放在第一位来思考,组织整体质量的实践,分析解释测试运行结果,驱动测试执行,构建端到端的自动化测试。(SWT和TE工作有很多交织,SWT更多是要构建测试框架,编写测试工具。TE更多是脚本,测试用例,以及点点点…,以字节为例,TE对代码的要求会相对较低,但是也需要写代码(宣讲会听的))。 国内很多大厂的测开其实做的是测试的活,也要很多测开干的就是开发的活,这些都取决于你的组,不是一概而论的。 SWT和TE对于知识广度的要求会更高,SWE你也许只需要在一个角度仔细钻研就可以了,SWT和TE则需要你是“万能博士”,正如推荐的那本书的作者所说,招一个好的SWT和TE往往比SWE还难。 SWT的天花板也许相对SWE会低(毕竟国内的事实是SWT和TE做主程的很少),但是SWT越来越受重视是不争的事实,同时SWT的平均待遇不低。 你可能是一个测试开发工程师,如果你有以下的特征: 你编程时,会内疚的想到还有很多单元测试用例没有完成。随后,你又会考虑各种生成测试代码和验证的方法,而不是手工 编写每个单元测试用例。 你可能是一个测试工程师,如果你有以下的特征: 你能在已有的代码段中快速找到错误,迅速理解软件失效的模式,但是并不关心从头编写代码或者做修改。 综上(大概率是这样的,大家别钻牛角尖,没有优劣之说): 代码能力要求:SWE=SWT>TE 下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 | 只有不断挑战自我的人,才能超越自我;只有坚持努力的人,才能创造奇迹;只有勇敢追逐梦想的人,才能收获成功;只有拼搏奋斗的人,才能改变命运。相信自己,勇往直前! 只要有梦想,努力就不会白费。成功的路上永远不缺挑战,但坚持不懈的勇气才能让我们成为无人可及的强者。相信自己,奋斗不息,未来必将灿烂辉煌! 拼尽全力,无畏困难,你的努力将开启新的可能。不屈不挠,追求卓越,奋斗的心将引领你跨越巅峰。相信自己,坚守初心,只要前进,成功终将属于你。 (责任编辑:蚂蚁团队) |