In our last post from the “Jobs in IT” series, we introduced the topic of DevOps. Today's post is about software testing. We spoke to Marta, who plays an important role in our Quality Assurance team.
What does software testing mean?
Software testing is part of the development process and serves to check the software for various defects and eliminate them. There are a variety of helpful tools that can be used to perform testing manually or automatically.
Types of software testing
In principle, a distinction is made between functional and non-functional tests. Functional testing involves checking whether the software has the functions that were previously specified. In other words, it is about finding out and verifying whether the software does what it is supposed to do. Non-functional tests, on the other hand, consider other parameters such as security, resilience, and stability. This area includes tests such as penetration tests, performance and stress tests, and disaster/recovery tests. There are therefore a number of factors that argue in favor of extensively testing software before it is used, both functionally and non-functionally. One of these factors is security: it is important to ensure that the customer receives trustworthy software in which personal data is processed securely. This aspect has also become significantly more important as a result of European directives (GDPR). Another fundamental factor is, of course, quality: tests should be carried out to ensure that the software actually meets all the desired product requirements and that these function without errors.
Increase in customer satisfaction
Software testing thus increases customer satisfaction. Customers will only be satisfied with software if they receive a solution that is largely free of bugs, perfectly usable from a usability perspective, and unlikely to fail. Usability (UX/UI) is another topic that we will be looking at in our series “Jobs in IT.”
Agile software development
Nowadays, software development is mostly agile. The development process is divided into phases, one of which is testing. If tests are carried out early on and not just once after the solution has been completed, weaknesses can usually be remedied more easily. The test-driven development process even requires the tests to be planned and described before the actual development begins. Nevertheless, the cliché of the software tester who is feared by his developing colleagues because he detects every little error and thus makes the developers' work look bad still persists. What do our testers themselves have to say about this? We spoke to Marta.
An insight into the job of a software tester
Marta came to our location in Wrocław (Poland) after working for a German company. What she likes most about her position at Vialutions is that she has contact with Polish customers, but also continues to work with German customers, allowing her to improve her language skills. What she enjoys most about working as a software tester is the constant learning and improvement of her own skills. Ironically, she is particularly happy when she finds a bug, not because she takes pleasure in others' misfortune, but because every bug found can be fixed, making the software more secure, stable, and functional. At the beginning, Marta worked at Vialutions purely as a software tester. Now she also provides support in the area of business analysis. As the single point of contact, she is the main contact person for a number of customers, discussing expectations and requirements in regular meetings and coordinating these with the developers and testers. Marta's focus is on testing software in the healthcare sector. On the one hand, the challenge lies in complying with certain standards and guidelines. On the other hand, most of these applications make work and life easier for doctors and patients, and it feels good to be part of this development process.
Challenges in testing
Even though she enjoys this role, she has the most fun testing software herself. Marta finds it difficult to understand some documentation in her role as a software tester, especially when the solution was not programmed by our developers. This documentation is often written in a different language or is very cumbersome. However, through communication within the team, every problem has been solved so far. Marta is also very interested in artificial intelligence in the software testing process. She believes that this is the future of IT and is expanding her knowledge in this area.