最近刷知乎,发现有很多朋友有年龄焦虑了,比如:“我今年28了转行来不来得及”,“我今年30了还能转软件测试吗?”......这种问题在知乎上有很多,仿佛大家都觉得年纪大了,很多事情都来不及了,我来说说我的经历吧,希望可以帮助到迷茫中的你!

先说下我基本情况。我是87年的,计算机专业普通本科毕业。在一个二线城市,毕业后因为自身能力问题、认知水平问题,再加上运气不好,换过多份工作,每份工作都干不长。导致我30多岁时,还一事无成,也几乎没有积累到什么经验技术、行业知识等。甚至还一度去开过网约车,送过外卖。

转行程序员前,我每个月收入仅三四千元。2020年下定决心,准备转行!我知道自己最大的劣势就是年龄太大了,但考虑再三,因为以下几个原因,我还是决定走这条路:

31岁才转行程序员,目前34了,我来说说我的经历和一些感受吧...-LMLPHP

我目前的情况已经算是城市里的底层了。我不会做生意,没其它经验和技能,性格偏内向,销售和交际也不太擅长。所以我不怕失去什么,因为也没有什么可失去的。

我想学个谋生技能从新开始,而学开发最适合我。因为我并非0基础,毕竟大学时学的这个专业,而且自己也曾经很喜欢编程。

我对待遇的要求不高,只要工资有5k以上就行。如果能有6、7 那我就太满意了。

当时我的瞎推断:因为国内出生率特别低,以后可能没那么多年轻人供雇主挑选,所以我们这些中老年人,也有一定的机会。

受到一些心灵鸡汤的鼓励,比如什么种一颗树最好的时机是十年前,其次,就是现在!

我辞去工作,开始在家自学软件测试。主要的学习方式就是在网上看视频教程。那些视频教程,初级的基本上免费。中高级的有些会收费,大概50-300元左右一套。反正“学费”上我没花什么钱,总共不到一千元吧。

软件测试是IT相关行业中最容易入门的学科~不需要开发人员烧脑的逻辑思维、不需要运维人员24小时的随时待命,需要的是细心认真的态度和IT相关知识点广度的了解,每个测试人员从入行到成为专业大牛的成长路线可划分为:软件测试、自动化测试、测试开发工程师 3个阶段。

先是学了些测试基础。在学测试时,犹豫了下学Java还是Python。在我读书时是学过JAVA的,虽然已记得不多了。于是我就想学个新的吧!还因为Python比JAVA简单,我这个情况,肯定进不了大厂,做不了大项目了。所以就决定学Python自动化。

学完基础后,我还跟着视频教程,自己做了两三个简单的项目。在我学习过程中,让我比较有自信的是——没遇到什么挫折。当然,肯定遇到过各种问题被卡住,但自己都去百度解决了。

接下来开始准备找工作,第一个难点就是简历。快32岁的人了,如果老实说刚自学出来没任何实际工作经验,肯定是没人要的。没办法,只好去包装简历,说成有两年开发经验。瞎编简历的过程还是很困难的。以前呆的哪家公司,做了什么项目,完全凭想像去编造。

然后海量投简历,艰难地面试,不断地被淘汰…当时我的信念就是,大不了我花一年时间去找工作,找不到就继续学,直到找到为止!最终我花了近两个月时间,可能参加了20次的面试,才勉强找到份工作。

因为没有实际工作经验,造假的简历,是很容易被发现的。只要稍有经验的面试官,多追问你几个细节,就露馅了。因为你并没有做过,不可能编造出全部的细节。所以面试过程很艰难。说几次印象深刻的:

1、一家特别小的公司,还是与人合租的办公室,我当时见到的员工,似乎只有两个人。与技术面试官简单交流了几句后,他当场决定录用我,让我明天来上班,并且说稍后会发短信给我确认。但不知道为什么,后来没再联系我了。

2、另一家小公司,还是在居民小区里办公,不过办公环境还不错,约有七八个人的样子。与面试官交流的地点是在生活阳台上,面试官坐着一个简易塑料板凳,旁边是个洗衣机。和他聊了较长时间,自以为他问的所有问题,我回答得都不错,也很希望拿到这个offer。满心期待的回家等了好几天,结果也没下文了。

3、也是一家在居民楼里办公的小公司,办公环境给人压抑的感觉。去的时候就遇上,老板模样的人,在对开发人员大发脾气,那些开发人员都不敢支声。然后那老板对待我们这些面试者,态度特别粗鲁,抱怨我们为什么早到了10分钟?笔试的内容甚至包含直接给他们现有项目找bug,和改bug。我心中生气,中途离开了。

4、最后能找到工作,通过面试,主要是运气。是老板直接跟我聊的,没经过技术面试官。老板觉得我有相关行业工作经验(其实没啥帮助),又是统招本科,专业对口,就直接决定录用我了。如果当时他让懂技术的人来面试我下,估计我多半过不了。

31岁才转行程序员,目前34了,我来说说我的经历和一些感受吧...-LMLPHP

那是家小公司,连同老板在内,总共十几个人,给的待遇是6k。这待遇对于开发来说,算是最低水平了。但我当时还是很高兴。说出不来怕丢人,比起以前的工作,6k对我来说已是高薪了。

刚去上班那段时间,还是发现了很多“新奇”的东西。比如,原来还有一个岗位,叫作“产品经 理”。以前我一直以为,只需要有开发人员撸代码就行了。我怎么动手操作!

当我同事滑动着手机告诉我,此处忽略一些情节…。于是我点头,装作原来如此的样子。其实内心却震惊了!没错,我就是这么菜,甚至当时我都搞不明白,啥是接口。感觉这是一个很难的东西。

在那里呆了两三个月后,我就没那么白痴了。给我安排的日常任务,都能按时完成。呆了半年后,我渐渐地发现。我后面进来的同事,水平也不过如此,可以说基础还不如我,我还时不时给他们解答下问题。当时我还有点飘飘然了,觉得他们只不过对业务更熟悉些。

现在的我回想起来,当时我的看法大致没错。道理很简单:愿意去这家公司,拿6-7k工资(除了工资以外,啥也没有)的程序员,只能是初级水平。

经过一年的时间,我已成长为一个合格的自动化软件测试测试工程师。这里已学不到什么东西了,现在回想起来,那个公司没有任何技术氛围,在里面呆着,有一种养老的感觉,外部没有什么动力和压力,逼自己继续学习。

经朋友介绍,我跳槽去了另一家公司,很顺利地通过了笔记和面试,工资开的9k。

刚去的第一个月,我经受了很大的压力。部门负责人,看我年龄这么大,就以为我是一个很牛逼的人。就给我安排了些较难的任务,我很费力的完成了一两个后。

这里开发人员的技术水平,和上家公司完全不是一个档次的。氛围也和第一家公司不一样了,同事们经常聊各种新出来的技术。哪怕聊点8卦,也是以IT新闻为主。他们聊的东西,很多我都听不懂。让我深感自己知识面的狭窄。

这里的学习气氛也浓厚。做过开发的都知道,忙的时候真是喝水都顾不上。但有时没事,又闲得很。上家公司在没事干时,大家就偷偷玩游戏、看视频、小说等。这里没事时,大家就是看文档,学新东西。

两三个月后,我慢慢适应这里了。但还是那个问题,一直让我焦虑——年龄。同事闲聊时,我最怕聊到年龄的话题。哪怕和年龄有一点点关系的话题,我也会警觉。比如同事们聊起用的第一部智能手机。我一般就不接话,因为我用的第一个智能手机还是palm!

31岁才转行程序员,目前34了,我来说说我的经历和一些感受吧...-LMLPHP

但是,怕什么还是来什么了。

有一次聚会,又聊起年龄。每个人就在说说笑笑地报自己的年龄。轮到我时,我强笑着说:“我嘛,永远18岁。”一个正常情商的人,都会明白,这就是不愿意说,识趣的话应该也就别多问了。但是,在坐有个同事,情商真的太低了,他直接跳出来说:“他87年的!”此时,刚走进来一个95后同事,听到“87年”这三个字,顺口就说了句:“卧草,谁87年的啊?”当时我感觉整个空气都凝固了,我的大腿控制不住的抖动,背上密密麻麻地出汗,把衬衣都湿透了。我只好举手示意,说:“是我,我是85年的…”当时我的尴尬和羞愧,永远也无法忘记。

目前我工资17k,仍然是一个技术普通的测试开发人员。对于这个收入我是知足和满意的。

我是个脸皮薄,性格敏感的人,2022年又要满35岁了,哎!

其实让我目前感到尴尬和羞愧的并不完全是因为年龄。而是我的年龄和技术能力完全不匹配!公司中也有年龄和我相仿的人,但在我的眼中,他们都是技术大牛了。感觉什么都懂,随便说一个问题,他们都能给你上上课,讲讲底层原理。当我新听到一个技术概念,觉得很新鲜,正准备去了解个大概时。他们不仅熟悉,甚至还知道茴香豆的茴字,有四种写法!

青春逝去,时光不再。比我聪明,比我入行早的人,都还在努力,我现在能做的,只能是继续努力学习,仅仅希望不要那么丢脸。

对于那些一毕业就干开发,目前不到30岁,但经常听说程序员只能做到35岁,并为此焦虑的同学。请你们尽管放心,只要你们做的不是养老的工作,每年在技术上都有明显进步,找到好工作绝对没问题。至少在中型公司当个leader是没问题的。

但在此劝那些30多岁想转行程序员的人,如果你们像我一样,不是一个脸皮厚的人,一定要慎重!

不过如果呆在那种10个人左右的小公司,这种年龄尴尬,要稍好点,但就没什么技术氛围了,成长较慢。

下面是我整理的这份2021年最全的软件测试工程师发展方向知识架构体系图,会很明确的告诉你该往哪里努力:

一、测试基础

了解测试的基础技能,掌握主流缺陷管理工具的使用,熟练测试环境的操作与运维

二、Linux必备知识
Linux作为现在最流行的软件环境系统,一定需要掌握,目前的招聘要求都需要有Linux能力。

三、Shell脚本
掌握Shell脚本:包括Shell基础与运用、Shell逻辑控制、Shell逻辑函数

四、互联网程序原理

自动化必经之路:前端开发基础知识以及互联网网络必备知识四、互联网程序原理

五、MySQL数据库

软件测试工程师必备MySQL数据库知识,不仅仅停留在基本的“增删改查”。

六、抓包工具
Fiddler,Wireshark,Sniffer,Tcpdump各种抓包工具适用于各种项目,总有一款适合你的

七、接口测试工具

接口测试神器,你绕不开的强大工具:Jmeter。小巧灵活:Postman

八、Web自动化测试Java&Python
了解自动化的目的,熟练掌握TestNG&unittest自动化框架,以及断言与日志处理

九、接口与移动端自动化
专业接口调用、测试解决方案。组建完整的web和接口自动化框架,Appium整体使用



十、敏捷测试&TestOps构建
揭开TestOps的神秘面纱,持续集成Jenkins框架烂熟于心

十一、性能测试&安全测试
软件测试的彼岸:性能测试和安全测试,选个方向努力爬坑吧!

上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系在3-4年内完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。

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

其实每个程序员也能意识到目前自己面临的窘境,但能够及时作出改变,顺应时代变化的人太少了。毕竟更多人的情况是,忙着上班,也没人引路,自己也不太会规划。多数人明明“泰山崩于前,而面色如土”只能眼睁睁看着自己被行业淘汰吗?

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:938856006资料在裙里,需要可以自取

31岁才转行程序员,目前34了,我来说说我的经历和一些感受吧...-LMLPHP

 

包括一些面试真题和一些学习资料,这些资料对于学习软件测试的小伙伴来说是一个很完整的宝库了,也帮助了不少学习软件测试的小伙伴,

❤既然都看到这里啦,请你帮个忙:

1、点赞,让更多小伙伴看到;

2、关注我,持续更新测试干货。

07-23 15:16