哪些开发人员技能可以很好地转化为 QA?

软件测试 QA 开发人员
2022-01-08 19:36:13

我是一名中高级开发人员,去年在编程方面被严重烧毁,我一直在探索将职业转变为测试/QA(以及技术写作等其他人)的可能性。我希望这个问题在这里不是题外话。我已经在 Programmers 网站上询问过它,并得到了一个 mod 的指导。

以下是我认为我在 QA 方面比在开发方面更好的一些原因:

“元知识工作”与“知识工作”

我自然更擅长分析已经存在的事物(从退后一步),而不是真正深入其中,就在磨刀石上并致力于它们例如,我很擅长分析和分离一个感兴趣的话题,并在上​​面写一篇博客文章,但我不擅长创意写作——我必须自己想出所有的内容。

对自己工作中的问题视而不见

这是一个近乎普遍的人类问题(这就是为什么作家需要编辑,而开发人员需要独立的 QA),但我认为我有一个非常糟糕的情况:我只是非常不善于退后一步并在自己的工作中发现问题(即在开发方面:糟糕的初始预检测试)。在我的整个编程生涯中,我总是有高于平均水平的愚蠢明显错误检查到源代码控制中。退后一步并在我自己的代码中发现问题非常困难。

另一方面,我非常擅长发现其他人代码中的错误和可用性问题。例如,当其他人破坏某些东西时,在获取代码的最新更改时,我经常是第一个注意到一些奇怪的行为变化的人。

这与第一点有关:“元”知识工作。我只是擅长从后退一步分析某些东西,而且我并没有为自己努力。

解决问题是一种挑战

当我必须直接对它们进行创造性/修改所有权时,我真的不喜欢处理棘手的问题(例如晦涩难懂、难以追踪的错误)的挑战。这又归结为“元”知识工作——当我正处于困境中并且必须自己完全处理它时,我很容易感到沮丧和不耐烦(因此注意力不集中和效率低下)。但是当我在外面看着里面时,它不会发生 - 例如。分析一个我最终只需要彻底记录并传递给其他人的问题。

如果我不承认其中的一部分只是想推卸责任,而不是最终对某事负责,那我在智力上就是不诚实的。但它与我的分析技能配合得很好,这比深入细节和做事更适合退后一步分析。

重复容忍度

这是一个有点消极的观点,但无论如何我想涵盖它,因为很多开发人员认为测试/QA 是无聊和重复的。所以我只想在它出现之前先介绍一下:我对可能看起来相对无聊的重复性工作有很高的容忍度。再一次,由于“元”知识工作的原因,我很擅长在看到它之前运行 1000 次后发现它的细微变化。但前提是它不是我自己编写的代码!

结论

请原谅长度,但我想尽可能清楚地涵盖这些要点。我特别想听听以前做过 QA 和开发的人的意见,但也想听听我作为潜在的测试员或 QA 工程师听起来像什么的一般意见。

PS 不用说(作为一名在各种工作中拥有 10 年经验的开发人员),我与测试人员/QA 有很多接触,并且非常了解他们的工作。而且我过去做过一些(相对非正式的)质量检查——在没有专门的测试人员和开发人员相互测试工作的角色中。对于它的价值,我总是比开发本身更喜欢它!

问题:我作为开发人员学到的技术能否很好地转化为进行质量检查?

编辑:刚刚添加了一些说明。我想我夸大了不想承担责任的观点。我作为分析者比作为事物的直接创造者和修改者要好得多。基本上它归结为这篇文章中描述的心态差异。我对开发中涉及的创建、修改和分析技能的具体组合的能力和耐心不是很好。但是,当我迈出一步并进行几乎纯粹的分析时,我就会发光(并且更享受它)。

4个回答

您描述了对测试人员有利的几种技能:分析技能、发现缺陷的能力和对重复的容忍度。您似乎也对测试感兴趣。

你自己承认的一个潜在缺点:不愿承担最终责任,并且在较小程度上对从头开始做某事感到不适。

你习惯了一个开发者的薪水,或许还有一个开发者的声望。准备放弃两者。虽然有些测试人员的薪水比开发人员高,但一般来说,测试人员的收入较低。虽然有些摇滚明星测试人员因其在组织中的作用而受到高度赞扬,但作为一般规则,测试人员被认为与开发人员一样必要,但不如开发人员有价值。当产品或项目大获成功时,开发人员比测试人员更有可能在公司会议上得到表扬或提及。如果这对您很重要,请适当设定您的期望。这并不是说测试是一项糟糕的工作。在适当的情况下这是一份好工作,但它不像是一名开发人员。

工作的性质取决于具体情况。在我的第一份测试工作中,我是一名测试主管。这需要有条理,花大量时间沟通,与对测试不那么感兴趣的开发人员打交道,跟踪大量项目级信息,并为大事负责。它还需要一些轻微的开发技能。这是一份很好的、有回报的工作,我的努力受到了表扬。考虑到你的背景,这对你来说可能是一个很好的角色,但你必须愿意拥有它。

编辑:这里有一些关于 QA 招聘以及开发工作和测试工作之间关系的很好的讨论:拥有开发人员经验或背景对测试人员的有效性有什么好处?,你如何为测试职位做准备?,你应该如何面试 QA 职位?,以及测试人员对软件的看法与开发人员的看法有何不同?. (如果您搜索 SQA,您也会找到其他人。)

改变职业总是一个挑战。作为招聘经理,当有人想转行并被我的团队录用时,总是会发出危险信号。我在这里看到一些。

您说您作为开发人员已经筋疲力尽。这是可以理解的。那么您是否认为质量检查“更容易”?不太可能导致倦怠?准备好与面试官深入讨论这个问题。我希望我的 QA 人员非常努力地工作(有时我们比开发人员更努力地工作,有时不是)。我不希望有人进来认为这是一个让事情变得轻松的机会。

你提到了分析与创造性。至少在我的团队中,QAer 必须经常具有创造力。

感谢您诚实地说不想承担责任。大多数 QA 商店都需要承担很多责任。在一些商店,QA 是生产的把关人——那里的责任非常大。

我之前曾聘请前开发人员进入 QA(哎呀,我曾经是一名开发人员)。但在从开发人员到 QA 的直接过渡中并不常见。准备好面对一些棘手的问题,比如你为什么选择 QA 作为目标,以及招聘经理如何知道你不会很快就在那里筋疲力尽。

您是否可以在当前公司切换到 QA?通常,这是最简单的过渡类型。

祝你好运!

如果我不承认其中的一部分只是想推卸责任,而不是最终对某事负责,那我在智力上就是不诚实的。

在 SQA 中,您比开发人员对功能负责。当令人讨厌的错误进入生产环境时,所有的目光都集中在您身上,您必须进行 RCA 或解释它是如何被遗漏的。如果它导致收入或账户损失,请准备好承受更大的压力。正如在另一个回复中提到的那样,您永远不会因为流畅运行的功能而受到赞誉,只有在出现问题时才会注意到您。

你提到了对重复的容忍度,这是一个必要的特征。您是否也准备好应对一系列盲目的、令人麻木的点击和打字?自动化始终是目标,但您可能会逃脱长时间无聊的手动测试,尤其是在完全回归期间。

我并不是要劝说你——只是想澄清几点。听起来您知道自己的能力以及最适合什么。我从前端开发人员转到 QA,并没有回头。我很幸运能在同一学科的团队中工作,所以我两全其美。

同样正如另一位评论者所指出的,您会失去一些声望和报酬,但工作满意度比报酬或尊重更重要。我说去吧。

几年前,我也做出了同样的选择。我是一名测试人员,进入 C++ C# 开发,然后又回到测试。我仍然喜欢编写代码,并且在测试中有一些编码机会。我切换回来的主要原因是,在开发过程中,我发现我最享受的事情是修复错误。我知道这听起来有些微不足道,但我发现解决问题的方面比编写新功能更有吸引力。测试非常像错误修复编码而不是功能编码。我在功能编码方面遇到的问题是,当您致力于添加到现有代码库时,您基本上已经适应了该框架。这里的所有其他评论都非常有效,您应该仔细考虑它们。转向测试总是会被您的任何同事视为降级 - 这就是它的方式。要记住的另一件事是测试人员处于周期的最后,他们在需要发货之前得到了东西。有时质量是质量水平而不是绝对质量(绝对没有缺陷),请注意这一点。最后,您仍然必须始终愿意为要解决的缺陷而战,同时了解您不是发布产品的最终决定权。