我的质量检查工程师之路:从倦怠到高考

图片

你好!我叫Luba,是Lamoda联络中心系统开发团队的质量检查工程师。

最近,自从我在公司工作以来已经过去了三年,这使我开始思考并重新审视自从我选择该专业以来做出的决定以来发生的事件。在职业道路上的某个时刻,我遇到了精疲力尽的情况,并且快要完全离开这个行业。但是我没有离开,相反,我继续在同一个领域意识到自己,而且,我在一个地方工作了相当长的时间,到目前为止我不会离开。

软件测试-这是我想要从事的职业吗?


我是受过教育的数学家兼程序员,但是在该学院,我意识到我不想成为一名开发人员。相反,测试对我来说立即很有趣,因为它需要多种技能(同时仍然是编写代码的机会)。

在我职业生涯的前三年中,我曾在两家公司工作过,并且在这两家公司中我都从事银行软件的测试工作-我非常感激我以前的工作以及曾帮助我获得该行业初步经验的前同事。

首先,我在平板电脑/移动设备(iOS,Android)和桌面客户端-服务器应用程序上测试了WEB应用程序。我开始应用不同类型的测试,而新技术出现在我的技术经验储钱罐中:

  • 我学会了通过命令行完成在* nix系统中工作所需的一切;
  • 了解了如何向Oracle DBMS发出请求;
  • 学会了创建和自定义测试环境,包括使用VirtualBox;
  • 我意识到了日志的重要性,并学习了如何使用它们以及如何按级别进行调整。

然后,我找到了一家提供测试和分析服务的外包公司。这项工作给我带来了很少的技术经验:仅仅了解了SoapUI,集成测试,并且在一个项目中,我设法让更多人参与了测试移动应用程序。

但是在某些项目中,我设法尝试自己担任一小部分测试人员的分析师和测试负责人。我与同事和客户进行了很多交谈,这有助于我发展软件技能。

在最初的三年中,我意识到我没有记错,测试真的非常多样化,而且我喜欢这方面的工作。但是,出现的经验越多,我就越会开始挫败一些最初可以接受的观点。基本上,这些是公司采用的工作流程组织的特征,这是我无法影响的。我尝试通过投入内部资源来应对不适,因为我喜欢这项工作。但是在某个时候它停止了工作。

燃尽


看到有一个千禧一代在开放空间上,工作正在进行。他为她坐下并精疲力尽。

图片

在工作的第三年末,我已经筋疲力尽,以至于三个月我简直“无处可去”。休息和恢复,我试图了解到底是什么使我进入了这种状态。对我来说最关键的时刻是:

  • : (/), .
  • : , , . , QA- , .
  • , , .
  • , , , .
  • . .
  • - — , , .
  • — , « » , , , .

图片

如果您考虑一下,所有这些不愉快的事情都与软件测试人员的职业没有直接关系。但是,在那一刻,我当然很难将彼此分开。休息后,当我再次渴望去找工作时,我想到了将自己的职业改为相邻的职业。例如,转到分析,或尝试继续担任质量检查主管的角色。

但与此同时,我意识到我非常喜欢我的专业技术领域。然后我意识到我想继续发展为QA工程师。如果没有技术要点,这种分析可能会让我感到无聊,而在担任质量检查主管的过程中,我将逐渐失去技术技能。根据我的感觉,在不久的将来,劳动力市场将对强大的技术专家有更多的需求。

寻找新工作


这次我以经验丰富的专家进入劳动力市场。我为自己确定了一份清单,以评估雇主的报价。当然,我希望看到同样的缺点,使我在新的工作场所精疲力尽。另外,我还确定了其他一些标准:

  • 测试主题不应再与银行软件相关联;
  • 公司不应有官僚作风;
  • 最重要的是,要使工作满意,我必须查看工作结果并收到用户和同事的反馈。

漫长的搜索开始了。我对收到的建议不是很满意-以前地方的大多数缺点似乎都在这里。

突然之间,我想起了一年前,我正盯着Lamoda的一名QA工程师。在面试中,我迷上了一个事实,那就是它应该执行很多技术任务,为我使用新工具并测试大型而复杂的系统。正常的沟通是公司的价值观之一。

这样有可能吗?


我在一个新地方遇到的第一个不寻常的事情是,这里的所有工作都是由团队完成的。

这以适应的Scrum的形式在已建立的流程中得到体现-每个团队进行为期2周的同步迭代,在此期间举行各种会议(会议,梳理,任务评估,项目讨论)。考虑到我将参加所有这些会议这一事实,因此计划了我的工作量。因此,我始终了解所有项目新闻。

健康的工作关系


就个人而言,我真的很喜欢没有一个由主管领导的测试部门。如果存在双重从属关系-开发人员的团队负责人和测试部门的负责人-有时会发生利益冲突,并且在某些任务上会争夺资源。

在Lamoda QA中,工程师是特定系统团队的一部分
事实证明,我隶属于团队的团队负责人,他了解我目前和即将开展的工作,这有助于我们有效地进行一对一的会议。在他们的面前,我们讨论了我的辛苦工作,团队负责人试图为所有必要的事情提供帮助,并确定其他可能的发展方向。也就是说,我从团队领导那里得到了同事们的非常多的反馈-这是我以前真正想不到的。

当我需要寻求开发人员,分析师甚至其他团队的帮助时,我开始感到绝对正常。如果您一无所知,没有人会让您变得愚蠢,相反,您会分享知识并欢迎这种方法。

工作自主


对我来说特别重要的是在任何需要的地方都可以访问。而且,我可以根据需要独立配置测试环境,进入数据库和日志,还可以查看整个应用程序代码以及根据任务请求池进行的所有更改。

例如,当我执行一项任务时,我看到了代码中到底发生了什么变化。在这个阶段,我已经注意到了缺陷。如果我知道我需要检查与其他系统的交换,那么我可以在自己的测试平台上部署任何其他系统-为此增加数据库,具有必需版本的容器以及迁移。而且我不需要让我的一位同事这样做。

知识共享文化


从在Lamoda工作的一开始,我就非常乐于接受团队中公认的知识共享。这大大简化了许多工作点。但是,知识共享在由整个公司共享,形​​成整个文化并且每个员工都参与其中的过程中确实有效(关于我在Lamoda中如何实现这一目标,我的同事最近在一篇文章中写道)。我欣赏这种文化对我自己的所有优势,现在我很高兴自己支持它。
, , , . , , . , , , .
通常,这种平淡无奇的意识是,您可以写在所有人都可以访问的笔记中,并且可以用最简单的语言来分享知识,而不是撰写深刻的文档(仍然很少和缓慢地编写文档)。在银行业工作之后,这对我来说是不寻常的,我特意断断续续地避免添加过多的术语和“水”。

留下这些笔记,首先,我要照顾好自己的未来。一段时间之后,当我上次检查某些内容时,这些内容将被忘记,在这里,我过去的笔记将派上用场。

随着时间的流逝,我意识到不仅在公司内部,而且在各种会议上共享知识都是可能而且必要的。例如,我曾经报告集成测试好吧,或者这里的一篇文章你可以写=)

-


我们公司拥有非常庞大的IT部门,拥有340多名工程师,而我一直只使用其中的一部分。但是,由于进行了集成测试,我熟悉了其他团队支持和开发的系统,甚至在那些团队对此资源感到困难的时候也参与了测试。这再次是我在工作中所钟爱的多样性。

对我来说也很重要,我可以查看系统中内置的所有流程。例如,可以观察呼叫中心接线员的工作。事实证明,这对我来说非常有用,作为呼叫中心测试员,我能够更好地了解某些情况下的业务逻辑,并了解应用程序中的弱点并将其告知团队,以便在不久的将来进行改进。
, ( ). , 17:00 sms , . sms , , - , . , , , sms – .


在过去的几个月中,我加入了进行面试的家伙,以便在我们的后端团队中找到新的质量检查工程师。结果也非常有用:我提高了软技能,甚至从候选人那里学到了新的技术知识。另外,很高兴能找到与他们一样炙手可热的专家,成为他们领域中非常出色的专家,然后我与他们一起努力以提高自己。
最近,我从一个团队过渡到另一个团队,我想让系统和我所有的开发都交到好人手中。因此,对我而言,现在可以亲自面试新候选人并选择最佳候选人对我而言尤其重要。

我一直都在测试什么?


最初,我进入了Order Processing系统团队来存储和处理订单(同事在文章中详细介绍了该系统)。那时,这是一个用PHP编写的非常庞大的整体,可与大量其他系统通信。而且,老实说,一开始测试起来既困难又痛苦。我以前从未遇到过这样的系统。在3-4个月的时间里,每个任务的测试几乎都是从头开始的-它们都与完全不同的功能有关,并且需要不同的测试方法。

但个人而言,我意识到自己面临着如此复杂的挑战。因为,首先,它不会很无聊,其次,还有很多开发技术技能的机会。

万岁,终于自动化了!


在这里,我终于有机会熟悉测试自动化并紧密地进行。我一直认为我不想忘记所学的编程技能。

现在,我从事php +代码接收的自动化测试-我的同事在本文中谈到了它的工作方式
整个团队都在致力于创建集成自动测试,以确保最终在开发新功能时仅进行一次手动测试。我的系统中的回归已包含在自动测试中,这很令人满意。不时手动传递相同的脚本可能是许多测试人员最不喜欢的部分。花时间这段时间发展自己的技能和其他有趣的活动会更加愉快。

频繁的变更-额外的困难还是发展的机会?


当然,三年来我并不总是很好。

例如,在过去的几个月中,支持CI / CD的团队发生了变化。在此期间,测试环境存在问题,解决了很长时间,或者完全没有解决方案。当然,这让我不高兴,并使我的工作变得不那么愉快。但是到了某个时候,我意识到,很难预测的大量更改是使用任何真正复杂的系统必不可少的部分。在所有这些中,您都可以找到优点。我设法更好地了解了我的测试环境,学会了自己解决一些问题。
碰巧,搬运工中的集装箱几乎立即掉落。在这里,有必要进入容器的日志,了解到底出了什么问题,然后尝试自己进行本地化或了解可以吸引哪些开发人员寻求帮助。当时,这种方法比等待CI / CD的帮助要快捷,有效得多。

我的技术发展:具体


与过去的工作场所相比,我觉得现在“三年来”我一直在专业上成长,我的任务是如此的不同和丰富。
?
— Jenkins, VirtualBox, .
docker, k8s .
— Bamboo.
— PHP+Codeception PHPStorm, Git.
— Allure .
— API – Postman, SoapUI, Swagger.
— SQL Postgres – Sequel Pro DBeaver.
— Kibana, .
— RabbitMQ Event-bus&Kafka.
— FTP, SFTP, S3 Cyberduck.
— Jira, Confluence.
— SoapUI Wiremock.
— , , .

:


尽管工作千差万别,但大约两年后,我感到自己又停止了开发。任务变得重复,我刚开始感到无聊。

结果,我在一对一会议上向团队负责人公开谈论了自己的想法和感受。事实证明,该公司准备给我很多横向发展的机会。一个月后,我被邀请去一个具有完全不同的技术体系的Callcenter团队工作,我现在正在工作。

这个过渡给了我什么?


从测试对象本身的角度来看,我再次陷入了自己一个全新的领域。呼叫中心是关于电话的,整个系统的体系结构完全不同,与我之前使用的所有体系都不相似。

该系统本身由多个服务组成,这些服务历来是用不同的语言编写的-有PHP,Go,Scala和JS Node。

注释和文档很少;没有集成自动测试。

实际上,我有机会从头开始为大型复杂系统构建测试。我们自己提出并建立内部团队流程-正如我们所同意的那样。因此,我们从一开始就决定使用适合我们团队的工具进行测试自动化。

因此,无聊的问题肯定得到了解决,我觉得我现在在职业发展上取得了巨大飞跃。

我现在感觉如何?


就个人而言,令我惊讶的是,在公司度过的三年时间里,我眼中的火焰并没有减少。也许我真的发现了我希望每个人都能拥有的职业和生活地位。

在这里我不感到孤立。我总是有机会开发技术,测试不同的系统,切换到其他团队,这意味着再次学习新知识并参加各种常规活动,这使我真正感受到了工作的价值和重要性。

最后,工程师如何应对倦怠的质量检查?


没有通用药物。毕竟,导致倦怠的原因可能很多。但是,这是我根据经验得出的结论。

  1. , , , , .
  2. , . — , , . , , . , =)
  3. , . , - , .
  4. 具有现代化和多样化技术栈的公司不允许您作为专家来犯规,因为您必须与时俱进,研究所有这些技术。

如果您感到疲倦和烦恼,并认为测试不再是您的业务,请考虑一下,也许是在工作环境中,而不是在专业领域。您可能已经厌倦了以下事实:流程尚未建立,工作“摆在桌面上”,工作结果没有被感觉到,团队中的沟通过于复杂,浪费了很多精力……有许多激励因素。

可以找到自己的业务和自己的位置:有时您需要向外看,有时需要在内部进行谈判。最主要的是清楚地了解当前未发生的事情以及我们的意愿,并清楚地传达我们的期望和愿望清单。

All Articles