软件测试「转行」答疑(未完更新中)
软件测试行业「转行」答疑(未完更新中)
- ⭐文章简介
- 一、2023年「互联网」行业现状!
- 二、0基础转行「互联网」的5句大实话建议!
- 三、互联网有哪些「职业」,可以选择?
- 四、这些职业之间的优缺点介绍。
⭐文章简介
- 如果你对于互联网的职业了解一知半解!
- 不知道行业的前景如何?
- 对于众说纷纭的引流博主说法不知所措!
- 不确定这个行业到底适不适合自己?
那么这一篇文章可以告诉你所有真实答案,足以作为你唯一的参考!
一、2023年「互联网」行业现状!
这篇文章,告诉你,自己是否适合转行互联网!
过去的10年,属于互联网的「黄金时代」「野蛮生长时代」。
而如今,互联网迎来了它的「业务收缩调整」和「裁员潮」!
过去10年,互联网每天似乎都会诞生一个新的软件、平台、业务需求旺盛,人员大量的招聘,投资人一掷上亿的疯狂。
而如今,贸易战、疫情、房地产危机、疫情、国际等等原因,不仅仅是互联网,而是整个市场都陷入低迷。
带来的变化,就像我上面说的:
- 大量中小公司倒闭。
- 大型公司退市、缩减业务、由盈转亏。
- 几乎所有公司进行了大量裁员,截止目前为止,虽然裁员潮过去了,但是依然少量裁人。
- 几乎所有公司减少招聘需求,提高招聘标准(起步本科相关专业,具有工作经验)。
二、0基础转行「互联网」的5句大实话建议!
看这篇文章的朋友,估计也问过不少培训机构或者其他引流博主。
相信我,甭管你是初中生、大专生、小众专业、工地搬砖5年经验、还是35岁的少年。
他们的统一回答都会是你没问题,这行业现在很好进,只要你努力学,轻松月入过万,我们这包就业的!
但是老师傅告诉你几句大实话,建议你认真看看!
- 也是最最重要的一点,你最少具备「统招本科文凭」,最好是「计算机相关专业」!不是说大专不行,而是相对比而言,本科就业的公司可选范围比较多,大中小公司你都可以获得「面试机会」。
- 转行年龄根据你的文凭而定,除非你是研究生,否则不建议超过25岁!
- 别以为努力学技术就可以,这个行业不仅仅是技术,不谈工作,就单纯聊聊面试,不是你背一背培训机构的资料,项目内容就能混过去的。
- 行业轻松月入过万是不可能得,就以西安来说,你没个5年比较优质的公司、项目经验,技术或管理没有突出能力的,自研公司是不可能拿到这个数,何况现在入行那么艰难!
- 培训出来的同学,你学的再好,面试发挥再好,顶了天仅能说自己具备“2-3”年的工作经验。
三、互联网有哪些「职业」,可以选择?
我以大家比较关系的技术类岗位进行介绍。

如果你还没有接触过,甚至对于图片中的岗位和工作内容不了解,我举个简单例子类比说明。
我们转行的小伙伴中,土木专业的同学比较多,就用工地举个例子。
- 产品经理,就像一个工程的设计师,对接甲方后,设计出“楼房、别墅”等这些建筑的图纸和标准。
- 项目经理,很好理解,就像一个“包工头”,当然这个包工头要么就是高管,要么就是一个工作经验极其丰富的员工,对于产品理解、开发技术、测试等各方便都比较了解,最重要的是经历过独立带领多个比较大型的研发团队项目经验。
- Ui同学,一个将产品经理的文档,实现成一个2D预览交互产品的岗位,便于前端同学实现页面。
- 开发团队,不难理解,实际就是搬砖、盖楼的同学。
- 测试团队,就像一个质检工程师一样,利用各种各样的工具,从图纸设计阶段到竣工后的所有流程和结果,都需要进行质量上的监管。
- 运维团队,我想不出来…
四、这些职业之间的优缺点介绍。
产品经理
优点:
- 职业生命周期比较长。(统招本科)
- 职位比较稳定。
- 工作内容不涉及到太多技术性的内容,能力的强弱主要以个人能力、经验、项目为主。
缺点:
- 最怕入错行,一定要选择好未来的行业发展方向,举个例子:如果你在「电商」深耕5年之后,去做「军工」项目,你的电商经验,大概率是不被认可的!
- 比较烧脑,你需要将领导或者甲方的想法,通过个人经验,将这个想法从0-1的实现成具体可进行参照开发的文档说明书。
- 想做到高级产品经理,不仅仅是这些内容,还需要对于产品的开发技术和实现有一定的认知,不然开发忽悠你,你又很懵怎么办? 就我认识的几乎所有做到领导层次的产品经理,对于产品开发质量、开发进度都有很深入的把控!
- 岗位比较少,一般一个小型公司,就一个,甚至老板自己就干了。
- 因为岗位太稳定,所以招聘一般不会有,有也就那几个。
- 测试人员也会参与竞争,内部大多数产品经理,都是由一些不喜欢研究代码,对于业务很感兴趣的测试同学转岗担任。
- 很重视沟通、理解能力,如果这两样你不行,我不建议选。
项目经理
这个职位主要是管理研发团队。
大概率是领导自己人,所以私底下被我们吐槽最多,因为不懂技术,瞎指挥!
当然也会由高级产品经理、开发架构师、高级测试管理担任,所以在一个比较OPEN的公司,大家都有机会竞争。
后端开发工程师
优点:
- 门槛比较高,需要掌握的技术比较多、深。(统招本科)
- 工作岗位稍微比较稳定。
- 薪资基本高于其他同级别岗位。
- 岗位招聘需求,比较多。
缺点:
- 容易秃顶!
- 比较烧脑,就算用框架生成代码,用CSDN复制粘贴代码,一个自研公司每个月的代码量都让你写到手软。
- 不是你想当然的仅仅写个代码就完了,你还需要按照公司要求,输出概要设计、详设、接口文档、各种文档报告,总之你以为的一天8小时写代码,实际上文档就占用你小半天,你还没脾气!
- 不是你想当然得写写代码和写写文档,理解、沟通也很重要,不然你以为BUG是怎么出来的?!BUG是要扣工资的,BUG多了,你离再见也不远了!
- 自研公司的开发,加班极其严重,因为活多到你干不完,还要干的好!
- 你以为开发技术很重要?NONONO!一个优秀的开发,对于业务理解绝对是很优秀的!相信我,90%的开发,都在写业务,只有10%的开发金字塔大神,在研究框架、算法技术!
前端开发工程师
就国内而言,略比后端的各个优缺点少到30%,不做过多介绍。
测试工程师
优点:
- 门槛比较低,前期基本掌握测试基础和一些简单的工具,如果你会自动化,有一个能拿得出手的第一份工作项目简历,大概率比较好找工作的。(统招本科)
- 工作岗位稍微比较稳定。
- 也许你干个若干年后,会像我一样,大学的白头发都变成了黑头发。
- 晋升的方向比较多,管理、技术等都有。
- 岗位需求比较多。
缺点:
- 薪资略对于其他岗位。
- 因为门槛低,所以大多数人选择这个职位转行,导致初级~中级测试的竞争压力很大。
- 因为每天都在测试,所以作为初级~中级测试想成长,工作时间是不够的,需要自己私下里投入时间学习!
- 和开发一样,需要承担项目质量和进度的压力,这一点也同样,如果做的很不好,也会被裁员。
- 加班略少于开发,大部分都是项目后期测试时间,会进行加班。
- 你以为会写代码很重要?一个优秀的测试,不仅仅技术上能够满足工作要求,对于业务,甚至说面对任何事物、项目,都能快速分析,进行业务测试,甚至通过用例,就能100%避免业务问题,避免70%的异常问题。这也是我常说的测试思维,很重要!
- 一小部分开发,受不了项目开发压力,也会去转测试,但是其实没有那么好转,通过我的观察 开发思维其实比较粗暴简单,而测试思维更复杂! 说句实话,开发都没做好的同学,测试也不会做得很好,因为两者关注的其实还是业务理解!,当然有些开发会比较抵触我这句话,说我会开发,我直接搞各种牛逼自动化框架,但是各位同学,你要明白一个原理,测试框架也好、工具也好,一定是服务于产品质量的,此外,没有哪一个自研公司,是单独会提供一个岗位让你搞自动化。
运维工程师
就像图里介绍的,小公司开发自己就干了,中型企业一般一个就够了,更何况,现在云服务这么成熟,阿里等供应商,技术上已经达到自动化运维,只要你是氪金用户,甚至都提供专属客服人工运维服务了!
所以,岗位比较少,坑比较稳定…
相关文章:
软件测试「转行」答疑(未完更新中)
软件测试行业「转行」答疑(未完更新中) ⭐文章简介一、2023年「互联网」行业现状!二、0基础转行「互联网」的5句大实话建议!三、互联网有哪些「职业」,可以选择?四、这些职业之间的优缺点介绍。 ⭐文章简介…...
计算机网络---TCP/UDP
TCP/UDP 1、TCP三次握手 四次挥手? TCP是一种面向连接的、可靠的字节流服务。在建立TCP连接时,需要进行三次握手,而在关闭TCP连接时,需要进行四次挥手。具体来说,TCP三次握手的过程如下: 客户端向服务端发送SYN报文,表示请求建立连接。服务端收到SYN报文后,向客户端发…...
Docker私有仓库打开2375端口(linux)
前言 在我们开发测试过程中,需要频繁的更新docker镜像,然而默认情况下,docker的2375端口是关闭的,下面介绍如何打开端口。 1、打开步骤 1.1、修改配置 登录docker所在服务器,修改docker.service文件 vi /usr/lib/sys…...
底部Taber的抽取
1.会抽取一个布局样式 2.布局样式里面抽取一个底部样式 这个是layout的代码 <template><view class"layout-wrapper"><view class"layout-content"><slot></slot></view><!-- 底部 --><Tabbar :activeInde…...
Bootstrap中固定某一个元素不随滚动条滚动
可以利用类sticky-top实现固定某个元素在顶部的效果,示例代码如下: <!DOCTYPE html> <html> <head><meta charset"UTF-8"><title>固定某一个元素不随滚动条滚动</title><meta name"viewport&quo…...
时序数据库 IoTDB 发布端边云原生解决方案,有效优化工业互联网数据上传时效与资源消耗...
2023 年 9 月 8 日,由中国通信学会、福建省工业和信息化厅主办的 2023 中国国际工业互联网创新发展大会在厦门举办。大会主论坛中,时序数据库 IoTDB 发表其自研建立的端边云原生解决方案,该方案可实现端侧设备、边缘服务器、数据中心数据的协…...
Spring Boot中实现发送文本、带附件和HTML邮件
SpringBoot实现发送邮箱 引言 在现代应用程序中,电子邮件通常是不可或缺的一部分。在Spring Boot中,你可以轻松地实现发送不同类型的邮件,包括文本、带附件和HTML邮件。本博客将向你展示如何使用Spring Boot发送这些不同类型的电子邮件。 步…...
MySQL5.7版本与8.0版本在CentOS系统安装
目录 前置要求 1. MySQL5.7版本在CentOS系统安装 1.1 安装 1.1.1 配置yum仓库 1.1.2 使用yum安装MySQL 1.1.3 安装完成后,启动MySQL并配置开机自启动 1.1.4 检查MySQL的运行状态 1.2 配置 1.2.1 获取MySQL的初始密码 1.2.2 登陆MySQL数据库系统 …...
【gitlab】从其他仓库创建项目
需求描述 解决方法 以renren-fast脚手架为例 第一步 第二步 第三步 第四步 参考文章...
【ARM CoreLink 系列 6 -- DMC-400控制器简介】
文章目录 1.1 DMC-400 简介1.1.1 DFI(DDR PHY Interface)1.1.2 DFI 接口组1.1.3 DMC-400 兼容协议1.1.4 DMC-400 特性1.1.5 DMC-400 Interface 1.1 DMC-400 简介 DMC-400是一个由ARM开发、测试和授权的动态内存控制器,同时 DMC-400也是一个符…...
在 Azure 中开发云原生应用程序:工具和技巧
Azure 中的云原生开发工具 Azure 包含一系列用于云原生应用程序开发的内置工具和服务。这里介绍的服务和工具是很好的入门选择。 发展 Azure 包括两个用于开发和构建云原生应用程序的主要工具:Visual Studio (VS) 和Azure应用服务。 VS 是一个集成开发环境&#…...
【Redis】基础数据结构-字典
Redis 字典 基本语法 字典是Redis中的一种数据结构,底层使用哈希表实现,一个哈希表中可以存储多个键值对,它的语法如下,其中KEY为键,field和value为值(也是一个键值对): HSET key…...
平板第三方电容笔怎么样?便宜的ipad触控笔推荐
苹果原装的电容笔与国产的平替电容笔最大的区别在于,平替电容笔只有一个斜面压力感应,而苹果电容笔既有斜面压力感应,又有重力压力感应。但是,如果你不经常使用它来进行绘画的话,你也不必买选择这款苹果电容笔…...
pytorch_神经网络构建3
文章目录 卷积神经网络实现卷积层,池化层池化层:数据标准化AlexNet卷积网络深层网络结构vgggoogleNet网络结构ResNet网络结构DensNet网络结构训练卷积神经网络会遇到的一些问题学习率衰减 卷积神经网络 前面讲述了逻辑回归分类,模拟函数回归问题,单层,深层网络,它们以点和向量…...
遗传算法入门笔记
目录 一、大体实现过程 二、开始我们的进化(具体实现细节) 2.1 先从编码说起 2.1.1 二进制编码法 2.1.2 浮点编码法 2.1.3 符号编码法 2.2 为我们的袋鼠染色体编码 2.3 评价个体的适应度 2.4 射杀一些袋鼠 2.5 遗传--染色体交叉(crossover) 2.6 变异--基…...
【golang】go 返回参数 以及go中 裸返
一、Go 返回参数命名 在Golang中,命名返回参数通常称为命名参数。 Golang允许在函数签名或定义中为函数的返回或结果参数指定名称。或者可以说这是函数定义中返回变量的显式命名。基本上,它解决了在return语句中提及变量名称的要求。 通过使用命名返回参…...
elasticsearch深度分页问题
一、深度分页方式from size es 默认采用的分页方式是 from size 的形式,在深度分页的情况下,这种使用方式效率是非常低的,比如我们执行如下查询 1 GET /student/student/_search 2 { 3 "query":{ 4 "match_all":…...
32、Flink table api和SQL 之用户自定义 Sources Sinks实现及详细示例
Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…...
Java练习题-用冒泡排序法实现数组排序
✅作者简介:CSDN内容合伙人、阿里云专家博主、51CTO专家博主、新星计划第三季python赛道Top1🏆 📃个人主页:hacker707的csdn博客 🔥系列专栏:Java练习题 💬个人格言:不断的翻越一座又…...
【SV中的多线程fork...join/join_any/join_none】
SV中fork_join/fork_join_any/fork_join_none 1 一目了然1.1 fork...join1.2 fork...join_any1.3 fork...join_none 2 总结 SV中fork_join和fork_join_any和fork_join_none; Note: fork_join在Verilog中也有,只有其他的两个是SV中独有的; 1 一目了然 1.…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...
【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...
【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)
前言: 双亲委派机制对于面试这块来说非常重要,在实际开发中也是经常遇见需要打破双亲委派的需求,今天我们一起来探索一下什么是双亲委派机制,在此之前我们先介绍一下类的加载器。 目录 编辑 前言: 类加载器 1. …...
Canal环境搭建并实现和ES数据同步
作者:田超凡 日期:2025年6月7日 Canal安装,启动端口11111、8082: 安装canal-deployer服务端: https://github.com/alibaba/canal/releases/1.1.7/canal.deployer-1.1.7.tar.gz cd /opt/homebrew/etc mkdir canal…...
React父子组件通信:Props怎么用?如何从父组件向子组件传递数据?
系列回顾: 在上一篇《React核心概念:State是什么?》中,我们学习了如何使用useState让一个组件拥有自己的内部数据(State),并通过一个计数器案例,实现了组件的自我更新。这很棒&#…...
高效的后台管理系统——可进行二次开发
随着互联网技术的迅猛发展,企业的数字化管理变得愈加重要。后台管理系统作为数据存储与业务管理的核心,成为了现代企业不可或缺的一部分。今天我们要介绍的是一款名为 若依后台管理框架 的系统,它不仅支持跨平台应用,还能提供丰富…...
李沐--动手学深度学习--GRU
1.GRU从零开始实现 #9.1.2GRU从零开始实现 import torch from torch import nn from d2l import torch as d2l#首先读取 8.5节中使用的时间机器数据集 batch_size,num_steps 32,35 train_iter,vocab d2l.load_data_time_machine(batch_size,num_steps) #初始化模型参数 def …...


