毕业四年换了3份软件测试工作,我为何仍焦虑?

news2024/11/19 2:27:34

​今天一看日历:2023.2.11 ,才突然意识到自己毕业已经四年了。四年时间里一直在测试行业摸爬滚打,现在是时候记录一下了。

下面我来分享下我这4年软件测试经验及成长历程,或许能帮助你解决很多工作中的迷惑。

01、我是如何开始做测试的?

2015年开始上大学,一个不算好的小二本,专业也是被调剂的-信息与计算科学,看起来高大上的专业,实际到真正学习的时候才发现,学习的东西泛而不精,数学知识与计算机知识掺杂,导致大学学了四年后,对什么都一知半解,更找不到毕业后的方向和职业规划。

一个偶然的机会,接触到了嵌入式,听说发展前景很好。由于当时对就业的迷茫,终于没能抵挡住诱惑,就这样,大四那年基本都是在嵌入式学习中度过的。但是后面的事情不容乐观,越学越觉得自己不适合做编程,尤其是涉及到跟硬件相关的东西,更是一窍不通。学了一年,什么都没学到,顶多算把大学里学的C语言、C++基础巩固了下。

但是这个学习过程也并不是没有一点好处的,一般企业看到毕业生有多项技能,会对你更加感兴趣,自己去找工作时也更加有信心,虽然实际并没有比别人强多少,但简历还算漂亮……鉴于自己对写代码并不感冒,认真考虑后,决定毕业后从事软件测试行业。

为了更好地胜任软件测试工作,我也查询了一些资料,下面分享一下软件测试的成长路线和技能要求:(文末有作者学习笔记分享)

第一阶段:手工测试工程师

年薪8-10W

主要技能:测试分析+用例设计+测试执行

第二阶段:自动化测试工程师

年薪15-25W

主要技能:测试脚本研发能力

第三阶段:全栈自动化测试工程师

年薪30-50W

主要技能:所有类型所需自动化测试技术

第四阶段:测试开发工程师

年薪50-80W

主要技能:测试框架及测试工具的需求、设计及研发能力

02、毕业后的第一份测试工作

2019年7月份,毕业如期而至,还好找工作并没有想象中的那么难,参加了一次校园招聘,就直接被录用了。

我毕业后的第一家公司,暂且称它为“A公司”。在A公司一共工作了三年,这三年时间对我的影响非常大。实习期间,遇到了我师父,算是我的伯乐之一。师父人特别好,尤其对我们这些刚毕业的没有任何工作经验的实习生。

从最基础的软件测试理论开始学习,然后再运用于实践-Android系统手机功能模块测试。学习期间,师父发现我有一点管理的潜质,他请假的时候,都找我来当他的backup,帮他分配任务,处理一些管理上的事情。慢慢地,接触的人越来越多。

做了大概一年的时间,被部长看中,让我来单独负责一个项目,锻炼锻炼。我诚惶诚恐,带领了四五个组员开始负责这个项目。为了让大家信服,我自己私下里不断学习,不断向研发请教各类问题,所以组员们问我问题的时候,基本都能顶下来,除了这些,我还组织组员们学习各种知识,参加各种培训,大家觉得成长了,真正学到东西了,也会愿意跟着你干。

后面项目越带越顺,项目期间也没出现过大的差错,一年时间,领导看到了我的努力,提拔我为测试经理。得到这个职位的时候,我既欣喜与自己的努力得到了汇报,又深深感觉到自己身上的担子越来越大,需要更多地充实自己、完善自己,才能抵挡住各种压力,承担起测试经理该承担的责任。

做测试经理期间,也没敢有半点懈怠,值得一提的是,我来公司的两年里,软件测试一直局限于功能测试,网上看到很多自动化测试方法,但是看了之后没有头绪,刚好兄弟部门也在做自动化测试,我就跟他一起学习Python语言,学习写一些简单的自动化测试脚本,然后用到了自己的项目中,然而当时并不知道怎么判断出错,怎么抓取日志,只是初步的脚本可以跑起来。女怕嫁错郎,男怕选错行。一旦入错行,唯有泪两行。很多时候,能否进入某个行业自己也难以控制,是存在多方面原因的。

虽然如此,内心还是有很大的成就感,起码迈出了第一步。后来我教给我组员学习,组织简单的培训,这也算测试部的一个突破吧。

做了测试经理大概一年的时间,感觉自己遇到了瓶颈,因为公司毕业生比较多,没有测试技术方面的大牛,测试技术很难得到提升。

后来,做了一个艰难的决定,离职。之所以艰难,是因为在这里三年,我遇到了我的伯乐,从毕业开始一步步指引我走上了管理岗位,遇到了很多帮助我的人,对这里的一切充满了感恩。

有人会说,我太幸运了,遇到了那么多帮助我的人。我只想说,只有平时不断学习,不断努力,当机会来临时,你才有可能抓住,否则,别人想帮你,也找不到帮助你的理由。

03、第二份测试工作经验分享

从A公司离职后,找工作也比较顺利。得到了几个手机公司的offer,后来决定去B公司做测试项目经理VPM。这家公司是国内外知名的大公司,而我所在平板部门是集团下的一个事业部,专门做海外产品。

在B公司工作,因为全是销往海外,所以跟各个国家的人打交道很多,需要有很强的英语功底。邮件全英文,提bug,全英文描述。我虽然英语六级,面试的时候也面试英语口语,也顺利通过了,但是真正跟外国人开会时,很多都听不懂,尤其听法国人说英语,更是不知道他在说什么,这个也一直是我的瓶颈所在,没事就疯狂地听各种英语脱口秀、英文美文等。

这里的VPM职责跟A公司不太一样,只管项目不管人,你项目需要人时需要从各个Teamleader那里协调人力,而且调到你项目的人的绩效也不是归你负责的,所以VPM丧失了主动权。但是公司目前在改革,开始朝强项目矩阵发展,但是转变的过程是痛苦的,需要适应各种的不习惯。

B公司项目管理流程做的是非常不错的,而且近期通过了TL9000审核,项目各个节点有总经理和研发总监严格评审和把关,出现问题之后,第一时间搞清楚事情来龙去脉,以及下一步的Action,没有Action必定会遭到劈头盖脸一顿骂。公司倡导“鹰”的文化,基于这样的企业文化,公司上上下下的效率很高,但是无形之中给每个人很大的压力,气氛不像A公司那么和谐。

说下重点,测试方面的。B公司测试小组分为三个:系统测试小组、场测小组、自动化测试小组。每个小组都有一个Teamleader。测试跟A公司大同小异,值得一提的是自动化测试做的比较好。

在B公司学到了两点我觉得比较重要的:项目流程管理和抗压能力。在B公司做了一年多,但是考虑到自己的终身大事,决定跟男朋友结束异地生活,毅然选择了离职。

离开B公司还是蛮多遗憾的:

1、没有做过运营商项目,不清楚各个运营商项目的流程;

2、没有等到出国深造的机会;

3、以后的工作可能没有这样的英语工作环境,除非找个外企。

目前已经得到国内一家手机公司的测试经理的offer,薪资福利达到了预期,已经决定签了。B公司的离职手续还在进行中。

04、4年经验,与你共勉

基于我4年的职业经验,以下几点与大家共勉:

1、无论从事什么行业,刚毕业的几年之内,一定要先把基础打好,尤其是技术类工作。以后不论走技术路线还是管理路线,这点都是至关重要的。

2、硬功夫(专业能力)和软实力(情商)都很重要。

3、要善于记录、分析和总结。针对测试,类似于经典bug出现的根本原因、复现方式、避免漏测的办法、改进建议等总结。B公司学到的好习惯,项目过程中遇到的issue(不仅仅是bug),都清清楚楚地记录在一个表格中,包括问题描述、rootcause、action、deadline、Owner等,便于追溯,后期做Lesson learn的素材来源。

4、以小见大。出现一个bug,不要仅仅局限于这个bug,要多思考问题出现的原因,是流程出现问题了呢?还是其他原因?是不是可以优化流程来避免以后此类问题的发生呢?这样,解决一个问题相当于解决了一类问题。所以要多思考、多提建议。

5、趁自己还年轻,合理利用空余时间充电。一个人下班的时间,决定了他的高度;一个人如何使用空闲时间,决定了他能走多远。“赠人玫瑰手留余香”!我也想做你们测试发展道路上的人生导师,把我的经验分享给大家,帮你们更好的突破自己,提高自己!

绵薄之力

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

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

1、Python 编程与测试开发技术

2、Web自动化测试基础

3、APP自动化测试基础

4、Postman测试工具专题

5、接口自动化测试基础

6、自动化框架封装

7、持续集成

8、Jmeter 性能测试

9、APP性能测试

10、Fiddler 抓包工具的使用

11、TCP/IP协议详情

12、计算机操作系统

13、Linux 系统操作

14、MySQL 数据库

15、RobotFramework 自动化测试框架

16、跨平台的自动化测试框架

上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。

可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。

绵薄之力【资源分享】

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享~

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/338361.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

libevent 实现httpserver 终极版C/C++

最近要用C实现哥httpserver,之前探索了很多个http的库。 1. 我之前最习惯用httplib-cpp github.comhttps://github.com/yhirose/cpp-httplib 但是它要求gcc-g版本要大于4.8。然后我用了6.1.0之后,我的其他库比如mysql glog之后怎么都链接不上。换了系统&a…

Https 协议超强讲解(二)

浏览器是如何确保 CA 证书的合法性? 1. 证书包含什么信息? 颁发机构信息 公钥 公司信息 域名 有效期 指纹 …… 2. 证书的合法性依据是什么? 首先,权威机构是要有认证的,不是随便一个机构都有资格颁发证书&am…

【MySQL】第十六部分 MySQL数据类型详解

【MySQL】第十六部分 MySQL数据类型详解 文章目录【MySQL】第十六部分 MySQL数据类型详解16. MySQL数据类型详解16.1 整数类型16.2 浮点类型16.3 定点数类型16.4 位类型 BIT16.5 日期和时间类型16.6 文本字符串类型16.6.1 CHAR VS VARCHAR类型16.6.2 TEXT类型16.6.3 ENUM类型16…

文件管理(9)

文件管理 0 引言 为什么要引入文件系统? 信息管理的需要:用户面前提供一种规格化的机制,方便用户对文件的存取、提高效率。操作系统本身需要–操作系统本身也不是常驻内存的,也有大量的信息需要存于外存。 1 文件定义 文件&a…

Python语言零基础入门教程(十四)

Python 日期和时间 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。 Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。 时间间隔是以秒为单位的浮点小数。 每个时间戳都以自从1970年1月1日午夜(历元&…

Linux上面配置Apache2支持Https(ssl)具体方案实现

虽然Nginx比较流行,但是由于一些老项目用到了Apache2来支持Web服务,最近想给服务上一个Https支持,虽然看似教程简单,但是也遇到一些特殊情况,经历了一番折腾也算是解决了所有问题,将过程记录如下。演示是基…

亿级高并发电商项目-- 实战篇 --万达商城项目 三(通用模块、商品服务模块、后台API模块、IDEA忽略文件显示等开发工作

专栏:高并发项目 👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者 📕系列专栏:前端、Java、Java中间件大全、微信小程序、微信支付、若依框…

4.SpringWeb

一、创建项目LomBok:辅助开发工具,减少代码编写Spring Web:带上Spring MVC,可以做Web开发了Thymleaf: Web开发末班引擎(不常用)创建好,如下:static/ 放置静态资源的根目录templates/ 放置模板文件的根目录 二、资源配置…

新来的23岁软件测试员上来秀了波操作,把几个老员工看傻了

春招了,公司来了个小伙子,一看简历,嘿?22岁,这不刚毕业的小毛孩子嘛,结果没想到人家上来就把现有项目的性能优化了一遍,给公司节省了一半的成本,这种“王炸”打法,直接给…

152、【动态规划】leetcode ——416. 分割等和子集:滚动数组+二维数组(C++版本)

题目描述 原题链接:416. 分割等和子集 解题思路 题目要求是划分出两个相等的集合,那么这两个相等的集合相加,一定等于偶数并且为总集合的二分之一,若总集合求和后不为偶数,则一定不可以划分,直接返回fals…

黄绮珊“绮望三十”巡回演唱会3月4日广州中山纪念堂暖春开唱!

•中年成名 四十余载静待盛放歌手黄绮珊,1991年正式进入歌坛,至今已满三十周年。黄绮珊前半生的歌手之路好像并不是那么顺畅。虽然一直有着华语乐坛的顶尖歌唱实力,但在45岁之前,黄绮珊一直处于“歌红人不红”的状态。不少人听过黄…

GPU服务器安装显卡驱动、CUDA和cuDNN

GPU服务器安装cuda和cudnn1. 服务器驱动安装2. cuda安装3. cudNN安装4. 安装docker环境5. 安装nvidia-docker25.1 ubuntu系统安装5.2 centos系统安装6. 测试docker容调用GPU服务1. 服务器驱动安装 显卡驱动下载地址https://www.nvidia.cn/Download/index.aspx?langcn显卡驱动…

Zabbix 构建监控告警平台(三)

Zabbix User parametersZabbix Trigger1.Zabbix User parameters 1.1即自定义KEY 注意:mysql安装在被监测主机 [rootlocalhost ~]# yum -y install mariadb-server mariadb [rootlocalhost ~]# systemctl start mariadb [rootlocalhost ~]# mysqladmin -uroot statu…

[electron] 一 vue3.2+vite+electron 项目集成

一 开发环境系统:windows开发工具: git , vscode,termial环境依赖: node, npm 二 步骤2.1 通过vite 创建vue项目通过 终端执行命令,选择 模板 vuenpm init vite cd 项目目录 npm install npm run dev2.2 集成 electro…

T06 成绩排序

查找和排序 题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 示例: jack 70 peter 96 Tom 70 smith 67 从高到低 成…

LC-70-爬楼梯

原题链接:爬楼梯 个人解法 思路: 动态规划 状态表示:f[i]表示走到第n阶台阶有几种方法 状态转移:f[i] f[i -1] f[i - 2] 这实际上就是斐波那契数列,通过转移可以看到,我们只用了三个变量,故…

Java、JSP职工人事管理系统设计与实现

技术:Java、JSP等摘要:现在随着我们这个社会的计算机技术的快速发展,计算机在企业管理中得到普遍的应用,现在我们利用计算机在实现企业职工的管理越来越重要。当今社会是快速发展的信息社会,自动化信息的作用也变得越来…

Python 之 NumPy 简介和创建数组

文章目录一、NumPy 简介1. 为什么要使用 NumPy2. NumPy 数据类型3. NumPy 数组属性4. NumPy 的 ndarray 对象二、numpy.array() 创建数组1. 基础理论2. 基础操作演示3. numpy.array() 参数详解三、numpy.arange() 生成区间数组四、numpy.linspace() 创建等差数列五、numpy.logs…

第四章 Opencv图像色彩空间与通道

文章目录1.色彩空间1-1.RGB/BGR色彩空间1-2.GRAY色彩空间1-3.HSV色彩空间2.通道2-1.拆分通道:split()方法1.拆BGR色彩空间图像的通道2.拆HSV色彩空间图像的通道2-2.合并通道:merge()方法1.B、G、R 通道的合并2.H、S、V 通道的合并3.B、G、R、A 通道的合并…

M100嵌入式自动吞吐式读写器|电动读卡机如何通过C#程序读取社保卡号

M100嵌入式自动吞吐式读写器|电动读卡机是一款双保护门功能读卡器,第一层防尘防异物机械门,第二层电动门。 M100嵌入式自动吞吐式读写器|电动读卡机采用耐高温、耐磨擦、高强度、抗老化的复合型塑胶为主体,在走卡通道两侧镶有不锈钢金属&…