互联网衰退期,测试工程师35岁之路怎么走...
国内的互联网行业发展较快,所以造成了技术研发类员工工作强度比较大,同时技术的快速更新又需要员工不断的学习新的技术。因此淘汰率也比较高,超过35岁的基层研发类员工,往往因为家庭原因、身体原因,比较难以跟得上工作节奏,所以裁员往往优先考虑这类员工。
测试工程师也属于技术研发中的一员,所以35岁就是一个门槛了,这并不是说35岁后一定会被淘汰,但是面临的选择肯定会大大减少。
大多数人都是在22-23岁参加工作,工作两三年后逐渐积累了一些工作经验,开始进入了职业生涯的黄金期。可以看到,测试工程师职业黄金期也就十年左右。
早期的互联网行业红利期虽然已经过去了,但是也一直不断有新的机遇出现。对于大多数人来说,如何在短短十年内,通过奋斗在本职业上建立一些成就,为自己创造更多的积累呢?
我想谈谈自己对测试工程师职业生涯的一些看法,纯属个人意见,如有不同看法,欢迎在留言区拍砖讨论。
01、职业生涯的规划
老生常谈,“职业规划”这个词大家已经都听腻了,从高中到大学,老师就一直在讲每个人要有自己的职业规划。出来工作去面试,HR也在问职业规划。但是根据我的观察,大多数人在职业生涯早期,是没有职业规划的,包括我自己,因为没有什么危机感。
事实证明,越早进行职业的规划,目标越清晰的人,将来的发展就越好。因此每个人都应该尽早确定,未来几年内,我的个人能力逐步应该达到一个什么水平,进入到一个什么级别的公司。再接下来几年,又应该达到一种什么样的水准。你想成为什么样的人,决定了你会成为什么样的人。
02、选择大于努力
在刚毕业的时候,大多人是没有太多选择的(985、211学霸们可以走开了),但是当工作三年后,有了一定的技术积累后,如何选择下一阶段的公司呢?
相信很多人都面临过这样的一些场景,手里有两个offer:一家创业公司,一家行业大公司。两家公司给的待遇都差不多,甚至创业公司更好一些。
小公司的HR往往会这么跟你说:”xx大公司一个萝卜一个坑,进去就是当一个螺丝钉。在我们这里你可以接触更多的业务,你可以学习更多的东西,小公司更锻炼人,而且我们给的钱更多,我们还给你期权”。当你屁颠屁颠入职后,进去后发现工作中既当爹又当妈,工作根本没有边界。负责的业务越多,背的锅也就越多。期权什么的都是大饼,公司倒闭了什么的,都是泡沫了。
而在大公司里,分工很明确,流程比较规范,工作的边界很清晰。分工的明确就意味着你做一个项目,可以跟好多其他工种打交道,更好的锻炼沟通协调能力。以及观察项目的规范运转模式。大公司里技术也比较成熟,可以学习到很多先进的理念,扩宽自己的技术视野。所以即便是一颗螺丝钉,你不但可以让自己更坚固,在自己的职位上拧的更紧,同时你也有机会去了解整个机器的运行原理和细节。甚至以后你能自己建造一个机器,你还会认识一些其他的优秀的螺丝钉,慢慢形成一个螺丝钉联盟,这对将来你的发展是很有帮助的。
从另外一个方面来讲,每个人应该都有一份大公司的经历背景。将来换工作的时候,HR面对众多简历,如何快速筛选出候选人? 是因为你简历里写的那些牛逼的项目?还是因为你简历里吹的天花乱坠的技术能力?都不是,因为你有一份大公司的工作背景。这绝对是个加分项。越是知名的公司,越看中同类规模公司的工作经历。
还有一种情况虽然选择了一家小公司,但是误打误撞进入了一家幼年独角兽,比如2000年左右加入了阿里巴巴。那你今天就不用看这篇文章了。但是这种概率毕竟太小。经验不具备可复制性,创业成功的概率太低了,中间还得经历多少坚持和挣扎才能成长为呼风唤雨的神兽呢。
03、个人能力提升
好多朋友已经忍不住了,道理我都懂啊,我也想进BAT,但是实力不允许啊!这就是另外一个问题,职业规划做好的前提下,配套服务一定得跟上,那就是个人能力的提升。
在工作两三年后,大概在25岁-28岁之间,绝对是你进入大公司的最好时机。这个时候的你,风华正茂,朝气蓬勃,未来有无限的可能性,并且需要的薪水并不太高。你并不需要非常强的技术能力就能进去。一旦过了30岁,并不是说进不去了,而是普通职位已经不向你开放了,你需要更强的技术能力,差不多某方面专家的水平,才能进去。
怎么样提升自己的技术能力呢?答案只有两个字:
工作中学到的只能保证你不被别人落下。工作之外的时间,才是你提高的机会。毕业时同一批进入公司的同事,工作两年后,突然要离职,因为他收到了BAT的offer,你肯定会酸酸的想,他运气比较好,面试的时候没问什么难题。其实你并不知道他在工作之外的时间是怎么度过的。
刚毕业的前两三年,千万别荒废,这个时候大多数的人都还没有成家立业,甚至还没有对象,这绝对是你能静下心来好好学习技术的最佳时间。等你结婚生子后,琐事繁多,属于你个人的时间就越来越少。
肯定会有人说,工作太忙没有时间学。这个大家都懂,借口而已!
另外一个问题,测试工程师应该学什么呢?自动化还是性能?Java还是Python,APP端还是服务端?
答案很残酷,都得学!
但是人的精力是有限的,所以一定得排优先级。我的建议是代码优先。对于已经有两三年工作经验的测试工程师来说,基本的测试素养已经在工作中得到了锻炼。但是代码能力是测试工程师的一个短板,这也是大公司非常看重的一点要求。毕竟代码能力强的孩子,其他方面一般也不会太差,你学习代码的过程中,还会学习到其他方面的知识,如数据库、网络协议、操作系统等。这对你的提升的全方位的。
那么代码学到什么程度呢?
对于一个测试工程师来讲,先系统学习掌握基础类库和api,达到掌握的程度;再学会使用企业内常用开发框架,达到一种会用的程度。
代码学习后,再去学习行业内常用的一些自动化框架和性能框架,你就会感觉比较容易上手了。
需要注意的是,学代码一定要边学边练,争取自己开发一些小工具,一是对理论的一个实践,二是会有阶段性的成就感,鼓舞自己坚持下去。
如果你通过一段时间的学习加实践,能成功搞定(自动化工具开发+上线)一整套自动化工程,那你就比国内95%的码农都要厉害了,这时就是你挑公司而不是公司挑你了。
在测试测开的整个体系中,自动化测试又是缺口最大的,而真的能独立做自动化的人凤毛菱角。很多功能测试的同学想转型做自动化时都会遇到这些问题——
-
自学找不到门路,迟迟没有进展
-
市面上的视频零零散散不系统,不能系统串联知识点
-
代码0基础,脚本看不懂,改都不知道怎么改
-
最核心的问题是没有项目实战!企业就不认可,导致不能转型成功
基于市场上大量的软件测试开发人员岗位需求,和人才缺口之间的矛盾,我们的课程完美的匹配了各大厂对测试开发的能力要求。帮助了上千位测试同学快速积累了测试开发实战经验,并成功进入一线互联网大厂。
我的自动化测试之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,所以,我和朋友特意花了一段时间整理编写了下面的《自动化测试工程师学习路线》,也整理了不少【网盘资源】希望会给你带来帮助和方向。
一、先学习一门编程语言,建议python
二、Python自动化测试框架应用
三、自动化测试篇 - Web UI 自动化
四、自动化测试篇 - 移动端UI 自动化
五、自动化测试篇 - 接口自动化测试
六、自动化测试篇 - 持续集成Git、jenkins、Docker
七、自动化测试篇 - 性能测试LoadRunner、jmeter、app性能
八、自动化测试篇 - WEB安全测试、渗透测试、漏洞扫描
九、自动化测试篇 - RobotFramework、AirTest
10、测试开发篇-自动化测试平台开发
11、互联网高薪测试拓展知识、Redis、MongoDB、Nginx集群实战
上面就是我为大家整理出来的一自动化测试工程师发展方向知识架构体系图。希望大家能照着这个体系在3-4个月完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
送给大家一句话:
让自己变得更强:想一想,如果你想在测试这个行业一直做下去,你的经验和测试技术是远远不够的,你需要进阶,你需要丰富你的技术栈!还等什么!
绵薄之力【资源分享】
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】
这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享~【下方小卡片】
相关文章:

互联网衰退期,测试工程师35岁之路怎么走...
国内的互联网行业发展较快,所以造成了技术研发类员工工作强度比较大,同时技术的快速更新又需要员工不断的学习新的技术。因此淘汰率也比较高,超过35岁的基层研发类员工,往往因为家庭原因、身体原因,比较难以跟得上工作…...

动态规划(以背包问题为例)
1) 要求达到的目标为装入的背包的总价值最大,并且重量不超出2) 要求装入的物品不能重复动态规划(Dynamic Programming)算法的核心思想是:将大问题划分为小问题进行解决,从而一步步获取最优解的处理算法。动态规划算法与分治算法类似ÿ…...

Java异常
异常的体系结构 在java的Throwable下有Error和Exception两个子类 Error(错误):程序运行中出现了严重的问题,非代码性错误,无法处理,常见的有虚拟机运行错误和内存溢出等Exception(异常):是由于代码本身造成的问题,可以进行处理,异常一个可以分为运行时异常和编译时异常 运行…...

别克GL8改装完工,一起来看看效果
①豪华商务头等舱 别克GL8作为商务车,不管是家用还是商务接待,原车内饰都太掉档次了,所以车主要求全部换掉。>>织布座椅换成航空座椅 主副驾:改装纳帕皮 中排:改装水晶宝座豪华版航空座椅,带通风、加…...
mac 中 shell 一些知识
mac 设置环境变量首先得看你所使用的 shell shell 是一个命令行解释器,顾名思义就是机器外面的一层壳,用于人机交互,只要是人与电脑之间交互的接口,就可以称为 shell。表现为其作用是用户输入一条命令,shell 就立即解…...
CentOS 配置FTP(开启VSFTPD服务)
网上已经有很多关于VSFTPD的配置,但有两个通病,要么就是原理介绍太多,要么就是不完整,操作下来又要查询多篇文章才能用。 我这里不讲原理,只记录操作,尽可能通过复制下面的操作可以实现FTP读写功能。方便自…...
Http的请求方法
Http的请求方法对应的数据传输能力把Http请求分为Url类请求和Body类请求 1.Url类请求包括但不限于GET、HEAD、OPTIONS、TRACE 等请求方法 2.Body类请求包括但不限于POST、PUSH、PATCH、DELETE 等请求方法。 3.原因:get请求没有请求体(好像也可以…...

Python字典-- 内附蓝桥题:统计数字
字典 ~~不定时更新🎃,上次更新:2023/02/28 🗡常用函数(方法) 1. dic.get(key) --> 判断字典 dic 是否有 key,有返回其对应的值,没有返回 None 举个栗子🌰 dic …...
文本处理工具
Grep工具的基本使用grep作用:grep是行过滤工具;用于根据关键字进行行过滤提示:通过alias命令设置grep别名,搜索参数时带颜色显示alias grepgrep colorauto 命令语法格式:grep [选项] 参数 文件名grep命令选项ÿ…...

C++STL详解(三)——vector的介绍和使用
文章目录vector的介绍vector的使用vector的定义方式vector的空间增长问题reserve和resizevector的迭代器使用begin 和endrbegin和rendinsert 和erasefind函数元素访问vector迭代器失效问题1:inserse插入扩容时空间销毁造成野指针问题2:erase删除或者inse…...

GEBCO海洋数据下载
一、数据集简介 GEBCO(General Bathymetric chart of the Oceans)旨在为世界海洋提供最权威的、可公开获取的测深数据集。 目前的网格化测深数据集,即GEBCO_2022网格,是一个全球海洋和陆地的地形模型,在15角秒间隔的…...

【C++容器】vector、map、hash_map、unordered_map四大容器的性能分析【2023.02.28】
摘要 vector是标准容器对数组的封装,是一段连续的线性的内存。map底层是二叉排序树。hash_map是C11之前的无序map,unordered_map底层是hash表,涉及桶算法。现对各个容器的查询与”插入“性能做对比分析,方便后期选择。 测试方案…...

ACM-蓝桥杯训练第一周
🚀write in front🚀 📝个人主页:认真写博客的夏目浅石.CSDN 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝 📣系列专栏:ACM周训练题目合集.CSDN 💬总结:…...

python基础—字符串操作
(1)字符串: Python内置了一系列的数据类型,其中最主要的内置类型是数值类型、文本序列(字符串)类型、序列(列表、元组和range)类型、集合类型、映射(字典)类型…...

【Spring】通过JdbcTemplate实现CRUD操作
个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 通过JdbcTemplate实现 增删查改一、添加相关依…...

实战|掌握Linux内存监视:free命令详解与使用技巧
文章目录前言一. free命令介绍二. 语法格式及常用选项三. 参考案例3.1 查看free相关的信息3.2 以MB的形式显示内存的使用情况3.3 以总和的形式显示内存的使用情况3.4 周期性的查询内存的使用情况3.5 以更人性化的形式来查看内存的结果输出四. free在脚本中的应用总结前言 大家…...

嵌入式入门必看!调试工具安装——基于 AM64x核心板
本章节内容是为评估板串口安装USB转串口驱动程序。驱动适用于CH340、CH341等USB转串口芯片。 USB转串口驱动安装 适用安装环境:Windows 7 64bit、Windows 10 64bit。 本文测试板卡为创龙科技SOM-TL64x核心板,它是一款基于TI Sitara系列AM64x双核ARM Cortex-A53 + 单/四核Cort…...

JAVA开发(java类加载过程)
1、java语言的平台无关性。 因为java语言可以跑在java虚拟机上,所以只要能装java虚拟机的地方就能跑java程序。java语言以后缀名 .java为文件扩展名。通过java编译器javac编译成字节码文件.class 。java字节码文件通过java虚拟机解析运行。所以java语言可以说是编译…...

【vulhub漏洞复现】Thinkphp 2.x 任意代码执行
一、漏洞详情影响版本 thinkphp 2.x但是由于thinkphp 3.0版本在Lite模式下没有修复该漏洞,所以也存在该漏洞漏洞原因:e 和 /e模式匹配路由:e 配合函数preg_replace()使用, 可以把匹配来的字符串当作正则表达式执行; /e 可执行模式,…...

LeetCode 1145. 二叉树着色游戏 -- 简单搜索
二叉树着色游戏 提示 中等 199 相关企业 有两位极客玩家参与了一场「二叉树着色」的游戏。游戏中,给出二叉树的根节点 root,树上总共有 n 个节点,且 n 为奇数,其中每个节点上的值从 1 到 n 各不相同。 最开始时: 「一…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...

算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...

基于Java+VUE+MariaDB实现(Web)仿小米商城
仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...
在树莓派上添加音频输入设备的几种方法
在树莓派上添加音频输入设备可以通过以下步骤完成,具体方法取决于设备类型(如USB麦克风、3.5mm接口麦克风或HDMI音频输入)。以下是详细指南: 1. 连接音频输入设备 USB麦克风/声卡:直接插入树莓派的USB接口。3.5mm麦克…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程
STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...

实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...

Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...