个人经历:去阿里、百度做测试的都是什么样的人(上)

有很多测试小伙伴向小拿反应:找工作很难,特别是进大一点的厂!他们特别挑!!!代码要会写,要有软件架构能力,问一大坨平时根本用不到的技术问题,还挑经验,挑沟通能力,挑这挑那,有时候还特么挑学历、挑年龄,甚至还有挑星座的,也是……

而招聘者同样也面临招人难的局面。想找到一个合适的人难于上青天,每天各种撒网,简历看几百份,面大几十人,能捞到一个中意的小伙伴就谢天谢地了。

总的来说:“供求难以匹配,双方都很痛苦!”

今天小拿就来聊聊IT行业中,这个让人既爱又恨的职位:测试

1、能力要求是核心问题

软件、互联网近20年来飞速成长,其实也经历了很多阶段。

在早期,测试人员的主要工作基本都投入在了基于业务的黑盒测试上,对代码能力、系统理解的能力要求不多。

2010年后,互联网行业的真正兴起让国内软件开发模式开始缓慢调头,快速迭代的模式逐步兴起,开发周期越来越短,迭代越来越快,但系统越来越越庞大、复杂。

原来的测试工作模式和工作范围越来越无法满足要求了。但大量从业人员技能范围转变是一件很难的事情,行业是有巨大惯性的。从宏观上看大量QA技能转变跟不上需求转变是造成市场供求不匹配的主要原因。

2、什么样的人抢手

那么到底什么样的人才,才会让大厂伸出橄榄枝呢?

1)有项目经验:

有比较复杂系统的测试实战经验,你就超过了50%以上的应聘者。

什么叫做比较复杂系统呢?投入50人年开发出来的系统就可以称作一个复杂系统了。因此,复杂系统并不是很罕见。但是,如果你只接触一个简单的模块,甚至只是测试一个稳定模块的维护性开发,而不是通盘理解,不能说是测试过复杂系统。有从头到尾接触一个完整项目的经历很宝贵。

2)基础知识扎实:

对照三本书:《ISTQB基础教程》 《高级软件测试设计》 《高级软件测试管理》(后两本是ISTQB的高级认证教程)。

这里边的内容你都能熟练应用(真的是熟练应用,而不只是有概念),你就能超过80%以上的应聘者了。

3)掌握一门主流语言:

满足这条,你就超过了70%的应聘者)

什么叫做熟练呢?

拿Java来说吧:系统学习过Java的教程,高频面试50题 这样的题可以自测一下,可以回答上35个以上;

熟悉最主流的Spring框架,能够写出一个简单的网站,实现基础的Restful 服务;

读懂过一个测试框架,如mockito或者Junit的源码;

能够熟练实施接口测试(基于一些测试框架 如:rest-assured+Junit);

能够读懂开发的业务代码,对他们的代码进行Code Review。d(´ω`*)

4)深入了解某一两门语言:

满足这条,你就超过了90%的应聘者。(妙啊~)

什么叫有深入了解呢?

还拿Java来说吧):

熟练使用Java的常见API;

深入理解基于语言特性/系统特性的知识,如Collections的实现机制、类型系统、I/O、网络、多线程等;

熟知设计模式(广义范围的设计模式,不局限于GOF的设计模式);

熟悉JVM的工作模式;熟练使用调试排查工具解决性能问题;

熟练掌握市面上常见的脚手架;

熟练掌握周边知识(OPs相关,网络知识相关)有不错的实战开发经验(做过真正被生产检验的东西);

对于测试开发,AOP,Java字节码技术是很重要的知识。。。 这是一个很长的学习list,需要几年时间来养成。做到这点,其实你可以胜任普通的开发岗位了,这也是高级测试开发岗位的技术底子。

5)在一个领域知识有不错的了解:

人不可能什么都懂,但工作几年之后,会在工作的域内一定要有积累才行。

例如,你测试一个核心电商系统的交易模块三年了,业务上你一定要熟练讲出来:商品列表、购物车、下单、退单、废单、支付、发货、库存、退款、优惠使用等等一坨业务流程,和可能出现的常见的坑(各类问题产生的资损、各类问题产生的服务不可用、逻辑矛盾),不然根本无法体现你经验沉淀和深入思考;

技术角度上,你要能够画得出来系统的交互图,熟悉最核心的接口和最核心的参数,能够读懂开发的代码,熟练使用trace和监控工具,诊断定位线上问题到代码行。

6)用技术保障质量的能力:

测试开发岗一定会问到一个问题:你能够举一个你用技术手段提高测试效率,增强测试能力的例子么?

这是面试时最大的一个坎。 很多人会讲一些自动化测试回归的例子,但是真正成功的例子非常少,因为为什么做,怎么做都没有想好就照网上一个教程攒了一个,结果变成了玩具。

做好自动化,不仅仅是会使用工具、框架,其实要对被测物特性,软件生命周期有很深的理解并且有很强的开发知识才行。

实际上,在环境、CI、数据、测试用例生成、数据比对的很小的一些点上,都能有不错的提效产出,从这些点能够做得好,会得到不错的加分。有一个不错的成功案例,你胜出的几率就超过了80%,没有短板,就十拿九稳了。

7)实战经历:

以前的工作印证了你的能力。

能够讲清楚一件特别拿得出手的工作,证明你能力的案例是面试时候最有用的投名状。

8)个人特质:

一般有如下特质会大大加分:快速学习、系统性学习、学以致用、系统性思考、强大的推动力、技术思维、突出的沟通能力、条理性、抗压性、乐观精神、抗挫折能力、迅速调整的能力、迭代改进的意识、ownership、团队合作、愿景和规划。

这些特性体现人的内核,有强大内核的人,做什么都行,技能暂时不足,也一定能补足。所以,在招聘的时候往往对是否录用的判断起决定性作用。

以上就是本文的上篇内容了,在下篇内容中,我们会细致的去讲高级求职者在竞争时,会面临哪些挑战和需求;已经个人如何实现转型和进阶的问题,欢迎大家继续关注。

文章来源:网络 版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/755109.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

易基因:人类大脑的单细胞DNA甲基化和3D基因组结构|Science

大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 高通通量表观基因组分析技术可用于阐明大脑中细胞复杂性的基因调控程序。5-甲基胞嘧啶 (5mCs)是哺乳动物基因组中最常见的修饰碱基,大多数5mCs发生在胞嘧啶-鸟嘌呤二核苷酸&a…

git常见使用

1. 概念 分布式,有远程仓库和本地仓库的概念,因此要注意同步问题git是面向对象的,本质是内容寻址系统。.git目录下有个文件夹objects,存储git库中的对象,git就是根据object建立一种树形结构,将文件和通过h…

spring 没完没了

start 轻量级开源的j2ee框架,容器框架 装javabean aop ioc 定义一个starter的jar包,写一个configuration配置类,将bean定义其中,在starter包的meta-inf/spring.factories中写入配置类,springboot会按约定加载该配置类 …

python代码截取任意页的pdf

python代码把截取任意页的pdf:比如你有一个pdf文件1.pdf,共有30页,但是,你想把其中的10-20页截取出来保存成新的pdf,名为2.pdf,可以使用下面代码 from PyPDF2 import PdfReader, PdfWriter# 输入和输出文件…

人工智能需要的数学基础有哪些?

作为人工智能的核心基础,数学在许多人工智能算法和模型中发挥着重要作用。以下是学习人工智能所需的数学基础: 1.线性代数:线性代数涉及向量、矩阵和线性方程组等内容。在机器学习中,特征向量和权重矩阵的运算是很常见的操作。另…

Spring Data访问Elasticsearch----Reactive Elasticsearch响应式操作

Spring Data访问Elasticsearch----Reactive Elasticsearch响应式操作 一、响应式操作使用 ReactiveElasticsearchOperations是使用ReactiveElasticsearchClient对Elasticsearch集群执行高级命令的网关。 ReactiveElasticsearchTemplate是ReactiveElasticsearchOperations的默认…

用户留存【摘录】

留存,是一个产品或者说企业,能够持续存活和不断发展的立身之本。 例如企业级SaaS产品,通常采用按年为单位进行付费的订阅模式。如果产品没有留住用户的能力,用户便会在第二年取消订阅,这将使得企业之前的投入付之东流…

Ubuntu软件开发环境搭建

Ubuntu软件开发环境搭建 安装VMware Tools网络桥接更新软件源常用功能配置时间同步共享文件夹双向复制粘贴终端初始大小和字体设置安装必要的工具 常用指令 安装VMware Tools 点击虚拟机->安装VMware Tools… 打开终端,cd到/media/用户名/VMware Tools/下&#…

语音控制模块_雷龙发展

一 硬件原理 1,串口 uart串口控制模式,即异步传送收发器,通过其完成语音控制。 发送uart将来自cpu等控制设备的并行数据转换为串行形式,并将其串行发送到接收uart,接收uart然后将串行数据转换为接收数据接收设备的并行…

探索拓展坞的奥秘:提升电脑接口的无限可能

在数字化时代的浪潮中,电脑已成为我们日常生活和工作中不可或缺的一部分。然而,随着外接设备的日益增多,电脑接口的数量和类型往往无法满足我们的需求。这时,拓展坞便应运而生,以其强大的扩展能力和便捷的使用方式&…

云项目实战

云项目是现在工作室最常见的一种项目开发形式了,但是对于码农来说,云项目只是知道,但是如何部署,开发,配置环境等操作,是否能拿得出来呢?这是一个问题,最起码对博主来说,…

在ubuntu22.04上unsupported SSL backend ‘openssl‘. supported SSL backends: gnutls

在 Ubuntu 22.04 上遇到 Git 报告 “unsupported SSL backend ‘openssl’. supported SSL backends: gnutls” 的错误,通常是因为 Git 客户端被配置为尝试使用不支持的 SSL 后端。Ubuntu 的 Git 包默认使用 GnuTLS。这个问题可能是由于全局 Git 配置错误导致的&…

旅游系统-软件与环境

一. 软件 1.Navicat、phpstudy、Idea、Vsode 参考 网盘链接 二.配置文件 1.NodeJS、JDK、Mysql 参考 网盘链接 注意点: 1.Mysql 切记需要环境变量配置 2.数据库密码要好记点的,别乱设 3.环境变量配置的路径要能找到 三.安装运行 1.下载网盘内的软件&am…

Linux docker1--环境及docker安装

一、基础环境要求 Docker分为ce版本(免费,试用7个月)和ee版本(收费)。 最低配置要求:64位操作系统,centOS 7及以上,内核版本不低于3.10 二、部署docker 1、查看服务的基础环境是否满…

使用 ONLYOFFICE API 构建 Java 转换器,在 Word 和 PDF 之间进行转换

文章作者:ajun 随着文档处理需求的增加,格式转换成为了一个重要的需求点。由于PDF格式具有跨平台、不易被篡改的特性,将Word格式(.docx)转换为PDF格式(.pdf)的需求尤为强烈。ONLYOFFICE作为一个强大的办公套件,提供了这样的转换功…

C语言数据结构与算法笔记(排序算法)

排序算法 基础排序 冒泡排序 核心为交换,通过不断进行交换,将大的元素一点一点往后移,每一轮最大的元素排到对应的位置上,形成有序。 设数组长度为N,过程为: 共进行N轮排序每一轮排序从数组的最左边开始&#xff0…

Django templates 存放html目录

模板 一概述 模板由两部分组成,一部分是HTML代码,一部分是逻辑控制代码(变量,标签,过滤器) 作用:可以通过一些逻辑控制代码减少一些重复的操作更快速的生成HTML代码,并且实现简单的…

基于Spring Boot的宿舍管理系统

摘 要 随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建宿舍管理系统。本文通过课题背景、课题目的及意义相关技术,提出了一种楼宇信息、宿舍信息、宿舍安排、缺勤信息…

pyav 处理 rtsp 视频流 options 参数选项

背景 最近接到一个老项目,算法开发的python代码,去拉取视频流,拿出来解析 里面用到了pyav,这个不是纯的python库,里面是加了其他东西的 代码里面拉取视频流很多时候会超时,就想着去修改连接选项&#xff0…

mysql笔记:21. 演示脏读、不可重复读和幻读现象

文章目录 脏读1. 设置窗口B中事务的隔离级别2. 演示脏读3. 重新设置窗口B中事务的隔离级别4. 再次验证脏读 不可重复读1. 演示不可重复读2. 设置窗口B中事务的隔离级别3. 再次验证不可重复读 幻读1. 设置窗口B中事务的隔离级别2. 演示幻读3. 重新设置窗口B中事务的隔离级别4. 再…