5

Everyone needs an all-rounder whether it is a software developer or Tester these days. Hence we are hearing the term “Full Stack QA” these days so my question is what skill-set makes a Full Stack QA & if we include all the QA skill in one person, Would it be overload to the person which may affect the product quality?

Like developer who masters each layer of an application and technologies all the way from the back-end to the front-end, is called a full-stack developer. In the same way, Is it really feasible for to master all QA practices like Manual, Automation, Security, Performance...etc all the way from the back-end to the front-end for an application for a single person?

  • 1
    Where do you hear the term full stack QA? Can you provide a link? – dzieciou May 23 at 5:38
  • Just google it, few I am shearing testvagrant.com/full-stack-quality-engineer – Nitin Rastogi May 23 at 5:41
  • 1
    I'm asking because the skills will depend on what one means by full-stack QA. Usually, full stack dev is not someone that is skilled both in performance profiling, security. Not someone who can implement both web app, anti-virus and PLC controllers, but someone who can program both front-end and backend parts of the Web application. – dzieciou May 23 at 5:50
  • 1
    You are right... in the same way, people think a QA can handle front-end & back-end using all practices ( using Automation & Manual) both but there are a lot of things in the picture for QA. – Nitin Rastogi May 23 at 5:55
2

A full stack QA engineer should be skilled in testing Web apps, APIs, performance, Databases, and Mobile.

The common skills that are in-demand are:

Selenium(Java or C#): For web app

API Testing: Postman

Performance: Jmeter

DBtesting : DBUnit , Database Benchmark

Mobile: Testcomplete, Appium

These are not listed out from blue, but from the job descriptions that are available in LinkedIn for 3+ year experienced QA roles, especially in the Europe and US regions.

Security testing is not yet considered in the full stack QA role, but it won't be long for adapting that too.

Other key skills or knowledge that are in demand as part of QA are:

Knowledge on CI/CD: Jenkins

Source code management: Git

Architectural style: Microservices

Virtualization: Containers (Docker) and Kubernetes,

Test Approaches: TDD, KDD (RobotFramework) and BDD (cucumber)

Test Methodologies: Agile (Scrum and Kanban) and DevOps, DevSecOps also is emerging

(I hardly came across job descriptions demanding VMsphere in Europe for QA)

Does it over-load the person and affect the quality?

I am not sure about it, because it is a personal choice, some engineers like to specialize and others like to expand their knowledge on many domains and don't prefer sticking to one tool.

Cons?

Tools change, and only hiring people who are skilled in the specific tools might result in missing out talented resources. Best practice would be to interview for competency (behavioral based interview) and train them as per organizational needs.

1

Yes it's possible to be a full stack QA. A full-stack QA engineer is comfortable working across all of the application layers, and will be familiar with large parts of its functionality. They will think about the many different aspects of product quality, such as functionality, usability, performance, security etc.

Full stack QA engineers are easy to find in top software testing companies.

Full stack QA engineers skill set includes: 1. Manual testing 2. Automated testing (UI, backend, API) 3. UX testing 4. Penetration testing 5. Load testing

Need of full-stack QA engineers: Full-stack QA is derived from agile product development processes. As software updates are delivered more frequently, QA engineers have less time to complete all the testing. There is not enough time available at the end of a sprint.

So to achieve the goal of quick delivery, QA activities must be coupled with the agile process and tasks for the sprint. In other words, testing is not something we do once before release; it’s a continuous activity in every sprint. The QA engineer needs to think about all aspects of quality and how to test, from the start of the sprint planning phase.

0

I think the Modern Testing principles are about becoming a "Full Stack QA", here is one of the seven principles:

We care deeply about the quality culture of our team, and we coach, lead, and nurture the team towards a more mature quality culture.

http://moderntesting.org

Yes, it is about specialism versus generalism. Personally I love teams with pragmatic generalists. I tend to have a hard time with people who have the "it's not my job syndrome".

Software Engineering and QA are broad concepts. It goes from Functional to process and structural quality. Helping software engineering departments to balance these for the benefit of the business requires a generalist with a passion for quality. A good generalist knows when to bring in the right specialists for the time being, for example with Security testing. Still the generalist should understand the high-level concepts, so that risks are within acceptable boundaries.

Ideal skills:

  • Fast learner
  • Pragmatic
  • Confident in Programming

Specific tools are irrelevant and change all the time. You should be able to experiment with tools that solve your current challenge.

  • 1
    I'm not sure the correlation to modern testing is correct in this context. Full stack is a vague term, but the way it is mostly used is not to describe a "jack of all trades and a master of ALL", someone that can handle all parts of a project while modern testing is more about "jack of all trades and a master of NONE"- a tester is not expected to be an expert in everything except for maybe a core of important trades – Rsf May 23 at 11:43
  • For me a Full Stack WhatEver is a person that can build high quality software end-to-end. I don't care for disciplines. Each team should have minimal two of these persons. – Niels van Reijmersdal May 23 at 12:01
  • so we don't disagree on the definition, a Stack WhatEver (you should add a (c) ) is someone who is great at a list of things and as such can build system, as such an answer should include information about "list the technical skills required" but your answer (and to some degree also what modern testing is about) is about a generalist which has T shaped skills – Rsf May 23 at 12:12
  • I thought more about a generalist that is comb-shaped. – Niels van Reijmersdal May 23 at 12:34
0

Full Stack QA is a phrase that suggests a quality engineer who can program (as opposed to manual testing alone)

  • This definition also include automation QA folks as Full Stack QA which cannot go beyond UI automation whereas IMHO a Full Stack QA should be able to test components directly on back end as well like APIs and stored procs. – Vishal Aggarwal Oct 28 at 10:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.