【面试-经验之谈】面霸是如何养成的,他的路子真的野

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 大家好,我是温大大。今天给大家介绍我的一个朋友 ———— 三石,他毕业于三本院校,学的是电子信息技术专业,在外包公司做了2年功能测试随后又跳槽去了创业公司待了3年,3年里从事性能测试+自动化测试也成长了不少,期间温大大也给了他不少的帮助和鼓励,他从2021年4月份到10月份面了近50家公司,

大家好,我是温大大。 今天给大家介绍我的一个朋友 ———— 三石,他毕业于三本院校,学的是电子信息技术专业,在外包公司做了2年功能测试随后又跳槽去了创业公司待了3年,3年里从事性能测试+自动化测试也成长了不少,期间温大大也给了他不少的帮助和鼓励,他从2021年4月份到10月份面了近50家公司,

网络异常,图片无法展示
|

这段时间他基本上每周2面,称得上是面霸,今天就给大家分享下他的「面霸之旅」。

目录

  1. 面试成果
  2. 跳槽原因
  3. 面试计划
  4. 面试技巧
  5. 谈薪资
  6. 总结

0、面试成果

  • 工作时长:2年功能测试 + 1年性能测试 + 1年自动化测试
  • 投递岗位:测试工程师 / 测试开发工程师
  • 面试时间:2021.4﹣2021.10
  • 最总成绩:半年时间内面47家公司,平均每周2家,拿到10家 offer : 美团、知乎、滴滴、B 站、Shopee,最终他选了美团拿了23K+的薪资

1 跳槽原因

跳槽的原因千万种,总结下来无非2种:

  • 钱没给够
  • 受委屈了

三石第一份工作在上海一家外包公司只有7K,所以他干了2年薪资只涨了1K,所以他第一次跳槽前者,所以他跳到了一家创业公司1干就是3年,薪资耶涨成12K左右,而且他的组长对他不错,教会了他性能测试、自动化测试,但后面他组长因为个人发展原因走了,来了1个新组长,新组长来了开始压迫三石,各种脏活累活都扔给他了,组长当甩手掌柜,所以三石第二次跳槽是因为受委屈了。

2 面试计划

不能裸辞也不能裸面,所以他坚持这2点为前提的情况下,给自己了梳理面试的计划:

  • 1、找准目标岗位
  • 2、匹配岗位差异
  • 3、制定合理学习 & 刷题时间

2.1 「找准」目标岗位

他的目标和岗位很清晰:

  • 要涨薪
  • 要测开岗位 或 进入大厂

我建议他在boss直聘/拉钩招聘app上 看看测开要求的技能,然后看看自己目前那些技能有,还差哪些技能,有针对性的去学习相关技能 和 刷对应的面试题型,虽然不能行业的测开要求的业务能力不同,但基础的通用能力是一样的:

  1. 熟练 编程语言java/python、有过工具开发或者自动化平台搭建的经验。
  2. 熟练 Mysql / DB2等数据库,除了基础数据增删改成,常用性能优化掌握 / 高级函数运用 / 数据库原理熟悉
  3. 熟练 Linux 常用命令 即脚本编写
  4. 熟悉 测试理论、自动化测试框架 及 主流测试工具
  5. 熟悉 服务器测试,了解HTTP协议、RPC协议、Web架构,了解常用消息处理、缓存、数据库相关中间件

点评:80%的 测开 或 高级测试工程师招聘要求都包含以上的内容,其实就是:语言、数据库、Linux、自动化、常见协议进行深入掌握,同时也是区别功能测试 / 初中级测试地方

除了以上的通用能力以外,还有一些硬性要求:

  1. 本科及以上学历,计算机相关专业
  2. 3年以上java开发或测试开发经验
  3. 银行交易系统相关项目经验

除了通用要求,每个行业或者公司可能有自己硬性要求,比如:学历本科、开发经验3年以上、做过该行业的项目。

点评:一般以上要求是公司层面提出来的,及时你本人特别优秀,若上面要求没达标,投了简历也可能是石沉大海,但如果有内部员工的内推那就不一样了,因为它可能帮你绕过这道坎

2.2 「匹配」岗位差异

三石觉得自己薄弱点在「编程」与 「mysql」上面,虽然自己做过自动化+性能测试(温大大写过一篇:如何进行性能测试实操) 的工作,但自己也只是测试的「执行者」,之前都是他老大搭建的 自动化框架,很多基础的功能函数都是老大封装编写的,自己做的都是边角料的工作,所以他想到了真正面试的时候肯定过不了面试官那关,所以之前三石也和温大大一直再讨论,如何将做过的自动化项目深入下去,过面试官那关,温大大分析了下,其实感觉自动化没深入的原因在于:自动化框架本来也不是你搭建,很多细节你不了解也是正常的,所以你可以带着以下几个问题再次去学习下这个框架:

  1. 前后端的数据如何传参数。
  2. 用例与数据如何分离管理。
  3. 如何封装基础的类,让用例复用性高。
  4. 如何统计自动化覆盖率。
  5. 自动化框架底层是运行如何的,尝试一步步debug一下,看一下框架启动的时候运行加载了哪些函数。
  6. 最重要的是:面试的时候一定要说清楚自动化框架这里面哪些功能是你自己实现的,哪些是公共的,一定要说清楚怎么设计这块case的,期间遇到什么问题,自己又是怎么解决的。

至于「mysql」对于三石来说也存在同样的问题,自己平时增删改查用的比较多,至于mysql的优化这些压根不设计,很多时候性能测试发现有问题,直接扔给研发或者老大,自己也从未重视过这点。

点评:除了自动化框架之外,简历里面应该体现 语言掌握的程度,例:python由浅入深:基础语法掌握、常用功能函数掌握、装饰器、面向对象编程、进程与线程、IO编程、web开发,总的来说根据项目需要去学习对应的高级编程语法,在简历里面需要写出来

2.3 制定合理学习 & 刷题时间

我们说知道了自己「很弱」不可怕,可怕的是不知道自己「很弱」,有了以上的「薄弱点」后,三石结合自己实际项目经验制定了一些学习的线路:

  1. 系统性的学习了一遍 自动化框架,主要挑重点学习,重点就是上面提到的那些问题:如何传参、如何用例与数据分离等等。
  2. 尝试重构之前老大写的底层函数,让代码编程更简洁、复用性更强,具体从代码设计角度:开闭原则、单一职责这些方面来考虑。
  3. 尝试深层次的进行一次框架级别的bug,看框架如何运行的,搞懂底层原理。
  4. 思考自动化的价值,太早介入自动化研发频繁修改没意义,太晚介入也没意义了,所以什么时候介入自动化,介入到什么程度都非常考究。
  5. mysql 深入可以从优化1个sql慢查询开始,过程是:定位慢查询、进行索引优化、搞清楚索引优化底层的B+树原理

点评:跟自己的实际项目结合起来学习,做事情前先问自己:有更好的解决方法吗,它底层是如何实现的。有的同学想说万一我的目标技能跟我工作不搭边怎么办,这时你可能就得花晚上 或者 周末的时间来找项目深入学习了

刷题主要刷以上技能点对应的面试题:

  1. 自动化 框架
  2. Mysql - 万字总结,让你从入门到入土
  3. Linux - 100道 高频面试题
  4. 网络 - 100道高频面试题
  5. 消息队列
  6. 算法 - 常见基础算法题

点评:针对第6点需要特别说明下 算法目前对于很多大厂来说是个敲门砖,即使你进去的时候用不上算法,很多公司都会考你算法题目,建议可以去牛课网去刷一些常见top20的简单 & 中级的算法题目

3 面试技巧

3.1 简历准备

网上有很多简历模版,温大大之前写过一篇:简历模版获取方法,大家可自取,需要注意的是:

  1. 线下面试,记得带一份简历,以免面试官没打印简历;
  2. 线上面试,对着简历讲项目,以免遗漏细节;
  3. 简历多发给几个信得过的、比自己有经验的朋友看,让他们给修改建议,实在找不到人也可以加温大大好友,让我帮你看下;
  4. 只写技术相关的东西,社招就别写一些没必要的内容,比如大学的普通奖项,如果犹豫要不要写,那就干脆别写;
  5. 把项目和个人技能花时间写好,个人评价

3.2 如何谈项目(重要)

需要跟面试官讲清楚 项目的「业务+框架」,更重要的是用「数据」需要突显项目里面的「亮点」,也是分为3步:

  1. 摸清「业务」
  2. 吃透「数据流」
  3. 提炼「亮点」

温大大之前也有写过一篇:如何谈提炼项目的亮点

点评:你可以先面试几家小公司,累计经验,把所有被问到的问题都记录下来,弄清楚后,在之后其他面试中确保自己不会被问到

3.3 基础知识 & 算法

像一些通用基础知识:

  1. 网络、数据库、Linux、编程语言 的一些八股文,面试前尽量去刷刷,即便你看过了但在面试中被问到时忘记了也没关系,每次把问到的基础知识记录下来,以后你就知道哪些是重点了。
  2. 算法题目肯定是有刷的必要的,特别是中高级/测开工程师,但不要花太多时间在算法上,把常见的题目刷刷,有算法感觉,面试时写不出来的话能说出思路也挺好。

点评:面试造火箭,干货拧螺丝,所以不太纠结基础知识 & 算法点,平时固定1-2小时看看刷刷,有点感觉和印象,不要太抠细节

3.4 内推很有用

  1. 获得面试机会概率很高,80%以上都是内推,都有面试机会的。
  2. 内推更方便了解岗位及团队信息。
  3. 如果与内推人足够熟悉,薪资也可以大致了解下。
  4. 面试进度更清楚,或许能加快流程。比如 BAT 这种大厂一般进度会比较慢,但走的内推,直接主管觉得你不错可能直接跟HR说要你了。
  5. 如果没有朋友内推,也可以找自己信任的猎头内推,也是有帮助,毕竟他跟公司内部人员打过交道,知道一些有用信息,同时也希望你能通过面试,他拿提成。

3.5 面试公司顺序:小、中、大

建议从中小公司开始面试,更多的是找面试感觉,

  1. 小公司和大公司面试的侧重点也太一样
  2. 中小公司要求上来就能干货对学历、背景不太看重
  3. 大公司比较看重全面的素质:不光是项目与技能,还会看重一些人才的潜力与学习技能

3.6 岗位匹配很重要

投简历的时候需要看工作内容是否符合自己预期,不能仅仅看职位名称,如果是面试官是 测试负责人可以在面试前具体聊聊工作内容,这样提高面试效率。

具个例子:测试开发工程师其实有很多细分的工作方向,

  1. 搞工程效能的,主要负责:工具或平台开发类的开发工作。
  2. 搞性能测试专项的,主要负责:业务组内性能测试工作,以及系统平台告警监控工具开发。
  3. 搞自动化测试专项的,主要负责:基于业务的自动化用例实现等工作。

点评:中途发现这个公司的工作内容不符合自己预期,并且面试问题对自己收获也不是很大,主动跟 HR 说终止后续面试,节约时间

3.7 潜规则1:多投简历才是王道

三石在第一天就练习了40多个岗位,但回复他的只有几个,从此之后他看到有合适的,就疯狂投递简历。 只要你的简历不是特别优秀,就没多少人愿意回复你的,更多的是一些外包公司每天会联系你。

3.8 潜规则2:保持自己爱学习 & 谦虚的态度

很多时候即便自己回答不出来面试官的问题,也谦虚请教一句:为什么是这样的呢,正常的面试官会告诉你耐心告诉你,同时觉得你很好学。 同时及时发现面试官有些回答跟你理解的不一致:也别打断面试官讲话、语气也别太强硬,你想想你愿意找一个每天跟自己吵架的人作为同事么

3.9 潜规则3:面试前多背通用问题

  1. 你碰到的难题,怎么解决的(考察:技术面试官会问技术相关的)
  2. 你最有成就感的一件事 (考察:你身上的闪光点,尽量说跟工作相关的事情)
  3. 你经历过什么挫折,你的优缺点 (考察:你受挫能力,是否能爬起来)
  4. 平时怎么学习的,最近有看过哪些书这些问题可以提前准备下(考察:你自主学习能力) 以上的问题需要提前想好怎么回答,如果因为这些问题留下不好印象,太不值了

4 谈薪资

4.1 面试顺序挺重要

  1. 先面小公司 或 不想去的公司,拿到合适的offer,再拿这个offer 与想去的公司谈。
  2. 如果能力强,可以先面二线大厂,拿到合适的offer,再去面一线大厂,这样薪资能要的更高。

4.2 敢于要价

如何跟HR谈薪,必读

  1. 对于特别不想去的公司,可以要一个高的价格;如果给了,那就拿这个薪资谈其他 offer,如果没给,大不了不去。
  2. 如果有熟悉的猎头或者内推人,可以向他们打听符合自己工作年限的某个公司的合理价格,这样不至于薪资太低。
  3. 预期薪资尽量说一个区间,例:18k-25k,只要不是高的离谱,HR最后还是会给你1个他们能给的offer,如果你最低的能接的说太低,就没有商量的余地了。
  4. offer一旦确定很难再改,例:你拿到了A公司的 offer,结果收到 B 公司更高薪资的 offer 并且高了很多,这样你在找A公司调offer都难了,而且还给A公司留下不好的印象。

5 总结

  1. 前期的面试计划很重要,确定你要去的公司,然后查漏补缺,看哪些技能需要加强的,自己就专门花时间补。
  2. 面试中项目是重中之重,所以需要好好准备。
  3. 基础知识的八股文有时间尽量刷刷,也是敲门砖,能力再强也可能被八股文卡住。
  4. 中小公司看重项目,大公司看重:项目+基础+算法,还可能有学历。
  5. 即使1-2次面试挂了也没关系,并不能说明你能力有问题,只是说明你跟他们职位不匹配,多尝试,多总结,总能找到适合自己的公司。

往期干货:

【学习-工具篇】

1、selenium 入门级

2、jmeter 入门级

============================================

【面试-实战篇】

1、如何谈自己项目

2、如何转性能测试

3、脱产1年, 如何能拿下offer

4、半年实习经验,如何脱颖而出

===========================================

【面试-八股文篇】

1、SQL万字总结

2、Linux 万字总结

3、网络 万字总结

4、app测试 万字总结

===========================================

【面试-资料篇】

0、各种白嫖资料汇总

1、「看简历」获取,后台回复:看简历,加温大大好友帮忙看简历 / 模拟面试

2、「简历模板」获取,回复:简历

3、「大厂面试真题」获取,后台回复:面经

4、「大数据书籍」获取,后台回复:大数据

============================================

【学习-大数据测试】

1、大数据测试(科普)

2、大数据测试vs传统大数据测试区别

3、大数据测试分层(详细解释)

4、大数据学习路线


关注我,加我好友拉你进面试群,一起讨论面试干货 / 套路,大家一起升职加薪

点击链接:温大大

让我帮你规划下学习线路 & 职业规划线路,帮你升职加薪。

关注公众号:「测试猿温大大」

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
存储 分布式计算 大数据
HBase分布式数据库关键技术与实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入剖析了HBase的核心技术,包括数据模型、分布式架构、访问模式和一致性保证,并探讨了其实战应用,如大规模数据存储、实时数据分析及与Hadoop、Spark集成。同时,分享了面试经验,对比了HBase与其他数据库的差异,提出了应对挑战的解决方案,展望了HBase的未来趋势。通过Java API代码示例,帮助读者巩固理解。全面了解和掌握HBase,能为面试和实际工作中的大数据处理提供坚实基础。
411 3
|
6月前
|
SQL 分布式计算 监控
Sqoop数据迁移工具使用与优化技巧:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入解析Sqoop的使用、优化及面试策略。内容涵盖Sqoop基础,包括安装配置、命令行操作、与Hadoop生态集成和连接器配置。讨论数据迁移优化技巧,如数据切分、压缩编码、转换过滤及性能监控。此外,还涉及面试中对Sqoop与其他ETL工具的对比、实际项目挑战及未来发展趋势的讨论。通过代码示例展示了从MySQL到HDFS的数据迁移。本文旨在帮助读者在面试中展现Sqoop技术实力。
493 2
|
6月前
|
监控 负载均衡 Cloud Native
ZooKeeper分布式协调服务详解:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入剖析ZooKeeper分布式协调服务原理,涵盖核心概念如Server、Client、ZNode、ACL、Watcher,以及ZAB协议在一致性、会话管理、Leader选举中的作用。讨论ZooKeeper数据模型、操作、会话管理、集群部署与管理、性能调优和监控。同时,文章探讨了ZooKeeper在分布式锁、队列、服务注册与发现等场景的应用,并在面试方面分析了与其它服务的区别、实战挑战及解决方案。附带Java客户端实现分布式锁的代码示例,助力提升面试表现。
579 2
|
6月前
|
数据采集 消息中间件 监控
Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
272 1
|
6月前
|
XML 分布式计算 监控
Oozie工作流管理系统设计与实践:面试经验与必备知识点解析
【4月更文挑战第9天】本文详述了Oozie工作流管理系统的核心概念,包括安装配置、Workflow XML、Action、Coordinator和Bundle XML定义。此外,讨论了工作流设计实践,如监控调试、自动化运维,并对比了Oozie与其他工作流工具的差异。文中还分享了面试经验及解决实际项目挑战的方法,同时展望了Oozie的未来发展趋势。通过学习,读者能提升Oozie技术能力,为面试做好充分准备。
142 0
|
6月前
|
SQL 存储 分布式计算
Hive数据仓库设计与优化策略:面试经验与必备知识点解析
本文深入探讨了Hive数据仓库设计原则(分区、分桶、存储格式选择)与优化策略(SQL优化、内置优化器、统计信息、配置参数调整),并分享了面试经验及常见问题,如Hive与RDBMS的区别、实际项目应用和与其他组件的集成。通过代码样例,帮助读者掌握Hive核心技术,为面试做好充分准备。
585 0
|
6月前
|
机器学习/深度学习 SQL 分布式计算
Spark核心原理与应用场景解析:面试经验与必备知识点解析
本文深入探讨Spark核心原理(RDD、DAG、内存计算、容错机制)和生态系统(Spark SQL、MLlib、Streaming),并分析其在大规模数据处理、机器学习及实时流处理中的应用。通过代码示例展示DataFrame操作,帮助读者准备面试,同时强调结合个人经验、行业趋势和技术发展以展现全面的技术实力。
569 0
|
6月前
|
消息中间件 监控 大数据
Kafka消息队列架构与应用场景探讨:面试经验与必备知识点解析
【4月更文挑战第9天】本文详尽探讨了Kafka的消息队列架构,包括Broker、Producer、Consumer、Topic和Partition等核心概念,以及消息生产和消费流程。此外,还介绍了Kafka在微服务、实时数据处理、数据管道和数据仓库等场景的应用。针对面试,文章解析了Kafka与传统消息队列的区别、实际项目挑战及解决方案,并展望了Kafka的未来发展趋势。附带Java Producer和Consumer的代码示例,帮助读者巩固技术理解,为面试做好准备。
647 0
|
6月前
|
Android开发 缓存 双11
android的基础ui组件,Android开发社招面试经验
android的基础ui组件,Android开发社招面试经验
android的基础ui组件,Android开发社招面试经验
|
6月前
|
数据采集 XML 程序员
最新用Python做垃圾分类_python垃圾分类代码用key和format,5年经验Python程序员面试27天
最新用Python做垃圾分类_python垃圾分类代码用key和format,5年经验Python程序员面试27天
最新用Python做垃圾分类_python垃圾分类代码用key和format,5年经验Python程序员面试27天
下一篇
无影云桌面