QA engineers today must cope in their daily work with growing demands due to complex technologies and short time to market.
In addition to hard skills in Quality assurance of software (skills that are teachable and easy to quantify), QA engineers need to possess important soft skills (also known as interpersonal skills), to handle complexity. Just to mention some of the important soft skills:
1.Communication skills and team work skills-
The ability to communicate is one of the most important soft skill QA engineers should own. QA engineers interact in their work with people from different background, thus need to communicate in different ways. Work with software developers and designers will be more at the technical level, while communication with customers will be at the general level. QA engineers need to have strong verbal and written communication skills. They need to understand what developers mean and at the same time can describe bugs in a way that all parties can understand. Communicating with project manager, stakeholders and customers should be done in a language that they can understand (daily language and not technical one). Being a good listener is just as important.
2. Critical thinking and problem-solving skills-
with critical thinking, QA engineers can see the software in a broader aspect as well as analyzing it and decompose it to smaller components and features. QA engineers should always question:
- their methods and approach being used.
- the decisions being made.
- and the steps they take to find whether a problem is likely to be true and arguing their case/ supplying facts &proofs.
3. Curiosity, creativity and exploratory behavior-
QA engineers need to be curious, to explore and discover new things about the software they examine. It is important to go beyond the standard approach and tests, to find new things. This means being opened to trying new technologies and new methods. A good QA engineer:
- will investigate all components and features of the software and decompose it.
- Trying different ways to break the code.
- and most of all never trust solely on others account, do all investigation self.
4. Constant learning and adjustment skills-
In my previous post, I have mentioned how technology development in our days is exponential and how important it is for employees to be aware of what they need to learn catch up with the rapid development. Specialization is an important job skill of the future. Yet having a broader skill set is also important for facing the challenges occurring with exponential technology growth. QA engineers need to keep update with the technology changes and being able to quickly adapt and learn new approaches, new tools and new technologies. Broader skills can be for example functional tester learning also technical testing and vice versa.
5. Programing and technical skills-
As software complexity increases, QA engineers must find ways to increase throughput and explore lower cost solutions such as automated testing. Testers need to acquire programming skills to:
- Better understand the software being tested.
- To be able to communicate with the developers at the code level.
- And to write automation code, which is being needed in almost every project.
Testers also need to learn to use different automation tools. Test automation tools help teams test faster, allows them to test substantially more code, improves test accuracy, and frees up QA engineers so they can focus on tests that require manual attention and their unique human skills.
Aside from programming and technical skills, testers need to understand the environment and the system architecture, to be able to investigate it and asking critical questions. Test environments are changing and new technologies appears in the market. Just to mention some: mobile application testing, virtualization and cloud computing. These technologies contribute to changing software approaches and presenting new challenges for testing. For example, testers need to be aware of cloud testing challenges, its different environments and the types of testing performed in a cloud.
The next quote sums up best this post:
Have a great summer!
This post is written by Irit Kristoffersen, Test manager at Ciber Norway. http://www.ciber.no/