国内的互联网行业发展较快,所以造成了技术研发类员工工作强度比较大,同时技术的快速更新又需要员工不断的学习新的技术。因此淘汰率也比较高,超过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自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享~【下方小卡片】