国内的互联网行业发展较快,所以造成了技术研发类员工工作强度比较大,同时技术的快速更新又需要员工不断的学习新的技术。因此淘汰率也比较高,超过35岁的基层研发类员工,往往因为家庭原因、身体原因,比较难以跟得上工作节奏,所以裁员往往优先考虑这类员工。
测试工程师也属于技术研发中的一员,所以35岁就是一个门槛了,这并不是说35岁后一定会被淘汰,但是面临的选择肯定会大大减少。
大多数人都是在22-23岁参加工作,工作两三年后逐渐积累了一些工作经验,开始进入了职业生涯的黄金期。可以看到,测试工程师职业黄金期也就十年左右。
早期的互联网行业红利期虽然已经过去了,但是也一直不断有新的机遇出现。对于大多数人来说,如何在短短十年内,通过奋斗在本职业上建立一些成就,为自己创造更多的积累呢?
我想谈谈自己对测试工程师职业生涯的一些看法,纯属个人意见,如有不同看法,欢迎在留言区拍砖讨论。
老生常谈,“职业规划”这个词大家已经都听腻了,从高中到大学,老师就一直在讲每个人要有自己的职业规划。出来工作去面试,HR也在问职业规划。但是根据我的观察,大多数人在职业生涯早期,是没有职业规划的,包括我自己,因为没有什么危机感。
事实证明,越早进行职业的规划,目标越清晰的人,将来的发展就越好。因此每个人都应该尽早确定,未来几年内,我的个人能力逐步应该达到一个什么水平,进入到一个什么级别的公司。再接下来几年,又应该达到一种什么样的水准。你想成为什么样的人,决定了你会成为什么样的人。
在刚毕业的时候,大多人是没有太多选择的(985、211学霸们可以走开了),但是当工作三年后,有了一定的技术积累后,如何选择下一阶段的公司呢?
相信很多人都面临过这样的一些场景,手里有两个offer:一家创业公司,一家行业大公司。两家公司给的待遇都差不多,甚至创业公司更好一些。
小公司的HR往往会这么跟你说:”xx大公司一个萝卜一个坑,进去就是当一个螺丝钉。在我们这里你可以接触更多的业务,你可以学习更多的东西,小公司更锻炼人,而且我们给的钱更多,我们还给你期权”。当你屁颠屁颠入职后,进去后发现工作中既当爹又当妈,工作根本没有边界。负责的业务越多,背的锅也就越多。期权什么的都是大饼,公司倒闭了什么的,都是泡沫了。
而在大公司里,分工很明确,流程比较规范,工作的边界很清晰。分工的明确就意味着你做一个项目,可以跟好多其他工种打交道,更好的锻炼沟通协调能力。以及观察项目的规范运转模式。大公司里技术也比较成熟,可以学习到很多先进的理念,扩宽自己的技术视野。所以即便是一颗螺丝钉,你不但可以让自己更坚固,在自己的职位上拧的更紧,同时你也有机会去了解整个机器的运行原理和细节。甚至以后你能自己建造一个机器,你还会认识一些其他的优秀的螺丝钉,慢慢形成一个螺丝钉联盟,这对将来你的发展是很有帮助的。
从另外一个方面来讲,每个人应该都有一份大公司的经历背景。将来换工作的时候,HR面对众多简历,如何快速筛选出候选人? 是因为你简历里写的那些牛逼的项目?还是因为你简历里吹的天花乱坠的技术能力?都不是,因为你有一份大公司的工作背景。这绝对是个加分项。越是知名的公司,越看中同类规模公司的工作经历。
还有一种情况虽然选择了一家小公司,但是误打误撞进入了一家幼年独角兽,比如2000年左右加入了阿里巴巴。那你今天就不用看这篇文章了。但是这种概率毕竟太小。经验不具备可复制性,创业成功的概率太低了,中间还得经历多少坚持和挣扎才能成长为呼风唤雨的神兽呢。
好多朋友已经忍不住了,道理我都懂啊,我也想进BAT,但是实力不允许啊!这就是另外一个问题,职业规划做好的前提下,配套服务一定得跟上,那就是个人能力的提升。
在工作两三年后,大概在25岁-28岁之间,绝对是你进入大公司的最好时机。这个时候的你,风华正茂,朝气蓬勃,未来有无限的可能性,并且需要的薪水并不太高。你并不需要非常强的技术能力就能进去。一旦过了30岁,并不是说进不去了,而是普通职位已经不向你开放了,你需要更强的技术能力,差不多某方面专家的水平,才能进去。
工作中学到的只能保证你不被别人落下。工作之外的时间,才是你提高的机会。毕业时同一批进入公司的同事,工作两年后,突然要离职,因为他收到了BAT的offer,你肯定会酸酸的想,他运气比较好,面试的时候没问什么难题。其实你并不知道他在工作之外的时间是怎么度过的。
刚毕业的前两三年,千万别荒废,这个时候大多数的人都还没有成家立业,甚至还没有对象,这绝对是你能静下心来好好学习技术的最佳时间。等你结婚生子后,琐事繁多,属于你个人的时间就越来越少。
肯定会有人说,工作太忙没有时间学。这个大家都懂,借口而已!
另外一个问题,测试工程师应该学什么呢?自动化还是性能?Java还是Python,APP端还是服务端?
但是人的精力是有限的,所以一定得排优先级。我的建议是代码优先。对于已经有两三年工作经验的测试工程师来说,基本的测试素养已经在工作中得到了锻炼。但是代码能力是测试工程师的一个短板,这也是大公司非常看重的一点要求。毕竟代码能力强的孩子,其他方面一般也不会太差,你学习代码的过程中,还会学习到其他方面的知识,如数据库、网络协议、操作系统等。这对你的提升的全方位的。
那么代码学到什么程度呢?
对于一个测试工程师来讲,先系统学习掌握基础类库和api,达到掌握的程度;再学会使用企业内常用开发框架,达到一种会用的程度。
代码学习后,再去学习行业内常用的一些自动化框架和性能框架,你就会感觉比较容易上手了。
需要注意的是,学代码一定要边学边练,争取自己开发一些小工具,一是对理论的一个实践,二是会有阶段性的成就感,鼓舞自己坚持下去。
如果你通过一段时间的学习加实践,能成功搞定(自动化工具开发+上线)一整套自动化工程,那你就比国内95%的码农都要厉害了,这时就是你挑公司而不是公司挑你了。
在测试测开的整个体系中,自动化测试又是缺口最大的,而真的能独立做自动化的人凤毛菱角。很多功能测试的同学想转型做自动化时都会遇到这些问题——
自学找不到门路,迟迟没有进展
市面上的视频零零散散不系统,不能系统串联知识点
代码0基础,脚本看不懂,改都不知道怎么改
最核心的问题是没有项目实战!企业就不认可,导致不能转型成功
作为一个过来人,对学习过程中的困难深有体会。所以我热衷于收集整理资源,记录踩坑到爬坑的过程。希望能把自己所学,实际工作中使用的技术、自学方法、心得及踩过的一些坑,记录下来。
更希望想自学的你一样,通过我的分享可以少走一些弯路,可以形成一条自己的体系,并应用到实际中。当然,也真心的希望你们升职加薪,或许这才是最实际的吧。
下面的Python自动化测试工程师进阶路线,会给你带来灵感和方向。
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、跨平台的自动化测试框架
上面就是我为大家整理出来的一份Python自动化测试工程师进阶路线。希望大家能照着这个体系去进阶学习
敲字不易,如果此文章对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。