34岁,转行做软件测试后月薪9K,我仍然坚持转行!

本人今年34岁,目前已成功转行软件测试工程师,月薪9K。对于很多人而言,我这个年纪转行不仅有些晚,还要担许多未知的职场风险,我深知自己这一路并不容易,以下就和大家分享一下我的转行经历吧。

到了我这个年纪的人,大多都被社会这个大染缸染得面目全非了。生活基本家和公司两点一线;接触最多的就是同事和客户,朋友只剩固定的几个;周末一大部分时间分给了加班,只有为数不多的时间留给了家人。至于职业规划和梦想,早就被琐碎的事情乱了阵脚,抛诸脑后了。

曾经,我希望自己在一个有前途的行业,3年升一级,职位升不升级并不重要,重要的是能力的升级。当然,我也希望自己能多赚点,除了来自家庭的现实压力,工资显然也是对一个人工作能力的侧面认可。


但回顾当初的工作,空耗多年,不仅自己的能力没有提升,就连曾经的规划也抛到脑后,真是一笔糊涂账。

▶ 薪资少:新员工比老员工底薪还高,提加底薪多次被拒绝;

▶ 工作流程乱:总是在处理合同盖章之类的琐事,推诿拉锯战令我筋疲力尽,最长甚至需要等1个多月时间,这一等,就把到手的合同等“黄”了;

▶ 工作杂:作为售后工程师的我,不仅要做售后,还要兼做技术,杂活费时费力,做了却也得不到任何人的认可。

很难想象,当时就算面对工作中这么多的不合理,我也没有早早意识到换工作,一拖再拖,拖到现在这个年纪,才踏出第一步,想想也挺好笑的。

但说来也是机缘巧合,有句话叫塞翁失马,我觉得就是我的写照。

要不是之前领导让我兼做技术的工作,我也无法接触到软件测试的工作内容。也就是自己做了一些相关的工作,我才有信心学好它。后来朋友聚会中,一个做软件测试的朋友与我侃侃而谈他的工作,我惊讶的发现他的工作与我之前做的有一部分重叠,另外,他的工作状态、薪资正是我想要的。这是我暗下决心一定要为自己努力一把。

人到中年,我并不能像刚毕业的年轻人们那样无所畏惧。现实的压力,并不允许我断了经济来源去全心学习。与家人沟通一番后,我报了线上班学习软件测试。

与全日制不同,这种线上班是专门为我们这些上班族提供的,可以兼顾工作和学习。

自从报班开始,我开始把自己关在家里,只要有时间就学习,其他的事情都往后推。老婆见我如此努力,也没有过多的抱怨。只是有一天夜里,她说:”老公,你头发太长了,该剪剪了。”我这才意识到,自己只顾学习,忽略了对家人的关心。我暗自决定:这次转行必须成功!

好在功夫不负有心人,半年后,我终于完成了所有课程的学习,并且成功实现了转行。其实说起来容易,过程的艰苦,只有自己能体会。

年龄大了,学东西非常困难,面试也一度陷入瓶颈。曾有一段时间,工作需要我经常加班,甚至经常与客户发生争执。下班后筋疲力尽的我,对于学习基本只是应付状态。我甚至一度感觉自己坚持不下去,随时要放弃了。

直到有一天,老师发来消息提醒我没有按时上课,我忍不住跟老师吐槽自己的状况。虽然老师当时并没有说太多,只是安慰了我几句。但打那之后,老师就会不间断地给发我课堂笔记和思维导图,在那段时间里,真的对我帮助非常大,让我有了坚持下去的勇气和信心。

我面试的过程并不算一帆风顺,我的年龄、学习能力都成为了他们的顾虑。但是在模拟面试时,老师总是提醒我,最好要避开年龄去谈,充分体现自己的工作阅历和应对突发事件的能力,这在我面试后期是非常受用的。因为企业的用人标准,还是从你能为他们做什么出发,你的价值和能力在哪里才是最重要的。

可能对比其他同学来说,我的转行有点晚。但对于我自己来说,转变就是新开始。让自己能有一技傍身,让自己能够从容转换新鲜的公司环境与氛围,这些都让我非常满意。

一来,我重拾了工作的热情。久违了那种每天积极探索新问题,然后积极找办法去解决问你题的感觉。这让我感觉自己重回目标轨道;二来,友好的工作环境让我踏下心来。这里没有扯皮,只有一群为了目标努力的人,而我也成为其中一员,烦躁焦虑终于褪去了,我很享受这份安心。再者,工资涨幅明码标价,只要你兢兢业业,就不怕工资没得涨。况且,还有按能力分配的年终奖呢

最后,我有几句话想分享给大家:当你发现自己重复度日时,就要考虑调整自己的状态了。是自己懈怠了?是沟通问题?还是哪个环节出了问题?

另外,建议各位同学一定要对自己的职业做个规划,要有个明确的目标,并且参照这个目标前进。如果明知道自己正在偏离目标,还不改变,就会像我一样事半功倍了。

希望大家都能记得一点:任何时候做出改变都不晚!年龄、学习能力、家庭背景都不是你偷懒的借口。如果你还年轻,又意识到了自己处于发展束缚期,那就勇敢做出转变吧!

绵薄之力

做为一名多年在职测试工程师,接下来我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名高级测试者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!

下面分享我整理的这份2022年可能是最全的软件测试工程师发展方向知识架构体系图。

1、软件测试基础理论知识:

软件测试理论知识是开展测试工作的理论依据和支撑,是测试很重要的阶段必须掌握的技能。

软件的质量模型:软件测试过程保障软件的质量,从哪些方面保障可以从质量模型出发思考

测试分类:软件测试过程可以按照不同角度进行分类,基础测试到高级测试递进过程

开发流程:告诉测试人员一个软件完整的生命周期,软件从无到有到消亡的过程

测试流程:掌握并指导测试人员在实际项目中如何开展测试工作。这要求测试人员对常见的主流测试流程有较为透彻的理解。遇到不同的软件项目,知道从何处着实能最有效率的测试软件缺陷

测试计划与方案:如何规划在项目中开展测试活动,确保测试活动有序进行

设计用例方法:黑盒测试阶段必须掌握的一些测试用例的设计方法。比如黑盒测试用例的设计方法、测试用例元素等等

软件缺陷:在测试执行过程中应该确定缺陷并提交缺陷报告

缺陷管理:提交缺陷后在实际工作中如何和开发协助处理验证提交的问题。例如:bug的等级优先级分类、bug的描述、bug的生命周期、缺陷管理工具使用,如禅道等。

测试报告:测试过程的回顾和结果确认,生成系统性的专业软件测试评估报告。

2、软件测试功底技术——Linux系统

linux系统是主要的服务端操作系统,也是从事IT岗位的大部分人员必须具备的基本技术之一。

linux系统基本知识:多用户,多任务,发行版本等

常见 linux操作命令:日志查看,文件压缩、解压,用户管理,文件权限等

会部署和配置基本的应用jdk、 mysql、 tomcat

docker安装使用

编写基本的 shell RAD本

远程终端工具使用: shell, xftps等

3、软件测试功底技术——Sql数据库

数据库作为软件系统必备的应用系统,在诸如接口测试、性能测试等等过程中往往需要操作数据库,验证数据正确性完整性,都离不开数据库的增删改查操作,在项目部署阶段数据库还需要配合项目部署。在性能测试、接口自动化测试中都需要数据库的支撑。

数据库基本概念

关系型数据库

MYSQL基本的增改查语句,存储过程

MYSQL复杂查询、多表查询

MYSQL索引及事务相关概念

数据库客户端工具使用:如 Navicat

4、软件测试功底技术——编程语言

推荐没有编程基础的朋友可以学习Python语言

Python语言的学习内容包含以下知识点:

Python基础:Python语言特点、运行环境、基本语法、代码风格、示例程序

数据结构:

基本数据结构:数字、字符串、类型判断、类型转换、切片、字符串格式化、数值运算、位置参数和关键字参数;

组合数据结构:列表、元组、范围、字典、集合、不可hash对象、解包、内存地数据结构址、不可变数据

程序控制:顺序结构、循环结构、判断结构、异常处理、逻辑运算符

函数:定义函数、函数的参数、返回值、变量作用域、匿名函数、常用内置函数

模块和库:模块和包、import关键字、常用标准库、常用第三方库、包管理工具pip

面向对象:面向对象起源和优势、面向对象的特性类和对象的联系、对象的特殊方法

日志记录:baseConfig、文件日志、邮件日志、定制格式、内置占位符、等级过滤、分级传播、配置文件

测试框架:unitest、pytest等

并发编程:多进程、多线程、协程、线程池、同步控制、线程通信、分布式、猴子补丁、 async语法、生成器

网络编程:socket编程基础、TCP服务端和客户端、并行请求处理、HTTP服务端和客户端

5、软件测试自动化进阶——接口测试

接口测试本质也是功能测试的一种,通过脚本或者工具,模拟客户端对服务端接口进行调用。因为是从接口层测试,所以能更早的发现问题,从而提高测试效率,降低修复成本。

http/httpst协议学习

常见请求方法学习:GET、POST

cookie和 session学习

接口的基本概念

接口文档认识

接口测试用例编写

接口测试工具使用:postman、Jmeter、SoapUl

6、软件测试自动化进阶——性能测试

性能测试的技术要求很高,不仅仅要对性能测试的指标、测试分类、测试设计有很深刻的理解。还要学习系统业务和架构相关知识,这样才能更好的设计性能场景。

性能基本概念:性能测试意义、常见性能指标理解、性能测试的分类

性能测试流程:性能需求分析、性能场景设计、测试脚本编写、测试执行资源监控、性能调优、回归测试

Jmeter及 roadrunner使用

性能测试报告输出

7、软件测试自动化进阶——app自动化

越来越多的项目和系统通过移动端来提供服务,移动端的软件质量越来越重要,App自动化测试已经成为自动化测试的重要内容。借助Appium,使得App自动化测试和Web自动化测试有很多相通之处,不过作为测试工程师,依然需要掌握移动端应用的工具和特性。

Appium移动测试环境搭建:Appium ServerAppium和 Desktop、 Android运行环境搭建、模拟器安装和连接、真机设备调试模式、adb、 weditor、 - - UiAutomator22、 Monkey

Appium元素定位:原生应用元素定位、纯web应用元素定位、混合应用元素定位

Appium元素交互:等待元素加载,元素的基本属性和方法、滑动、拖动、缩放操作、下拉选择操作、 toast消息处理、常见控件分析、常见布局分析

封装测试框架:集成Appium、adb等工具、预定义异常处理、记录Appium日志、屏幕截图、打造多用途测试框架

8、软件测试自动化进阶——持续集成和持续测试

持续集成和持续测试是一个在迭代中构建、测试产品并修复Bug的过程。它有助于团队在开发阶段的初期发现缺陷,这时的缺陷通常相对不那么复杂,并且更容易被解决。通过持续集成和持续测试,可以尽早地将错误风险降至最低,并加快交付更好质量的软件。

版本控制Git:背景介绍、环境部署、工作区、暂存区和提交区、分支创建与合并、解决冲突、标签、 config与别名、本地仓与远程仓、 GitHub与码云

持续集成 Jenkins:背景介绍、环境部署、文件结构、远程仓库与私服、ja包依赖、插件管理

容器Docker:了解 Dockers的镜像、仓库、容器、 Docker Engine和架构图、网络设置、数据持久化

凡事要趁早,特别是技术行业,一定要提升技术功底。

软件测试学习资料领取和学习经验分享扣扣群:938856006,群里都是学软件测试,或者是业内的同行,如果在软件测试学习和工作中遇到什么问题,都可以在群里进行交流,同时群里有最新的软件测试学习资源领取,包括一些面试题和自动化进阶资料!包括我自己整理的一份2022最新的软件测试资料。

你可能感兴趣的:(34岁,转行做软件测试后月薪9K,我仍然坚持转行!)