DEV Community

Cover image for 11 Traits of a Senior QA Engineer
FunCorp
FunCorp

Posted on • Originally published at Medium

11 Traits of a Senior QA Engineer

Written by: Alexey Anisimov, head of QA at Funcorp

There is a tremendous variety of QA Engineer vacancies, ranging from junior to lead tester and even to principal QA Engineer. We’re often asked what qualities a senior-level tester should have compared to junior or middle-level ones. Let’s try to answer this.

Our Head of QA identified a set of qualities and behaviors required for a true Senior QA Engineer. Here, he shares these observations with you.

1. Take responsibility

There is a goal to reach. For example, the rollout of a new microservice or moving a UI button from one place to another. Senior QA Engineers will take responsibility for the result, communicate with specialists, find those who can help, solve the challenges along the way, and do much more. In short, they will do anything to accomplish the task. And they do not need to have everything explained.

2. Work it out all the way to the end

Sometimes, when you work on a problem, you get to the point of not having enough knowledge, such as when it is unclear why a new service does not create a queue in Kafka or why the application crashes when you leave the home screen.

In my opinion, the experienced Senior QA Engineers will not shift responsibility to specialists with sufficient knowledge (“let the developers/DevOps/product managers figure it out”). They will continue to be responsible and dig deeper by engaging other people as needed.

3. Choose the right tools

Often, I hear something like “I won’t write in Java,” “I prefer Python,” “I will only use Cypress,” “only Appium,” and so on. Senior QA Engineers will examine and apply the most effective tool to address the specific task.

They don’t have universal “silver bullets” but select their tools based on input requirements. For example, if they want to organize the automation of testing, they will choose the technology and languages that:

  • Are suitable for automating a specific product

  • Are easily supported

  • Have a candidate market

  • Are already being used in the company so that there is someone to consult with

  • Have a low entry threshold

4. Ready to talk about their mistakes

Some people would blame the developers, the environment, stars in the sky, or someone/something else. Senior QA Engineers will not blame external factors and will not try to conceal their mistakes. They will tell their colleagues about them and look for a solution together. Everyone makes mistakes sooner or later, but only those who analyze their failures and learn from them can grow professionally.

5. Know how to find time for self-education

If a tester says that they have no time to develop their own skills, then the issue is with the amount of testing, the person’s time management, or the organization of work processes. It would be useful to learn how to switch the context and properly decompose the tasks and the learning process.

6. Think about the product/business

Building a wall that will not let even the smallest bug into the release makes little sense. Delivering a good quality product is much more important.

Senior QA Engineers understand that businesses need to release new features. This is why they will always look for the right balance between product quality and speed of releases. It’s worth thinking carefully before delaying an update just because not all minor bugs have been fixed.

7. Understand the risks

You should not try to test everything. It is important to understand where the risks are. Before starting the work, the task should be assessed in terms of “how” to test and “why” we should do this. You need feedback from the customer on what is important and use it as the basis for the testing plan. This should be followed by communicating the risks and optimizing the time management.

8. Avoid imposing limits on yourself

Only automated, only manual, only backend; sometimes, a tester wants to do only automation and does not want to test anything manually (even if it is required to better understand the product). Or they would not even want to try understanding the results and the code of automated tests. On the other hand, good Senior QA Engineers will do whatever it takes to complete the task better, more efficiently, and faster.

9. Know how to analyze a problem

There are two points here.

First, localize the problem in a smart way, find out the true cause, figure it out, and provide all information in as much detail as possible. At the same time, keep to the point, avoid losing focus, and understand how deeply you should dig into your analysis.

Second, know how to prevent the issue in the future. If it is fixed, the Senior QA Engineer will suggest options to avoid its occurrence in the future or discuss the matter with colleagues.

10. Monitor quality at all stages

Senior QA Engineers are not limited to just testing the tasks reported by the developers. At the beginning of the process, they ask what exactly the developers have accomplished, monitor the release, look at the associated monitoring, and analyze user feedback. In other words, they monitor the quality at all stages of production.

For example, if a critical bug is found in the product, Senior QA Engineers will not stop at only releasing a hotfix as soon as possible. They will analyze the causes of what happened, add additional test cases or automated tests, ask to improve the alerts in the monitoring process or add a step to check the service deployment in testing.

11. Have a technology background

The minimum option here is when Senior QA Engineers are familiar with the technology used in their company’s development, testing, and deployment processes.

The best option is when Senior QA Engineers know what other companies use (technologies, tools, and processes). In addition, they should be actively engaged in self-development and take an interest in new IT trends. By the way, there are many useful resources for QA Engineers. I can recommend Michael Bolton’s blog among some old but still relevant ones.

How a real Senior QA Engineer works

No one claims that this has to be a “one-man band.” But a good Senior QA Engineer knows how to see the project/task through without a glitch (at least at their stage of work).

Senior-level means that you set a goal or assign an upper-level task to a specialist, and they should:

  • Find a way to start working on it
  • Assess the risks
  • Talk to all stakeholders
  • Decompose
  • Figure out where to save time and agree on this with others
  • Engage assistants whenever possible
  • Set the deadlines
  • Start doing something
  • Describe issues or blockers (if any) to stakeholders
  • Report interim results for large-scale tasks
  • Complete the task
  • Come up with the result
  • Make sure everything works as it should
  • Monitor and document, if necessary
  • Go back after a while to see how it works
  • Collect metrics as needed

They should never say something like “tell me how to do it,” “it won’t work that way,” “it won’t work,” “everything needs to be refactored,” and so on. In my opinion, this is the approach of a true Senior QA Engineer. And this should not depend on the salary, since the remuneration differs from place to place, as do the job titles.

Conclusion

Developing responsibility and being an entrepreneur in your project are the hallmarks of a mature mindset displayed by a strong and experienced professional. An experienced Senior QA Engineer understands and substantiates what should or should not be tested in each case, makes decisions, understands the risks, and takes responsibility. How to foster such professionals in your team is a separate topic.

Top comments (0)