发布时间:2024-10-11 11:01
一转眼,也到了三十而立的年纪。
反观自己,到了这个时候,更多的是迷茫、彷徨、焦虑、无措
但也在不断地跌跌撞撞中,找到了自己的节奏和目标。
测试工作6年,经历过不同产品、共事过不同专业背景、能力的同事,踩过测试各种坑、遇到过各种bug。测试职场生涯积极努力上进业务和技术能力快速进步过、也有努力付出却一无所得过、有对测试生涯前景充满希望认为一片朝气蓬勃过、也有对中年危机思考不知何去何从迷茫过。一直在努力,一直在思考,一直在探索。
6年测试生涯,不同的产品、不同的人、不同的事,经历着不一样的经历,带给我不一样的思考。思考着如何不断提升自己、思考着是否一直走测试这条路、思考着如何转型、思考着如何做好现在以应对未来、思考如何可以赚更多的钱。问题一直都在,我也一直在努力寻找答案的路上。
一个不算好的小二本,专业也是被调剂的-信息与计算科学,看起来高大上的专业,实际到真正学习的时候才发现,学习的东西泛而不精,数学知识与计算机知识掺杂,导致大学学了五年后,对什么都一知半解,更找不到毕业后的方向和职业规划。
一个偶然的机会,接触到了嵌入式,听说发展前景很好。由于当时对就业的迷茫,终于没能抵挡住诱惑,就这样,大四那年基本都是在嵌入式学习中度过的。但是后面的事情不容乐观,越学越觉得自己不适合做编程,尤其是涉及到跟硬件相关的东西,更是一窍不通。学了一年,什么都没学到,顶多算把大学里学的C语言、C++基础巩固了下。
但是这个学习过程也并不是没有一点好处的,一般企业看到毕业生有多项技能,会对你更加感兴趣,自己去找工作时也更加有信心,虽然实际并没有比别人强多少,但简历还算漂亮……鉴于自己对写代码并不感冒,认真考虑后,决定毕业后从事软件测试行业。
仔细回想,整个新员工期间有几个事情印象比较深刻。反思了一下以下几点如果做得更好,也许结果会更好。
1、主动沟通。导师和leader都很忙,可以主动找他们沟通,可以发消息沟通、导师空闲时间工位沟通、发消息预约时间、吃饭时间闲聊都可以。吃饭时是一个很好时间段,尽量跟导师、老员工、新员工等一块吃饭。有更多的沟通时间也可以让你更快的融入这个团队。
2、重复问题尽量不问第二遍。我的导师挺烦这个的。所以问问题得到的信息量大时我就会打断他找个本子记录回去慢慢整理。
3、跑步上岗。有好的机会该抓住就该抓住。不要害怕自己这不会那不会。不会不是什么大问题,怕的是不敢承担。多问多学多沟通,注意处理问题的方法能解决很多问题。
4、在有能力做好本职工作前提下,可以多关注一下其他角色有关的是事情。其实本来也是,测试就是一个端到端的任务,很多信息都会影响到你对测试任务的评估。包括测试计划、测试风险。
5、学习、动手、总结、分享。新员工就是一张白纸,什么都要学。业务、技术、流程、沟通的技巧等等。努力提升自己。记得印象很深的一句话,当时去管理产品I的时候,与合作测试leader定位一个工具报错的问题。shell写的。看不懂。。合作测试leader说了一句,原来管理我们的人都懂啊。。其实,当时是有点尴尬的。。当然现在这个已经是so esay了。。
2017年7月份,毕业如期而至,还好找工作并没有想象中的那么难,参加了一次校园招聘,就直接被录用了。
我毕业后的第一家公司,暂且称它为“A公司”。在A公司一共工作了三年,这三年时间对我的影响非常大。实习期间,遇到了我师父,算是我的伯乐之一。师父人特别好,尤其对我们这些刚毕业的没有任何工作经验的实习生。
从最基础的软件测试理论开始学习,然后再运用于实践-Android系统手机功能模块测试。学习期间,师父发现我有一点管理的潜质,他请假的时候,都找我来当他的backup,帮他分配任务,处理一些管理上的事情。慢慢地,接触的人越来越多。
做了大概一年的时间,被部长看中,让我来单独负责一个项目,锻炼锻炼。我诚惶诚恐,带领了四五个组员开始负责这个项目。为了让大家信服,我自己私下里不断学习,不断向研发请教各类问题,所以组员们问我问题的时候,基本都能顶下来,除了这些,我还组织组员们学习各种知识,参加各种培训,大家觉得成长了,真正学到东西了,也会愿意跟着你干。
后面项目越带越顺,项目期间也没出现过大的差错,一年时间,领导看到了我的努力,提拔我为测试经理。得到这个职位的时候,我既欣喜于自己的努力得到了回报,又深深感觉到自己身上的担子越来越大,需要更多地充实自己、完善自己,才能抵挡住各种压力,承担起测试经理该承担的责任。
做测试经理期间,也没敢有半点懈怠,值得一提的是,我来公司的两年里,软件测试一直局限于功能测试,网上看到很多自动化测试方法,但是看了之后没有头绪,刚好兄弟部门也在做自动化测试,我就跟他一起学习Python语言,学习写一些简单的自动化测试脚本,然后用到了自己的项目中,然而当时并不知道怎么判断出错,怎么抓取日志,只是初步的脚本可以跑起来。
虽然如此,内心还是有很大的成就感,起码迈出了第一步。后来我教给我组员学习,组织简单的培训,这也算测试部的一个突破吧。
做了测试经理大概一年的时间,感觉自己遇到了瓶颈,因为公司毕业生比较多,没有测试技术方面的大牛,测试技术很难得到提升。
后来,做了一个艰难的决定,离职。之所以艰难,是因为在这里三年,我遇到了我的伯乐,从毕业开始一步步指引我走上了管理岗位,遇到了很多帮助我的人,对这里的一切充满了感恩。
有人会说,我太幸运了,遇到了那么多帮助我的人。我只想说,只有平时不断学习,不断努力,当机会来临时,你才有可能抓住,否则,别人想帮你,也找不到帮助你的理由。
从A公司离职后,找工作也比较顺利。得到了几个手机公司的offer,后来决定去B公司做测试项目经理VPM。这家公司是国内外知名的大公司,而我所在平板部门是集团下的一个事业部,专门做海外产品。
在B公司工作,因为全是销往海外,所以跟各个国家的人打交道很多,需要有很强的英语功底。邮件全英文,提bug,全英文描述。我虽然英语六级,面试的时候也面试英语口语,也顺利通过了,但是真正跟外国人开会时,很多都听不懂,尤其听法国人说英语,更是不知道他在说什么,这个也一直是我的瓶颈所在,没事就疯狂地听各种英语脱口秀、英文美文等。
这里的VPM职责跟A公司不太一样,只管项目不管人,你项目需要人时需要从各个Teamleader那里协调人力,而且调到你项目的人的绩效也不是归你负责的,所以VPM丧失了主动权。但是公司目前在改革,开始朝强项目矩阵发展,但是转变的过程是痛苦的,需要适应各种的不习惯。
B公司项目管理流程做的是非常不错的,而且近期通过了TL9000审核,项目各个节点有总经理和研发总监严格评审和把关,出现问题之后,第一时间搞清楚事情来龙去脉,以及下一步的Action,没有Action必定会遭到劈头盖脸一顿骂。公司倡导“鹰”的文化,基于这样的企业文化,公司上上下下的效率很高,但是无形之中给每个人很大的压力,气氛不像A公司那么和谐。
说下重点,测试方面的。B公司测试小组分为三个:系统测试小组、场测小组、自动化测试小组。每个小组都有一个Teamleader。测试跟A公司大同小异,值得一提的是自动化测试做得比较好。
在B公司学到了两点我觉得比较重要的:项目流程管理和抗压能力。在B公司做了一年多,但是考虑到自己的终身大事,决定跟男朋友结束异地生活,毅然选择了离职。
离开B公司还是蛮多遗憾的:
1、没有做过运营商项目,不清楚各个运营商项目的流程;
2、没有等到出国深造的机会;
3、以后的工作可能没有这样的英语工作环境,除非找个外企。
目前已经得到国内一家手机公司的测试经理的offer,薪资福利达到了预期,已经决定签了。B公司的离职手续还在进行中。
这里说2个我认为对自己能力提升或者经验积累有很大帮助的2件事。
第1个就是案例学习。
学习你的产品第一个版本到目前的所有的问题、现网问题、现网案例等等,快速积累经验,提高对问题的敏感性。会对你以后的测试设计有很大的帮助。通过分析这些问题你会发现各种问题,有非常简单显而易见的、比如冒泡提示,有非常难以复现需要特殊构造场景才能发现的、有用户体验方面、性能、可靠性等等,全部分析下来你会发现自己对产品的理解、对测试的理解、对站在用户角度做测试的理解会有很大的帮助。
第2个就是针对环境搭建或者常用工具测试源码的学习。
这里的源码不是指的版本源码,主要指工具类源码,因为像环境搭建或者升级操作之类对测试来说是非常常规的操作但是又经常会遇到问题。工具源码通常来说体量都不会太大,你可以用个思维导图梳理一下工具的源码、一步一步拆解出关键步骤,每一步骤都是做什么的、输入输出是什么。到最后你再遇到环境搭建的问题,你会发现你很轻松的就可以解决。因为你对他们的报错日志、为什么会报错、定位方法了若指掌。你能解决的问题多了之后你会发现你可能在你们部门就会有影响力,你就有可能快速脱颖而出。另外,带来的附加价值你可能对该门语言能力会提高很多。。
以上就是我说的挺有价值的两件事。因为我这么干过,也确实从中获得不少收益。
基于我6年的职业经验,以下几点与大家共勉:
1、无论从事什么行业,刚毕业的几年之内,一定要先把基础打好,尤其是技术类工作。以后不论走技术路线还是管理路线,这点都是至关重要的。
2、硬功夫(专业能力)和软实力(情商)都很重要。
3、要善于记录、分析和总结。针对测试,类似于经典bug出现的根本原因、复现方式、避免漏测的办法、改进建议等总结。B公司学到的好习惯,项目过程中遇到的issue(不仅仅是bug),都清清楚楚地记录在一个表格中,包括问题描述、rootcause、action、deadline、Owner等,便于追溯,后期做Lesson learn的素材来源。
4、以小见大。出现一个bug,不要仅仅局限于这个bug,要多思考问题出现的原因,是流程出现问题了呢?还是其他原因?是不是可以优化流程来避免以后此类问题的发生呢?这样,解决一个问题相当于解决了一类问题。所以要多思考、多提建议。
5、趁自己还年轻,合理利用空余时间充电。一个人下班的时间,决定了他的高度;一个人如何使用空闲时间,决定了他能走多远。
做为一名有8年工作经验的测试人员,接下来我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名高级测试者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
这里我也整理了一份我的【自动化测试学习路线】,也整理了不少【网盘资料】,需要的朋友可以点击文末卡片获取网盘链接。希望会给你带来帮助和方向。
【自动化测试提升路线】
上面就是我整理出来的一份自动化测试工程师技术路径图。希望大家能在这个成长过程中收益良多。全方位提升测试技术,建立一套属于自己的技术体系。帮助大家不断学习和优化技术栈,跟进先进和主流的测试技术,给到大家带来的不仅仅是技术和薪资的提升,更多的是改变测试人在IT技术领域的地位和心态,拔高测试行业的技术深度。
最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….
matplotlib之pyplot模块添加文本、注解(text和annotate)
鹏城实验室支持建设的OpenI启智社区荣登2021“科创中国”开源创新榜
The Illustrated BERT, ELMo, and co中文翻译
【GNN笔记】Graph Transform Network(八)
前端基础从头学——VsCode使用教程+html基础(入门篇)
(liunx)全套青龙面板+傻妞流水版2022年4月18日更新
【Python爬虫技巧】快速格式化请求头Request Headers
原始jdbc连接数据读取字符串生成zip文件并读成byte数组
《SpringBoot系列十六》条件装配时ConfigurationCondition和Condition有什么区别?什么时候用ConfigurationCondition?
Android Flutter利用CustomPaint绘制基本图形详解