• 11
  • 11
分享

前言

今年是笔者本科毕业的第6年,在接近三十而立的年龄里,回首自己从毕业到现在的职业生涯,可以说是一波三折。趁着自己现在有时间,就做一个复盘和总结,分享给曾经和我一样迷茫的朋友,希望能够带给你一些启发。

一、考研失利,“捡到”一个国企的offer

笔者是某末流211大学电子信息工程专业科班出身的,大四那年有些不知道“天高地厚”地拒绝了本校保研,准备跨考复旦大学的金融专业研究生,结果当然是华丽丽地当了一回“分母”。话说那时候考研还不是很卷,如果我坚持考自己专业,应该也是可以上岸一所不错的学校的,但是造化弄人.......于是乎,完美地错过了当时的秋招,只能急匆匆地追赶春招的步伐。地球人都知道春招无论是从岗位数量还是岗位质量上都远不及秋招。何况笔者本身专业水平并不强,大学期间也没有什么拿得出手的项目竞赛经历,再加上考研失利确实让我沮丧了很久,所以找工作的进程并不顺利。记得是当年的六月初了,周围的人都在准备毕业答辩、拍毕业照、各种散伙饭,唯独我还在为工作的事到处面试奔波。

突然有一天,辅导员私信我说:“有一家国企要招一个技术支持,因为前面拿offer的同学临时决定出国留学,所以多了一个HC出来,面试估计不会很难。你要不要去试试?”我赶紧应了下来,第二天就参加这家公司的面试,所幸面试题目也真的不难,而且当时很多同学都已经签约了,所以竞争并不大,再加上211学校牌子的加成吧,我很顺利地拿到了Offer并签了三方协议。对于这个“捡来”的offer,我真的心存感激,如果没有它,我真的可能会毕业就失业了。

【经验教训】考研一定不要眼高手低,盲目跟风跨专业。

二、初出茅庐,开始了“打酱油”的日子

其实直到签约我都不太明白技术支持到底是干什么的,只是想着好歹是个国企,有个工作总比毕业就失业强吧。接下来就水到渠成地写论文、答辩、毕业。入职国企是七月中旬,我们一行50多个应届生参加了为期一个月的岗前培训,培训结束后才会分配具体的岗位和工作地点。这里不得不说,国企的培训制度还是很完善的。岗前培训的内容丰富多彩:军事训练、企业文化、职场礼仪、专业理论知识、专业实训......也是在这一个月的培训里我才明白了技术支持这个岗位主要的工作内容是:客户项目方案的规划设计、公司软硬件系统的安装实施、系统调试、故障排查、售后答疑、客户培训等等。很有特色的一点就是这个岗位要经常出差,一年基本有250天都在客户现场。当时初出茅庐的我,似乎并不排斥需要出差的工作,甚至很喜欢。因为出差可以到处玩。

但是培训结束后岗位分配的结果却打碎了我的“美梦”---50多个应届生,好像只有我被分配到了北京的服务运营岗,其他人都是全国各地的技术支持岗。服务运营岗的主要工作内容就是:制定客户服务的政策和流程;审批客户服务合同的内容是否合规;项目招投标文案的撰写;服务文化的宣传等等。总而言之,是一个类似“文员”的岗位,除了写招投标文案的时候有些忙,其他时间几乎都很闲,线上审一下合同、打几个电话、回复几封邮件一天的时间就晃过去了。也许这种工作对于有家庭有孩子需要照顾并且事业心不强的职场妈妈来说,是个不错的选择,因为工作稳定轻松、待遇一般、福利齐全......但是对于工科生的我来说,真的很难熬:明明很闲,却还要在工位上呆上一整天;一年到头,感觉什么都没学到,没有任何成就感;工资在帝都也不过勉强果腹的感觉.....于是,这份工作我干满一年后,年轻气盛的我果断“裸辞”去寻找诗和远方了。

【经验教训】工作不易,千万千万不要裸辞,尤其是自己能力还很弱的时候。

三、误入外包干测试,在人生低谷积攒能量

裸辞后,我先是和几个大学同学去了一趟云南旅游,然后又开始到处投简历。果然裸辞都是没有好下场的,当时的我虽然还很年轻,但是由于只有一年打酱油的文员工作经历,所以工作找的很困难,连续一个月连面试机会都没有。后来我就把工作地点改成了全国,终于有一家杭州的外包公司给我打了电话,简单地问了一下我过往的工作经历后,他们就给我发了OFFER并且将我派到HW项目上做测试。

HW作为一家业内知名的大公司,有着非常完善的测试流程和规范,让我这个测试小白也能在这样的大框架下很快地上手。刚开始的时候,师傅让我照着产品手册搭建测试环境,顺便熟悉一下产品的业务和功能。并且每次开需求评审会、项目沟通会之类的都会叫我参加。在熟悉了产品功能后,师傅开始让我参与其中一个小模块的测试工作,需要自己写用例、执行用例、管理BUG等。那时候的我像一个上紧发条的机器,白天在公司上班完成领导的任务,晚上自己学习软件测试的基本知识:比如软件开发的流程是什么、什么是软件测试、什么是BUG闭环、如何设计测试用例、如何撰写测试报告、什么是需求评审、如何同开发沟通等等。除了测试知识外,我也自学一些必备的技术知识:比如如何安装数据库,数据库的SQL语句怎么写,LINUX的文件结构是什么,主要的shell指令有哪些等等。在当时,我的学习渠道主要是自己购买书籍以及关注一些测试方面的网站和公众号,也就是从那个时候开始我关注了51test公众号,公众号每天都能推送几篇硬核技术文,让测试小白的我大开眼界。工作中,遇到不会的我也会主动请教组内的同事,这样做了半年后,我基本上是一个合格的功能测试人员了,给我一个功能模块,我能很快地学习它的业务,搭建测试环境,编写用例,执行测试,管理BUG,输出测试报告。但是那个时候,提交BUG只局限于把复现步骤写清楚并且把报错截图发给开发,其他的都等着开发去解决就好了。

直到有一次我和甲方(也就是HW)的一个正式测试工程师出差去客户现场做验收测试,我看到甲方工程师做测试的时候不仅是简单的点击鼠标,而是会运用各种调试抓包工具抓取Log,分析定位问题,找到问题大概的原因后,再反馈给相应的开发。这时,我知道我离大厂的差距还很远。于是乎,我开始主动请缨要求从事一些比较复杂的工作,并且也慢慢熟悉那些调试工具的使用,了解产品背后的技术原理、系统内部的结构、各模块之间的通信协议等等。此后在测试中再发现问题,我就不是简单地截图丢给开发了,而是学着和开发一起抓log,复现bug最终定位问题所在,然后辅助解决问题。期间,我还自学了性能测试工具loadrunner的使用,以及持续集成工具Jenkins。就这样在外包公司又干了半年。

但是新的瓶颈又来了,毕业两年还是一个外包公司的“点工”,接触不到公司的核心技术,做的产品都是边角料的内部系统。记得有一次大学同学聚餐,有个在大厂做JAVA开发的男生说自己在自学机器学习神经网络的东西,我连忙问了一下“什么是神经网络啊?”我才意识到大厂正式工和外包工的差距不仅是工牌,而是眼界和格局。那时候我就暗下决心:最多再过一年,我一定要去大厂。

【经验教训】持续学习才能成长,阳光总在风雨后。即使在外包公司或者小私企,工作待遇工作内容工作环境都不太尽如人意的情况下,也要持续学习丰富自己。毕竟机会总是给有准备的人的。

四、念念不忘必有回响,终于等到了大厂

自从立下了要去大厂的目标,我就开始在各类招聘网站上搜集大厂的招聘信息,尤其会对照里面的招聘要求找差距。这时候我发现大厂很少招专门的功能测试人员,他们更倾向于招聘全栈测试人员。所谓全栈测试人员指的是既要做功能测试、性能测试,还要参与自动化测试方案与效率工具链的开发。并且有些具体的岗位还要求熟悉大数据、安卓、IOS平台,掌握一门或多门主流编程语言。

瞧瞧,大厂的高薪果然并不是那么好拿的啊。做测试不仅要会找BUG,还要会编程,懂架构熟悉平台。显然我在外包公司的工作内容已经不能满足大厂的招聘要求了。这时候我购买了网课,跟着老师学习java+selenium自动化测试框架;又购买了一些大数据方面的书学习大数据的主流技术;与此同时,我找到领导要求从功能测试组换到自动化测试组。就这样半工半学了半年多,我开始给大厂投简历。我第一次面试是TX,当时挂在终面白板coding环节了,那是一道中等难度的去重算法题,由于我之前一直在学习框架的原理、基本业务代码的编写,忽略了算法的学习,所以挂了。自那之后我开始在力扣上刷算法题,花了两三个月的时间基本上把基础题和中等难度题都刷了一遍,又找大厂的同学帮忙内推,这一次果然得到了幸运之神的垂青,我顺利通过面试拿到了offer。

如今入职大厂已经三年有余,在一线大厂的互联网测试团队,测试工程师需要对整个产品质量负责。具体说来就是从需求初审、需求终审、测试用例的设计,测试环境的搭建、测试用例的执行,UAT验收,回归验收,项目上线、线上监控、ABtest等整个流程都会参与其中,并辅之以接口自动化测试和CI/CD持续交付等来提高测试效率。UI自动化因为项目变动频繁且考虑到ROI,我所在的组只做了核心功能的用例。线上监控和日志平台也是用的自研的系统。另外各种环境部署都配合Docker,也慢慢由Mesos迁移到K8S。

你要问我在大厂和外包最大的区别是什么?我想应该是平台和环境吧。以前在外包大家都只专注于自己手头的业务测试,基本上是“工具人”的状态,由于项目时间紧张,除法自己利用业余时间学习,否则外包公司很少会给你职业发展上的指导。而大厂给了你更大更好的平台,周围的同事素质也都很高,和他们交流碰撞能有很多新的思路和想法冒出来,并且基于大厂的业务需求和海量数据,你可以让这些想法真正地落地,收获职业上的那种成就感。

【经验教训】锚定目标不放松,功夫不负有心人。在大厂这几年,我除了收入的提高,专业上的提升,还顺利考上了985高校的非全日制研究生,也算是了了一桩心愿吧。这些都是曾经在国企当文员或者在外包公司干测试时,想都不敢想的事情。所以,我还是建议同学们有机会去大厂看看!


作者:咖啡猫

文章来源:51testing软件测试原创文章

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 在编写 Junit 测试时,我采用了同一套格式。如此,对于测试用例我就可以遵循这套格式进行编写和阅读,使所有的测试都整体划一。这种格式模板可以帮助我更快的编写测试,提高工作效率。今天我就与大家分享我的这套格式模板。(译者评:与我在测试建设原则中提出的继承原则相同,都是在进行一项测试工作之前,将公共的进行提取,统一格式模板,然后在以后的测试活动中都继承这套模板开展。)文件格式首先,在项目的测试包下新建一个测试文件/测试类,并且创建测试方法。在编写测试文件/测试类时,所有的测试文件/测试类都以 Test 结束,这样会容易理解其是一个测试文件/测试类,也方便后期维护时查看,编辑。例如一个名字为&nb...
            14 14 1814
            分享
          •   App已经渗透到每个人的生活、娱乐、学习、工作当中,APP作为现如今几乎最广泛的应用程序,在所有的移动平台上都有应用,并且以极高的速度增长。但是作为程序而言,出现的时间并不是非常久。很多原有的软件测试流程和思想无法直接套用在APP的测试中,因为和一般的PC端软件相比,APP又具有很多特殊的属性。  例如,传统软件针对不同的平台甚至系统,都会有完全对应的版本,而APP一般对于系统版本并不敏感;其次,APP基本都是轻量化开发,无需复杂的设置或者调试,往往都是傻瓜化安装,上手难度极低;另外,APP的运行环境基本上是以无线连接为主(3/4/5G,WiFi),对于网络连接的速度比较敏感……这些都是和...
            12 12 1344
            分享
          •   个人是去年年底零基础转行,两三千培训费学出来,学完后也是稀里糊涂,仅是知道功能测试就是找问题,其他接口,性能,数据库,python基础,虚拟机搭建网站都实现了课程展示那样。面试资料背了将近一个星期,简历照着别人的改的,培训老师简单模拟了一场,当晚第一次oppo的线上面试,当时紧张的不得了,双腿一直抖,为了缓解压力,还是开着燃气烤火炉面试的,题也是难得一批,linux命令全是不常见,python实现循环根本不会,cookie和session倒是背了,数据库查询考了一条,场景题挂了,最终被虐待体无完肤。第二天去了成都现场面试,期间也有电话面试,第二个面试场景题完败,简单的图片复制测试,我只知道...
            0 0 801
            分享
          •   在接口自动化测试过程中,经常遇见提交数据的接口测试,开发设计的提交数据的方式常为POST、PUT、PATCH等,对于这些接口测试同学们也不陌生,几乎做接口自动化测试都会涉及。在提交数据过程中,不知大家是否遇到提交数据内容正确,请求方法(如POST)和请求资源路径正确但提示数据类型不支持(如:报错415 Unsupported Media Type)的问题?常在河边走,哪有不湿脚的题主本人就遇到了。  从一开始的一脸懵逼到后来的仔细查看,外加服务端日志分析,终于发现问题所在:题主在使用POST提交数据时,习惯性将Content-Type设置为application/json格式,而测试接口接...
            12 12 2144
            分享
          •   写在前面  前几天五一放假期间,偶然在一个测试群里看到一位群友提问“Jmeter如何生成合法的身份证号”。我们都知道,如果是Python或Java语言,借助第三方库,很容易就能够模拟出合法的身份证号。在此之前,我也遇到过使用Jmeter生成身份证号的场景,但那时候我们的接口没有身份证号的合法校验。为了方便起见,在传参时都是用函数助手生成18位长度的随机数字字符串传递。于是,出于好奇和热心,在经过自己一番实践过后,解答了他的问题。因此,本篇也是一次解答群友问题的实践记录。  Jmeter生成身份证号的三种方法  方法一:通过RandomString函数  熟悉Jmeter的人都知道,Jmet...
            0 0 4957
            分享
      • 51testing软件测试圈微信