面试碰壁,作为一个27岁的测试工程师,感到未来迷茫

前言

  程序员到了30岁是一个非常尴尬的年龄,大部分企业对于30岁以上的程序员都会比较迟疑。面试碰壁,感觉到受挫,如果面的又是自己非常想去的公司,会更加的难过。而内心恐慌可能是多次受挫,开始陷入自我怀疑,不确定未来该何去何从,感觉很迷茫!

 

为什么会出现这种状况呢?

  · 压力增大,力不从心

  三十岁也到了结婚的年纪了,有些孩子估计都有了,再加上父母也基本五六十岁了,压力陡然增大,家庭生活压力、房贷压力、身体健康压力、小孩教育压力、赡养老人的压力。而程序员本就是工作量大,经常需要加班,种种事情拖住自己,没有什么激情去专一地去想工作上的事情和思维,力不从心。

  · 普通程序员可替代性太强

  有实力的公司太少,导致很多程序员做着最基础的工作,长此以往很难有较大的技术提升。而这种最基础的工作,替代性就很强了,很多比你年轻的程序员都很够把你替换掉,现在每年毕业那么多大学生,计算机软件相关专业的肯定不少,有一两年工作经验的一抓一大把,一句话,较大年龄加上较弱技术能力,导致在企业中不吃香了。

  · 公司成本问题

  很多公司为了减低工资开销,往往会裁掉一批人,而30多岁往上,不是技术骨干这种人,往往是最优先被裁掉的。

  如何改变

  对未来的迷茫,对自己本身从事的编程工作产生不确定性,自己还能不能一直做下去?

  (1)调整好心态

  迷茫和焦虑都是正常的,每个年龄段的人都有其烦恼,有情绪反应说明自己现在还活着,而情绪本身推动自己改变的动力,相信这些问题最终这些问题都会解决,自己也会找到解决方案。

  我们要先静下心来分析自己面试失败的原因,然后在找到对应的解决方法。

  (2)提升专业能力

  作为三十岁的IT从业者来说,应该正处在职场竞争力比较强的时期,积累了大量的技术经验,但如果还是面临着找不到工作的问题,大概率是专业技术较弱,可替代性很强,这样在年轻的程序员面前就没有什么竞争优势了。

  如果你的专业技术强,年龄不会成为你的限制,如果专业技术稍微弱一点,选择机会就少些。说到底还是要提升自己的专业能力,持续保持甚至是提升自身的职场竞争力。如果你无法做到更新自己的技术,那么等待你的就是淘汰。

  我按照薪资的不同大致划分成3个档位:

  · 月薪5-9k:从零基础入门到能够找到工作

  · 月薪15-25k:测试在职搞定性能测试自动化测试

  · 年薪30W+:搞定测试开发,进入一线大厂

  第一阶段:月薪5-9k,刚刚入行,先学会功能测试

  可能你是刚毕业的学生,也可能你是打算转行进入软件测试这个行业,那么首先以下基本的理论你是必须要掌握的:

  软件测试的定义、生命周期、工作流程、需求分析

  测试用例的设计、编写、评审;

  bug的基本知识以及禅道的使用;

  测试计划、测试报告的编写;

  SVN、Git版本控制工具的使用;

  搞定上上面的这些基本必备内容,就已经知道可以做具体的实战内容,这个时候最好是先找一个web测试项目去做一下,假如一个项目拿到手之后,按照下面的一套流程跑一遍:

  发布项目进行立项,建立项目组进行分工;

  需求评审,学会如何看需求文档,进行需求分析,罗列测试点;

  整理测试点,编写测试用例,然后进行用例评审;

  执行测试,比如功能、界面、前后台、兼容性、数据库,对于发现的bug提交到禅道;

  分析、总结、编写测试报告;

  这个流程完整的跑一遍之后,只能说对于整体的测试流程算是掌握了,但是仍然不足以找到一份合适的工作,想要学会做功能测试,以下的内容也是必须掌握的:

  Linux、数据库、接口测试APP测试等

  OK,搞定了这些,恭喜你已经可以投出你的简历去寻找一份测试的工作了!

  第二阶段:月薪15-25k,搞定性能、自动化测试,独当一面!

  先说性能测试,行业内是有很多误区和痛点的:

  · 只测不调,无法给出研发和运维人员执行建议

  · 无法定位问题,缺乏清晰的逻辑和数据证明价值

  · 性能测试工具≠性能测试

  · 性能测试技术体系落后(loadrunner),急需拥抱开源软件

  如果要搞定这些问题,那么性能测试你得这么去学:

  性能测试的概念和流程:常见问题剖析、流行工具、方案设计

  性能测试工具:jmeter工具的使用、实战;jmeter多协议、拓展与定制;分布式压测与任务调度;

  性能监控:性能监控体系与监控数据采集

  性能实施:分布式服务压测,场景设计、场景执行;测试结果关联分析,TPS、响应时间、线程关联分析,压力和资源使用率关联分析

  性能分析与报告:jvm调试与系统调试;性能瓶颈分析

  性能测试你能到这个程度,15k那是妥妥的了,如果下面自动化测试的学习内容你能够掌握,那就可以直接冲击月薪25k!

  搞定Python或者Java语言,建议先从Python入手,先学习Python的基本语法等。

  web端的自动化测试:selenium安装、录制、处理;web控件、JavaScript脚本、PO模式;

  移动端APP自动化测试:appium使用、录制、元素定位方法;APP控件定位、交互,参数化用例;appium问题定位分析、源码分析、二次封装;

  服务端接口自动化测试:接口自动化测试框架request;接口请求构造、断言;json/xml请求、响应断言;headcookie处理、认证体系;

  第三阶段:月薪30k+,对标大厂,冲击测试开发岗位!

  性能和自动化玩精通,月薪在10k+甚至是20k+都是很轻松的,那如何冲击30k+呢,这就要求往技术专家或者管理层去发展了,但是即使做管理,也必要要求技术水平够硬?说做管理不需要技术精通?你试试底下的人会不会反你?

  在测试开发的路线上,就要求更加专精,更加全面:

  完善测试技术体系:Linux、docker、shellSQL、Python/java

  打牢自动化测试技术基础:

  web自动化测试:selenium测试框架;PageObject设计模式、原则、演练;

  APP自动化测试:Android自动化测试框架;appium高级应用于原理剖析;APP自动化测试实战;测试框架封装改造;ios自动化测试;

  移动专项测试:健壮性测试、弱网测试、崩溃检测、耗电量分析等;移动端性能测试;移动端安全测试

  接口自动化测试:接口协议与抓包、代理技术与mock;接口自动化测试框架、HTTPrunner测试框架;dubbo接口自动化测试;接口管理工具swagger、接口安全测试

  docker容器技术:docker容器、docker镜像;

  持续集成/持续交付/devops:jenkins持续集成;Jenkins持续交付;

  在这里,我想给想进阶的朋友们一点建议:很多时候,很多事情,并不像你想象中的那么简单,千万不要自认为简单而不愿意去做,很多东西只有你亲手去做了之后,才会发现事情并不像你最初想的那么简单。

  做为一名高级软件测试工程师,我想分享一下这些年来,我对于技术一些归纳和总结,希望能帮助到有心在技术这条道路上一路走到黑的朋友!

最后:下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!【100%无套路免费领取】

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

8小时传疯!大厂面试真题全被大佬整理在这个小程序上了!【软件测试,建议收藏】

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础 

  全套资料获取方式:点击下方小卡片自行领取即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的Java多线程小应用程序,模拟小球碰壁反弹的效果: ```java import java.awt.Color; import java.awt.Graphics; import java.util.Random; import javax.swing.JFrame; import javax.swing.JPanel; public class BallGame extends JPanel implements Runnable { private static final long serialVersionUID = 1L; private int x = 0; //小球的横坐标 private int y = 0; //小球的纵坐标 private int xSpeed = 5; //小球的横向速度 private int ySpeed = 5; //小球的纵向速度 private int ballSize = 50; //小球的大小 public static void main(String[] args) { JFrame frame = new JFrame("Ball Game"); //创建窗口对象 frame.setSize(500, 500); //设置窗口大小 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置窗口关闭操作 BallGame ballGame = new BallGame(); //创建游戏面板对象 frame.add(ballGame); //将游戏面板添加到窗口中 frame.setVisible(true); //设置窗口可见 Thread thread = new Thread(ballGame); //创建线程对象 thread.start(); //启动线程 } public void paint(Graphics g) { super.paint(g); //调用父类的方法 g.setColor(Color.RED); //设置画笔颜色 g.fillOval(x, y, ballSize, ballSize); //画出小球 } public void run() { while (true) { x += xSpeed; //更新小球的横坐标 y += ySpeed; //更新小球的纵坐标 if (x + ballSize >= getWidth() || x <= 0) { //判断小球是否碰到左右边界 xSpeed = -xSpeed; //小球反弹 } if (y + ballSize >= getHeight() || y <= 0) { //判断小球是否碰到上下边界 ySpeed = -ySpeed; //小球反弹 } repaint(); //重新绘制面板 try { Thread.sleep(50); //线程休眠50毫秒 } catch (InterruptedException e) { e.printStackTrace(); } } } } ``` 这个程序使用了Java的多线程技术,通过不断更新小球的坐标来模拟小球碰壁反弹的效果。运行程序后,会出现一个窗口,里面有一个红色的小球在不断移动。当小球碰到窗口的边界时,就会反弹。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值