Nowadays, we are surrounded by so many technical challenges, a result of the automated world we live in, that it is simply impossible to ignore the effect technology has on our lives. We might even spot certain bugs as users while we casually scroll down our favorite seller’s website. But what really goes behind the scenes of these ever-changing apps and software? To spill all the secrets from the testing world, we interviewed our very own QA Team Lead – Nicky…
In a nutshell, if that is even possible, what does your job as a Quality Assurance Team Lead consist of?
In a nutshell – It is having to make important decisions which I will later question and convince myself about the following week.
In a little bigger nutshell – I am always trying to do my best to support the team, make sure everyone is evolving and developing themselves in the direction they want to while being happy with what they do. Also, in the meantime, I personally try to find time to upgrade my skillset and knowledge, so we can keep up with the latest trends in the testing world.
What would you describe as most challenging in the process of quality testing?
Make sure you have the proper approach when testing different software. People may think that the QA job is fairly easy – just clicking buttons and verifying if something will happen after you click those buttons. But in reality, things are not so simple. The QA must really have an excellent understanding of how the specific software or app works, so they would know which parts could be vulnerable, where and what could break, how to test it exactly…
It’s a whole process of first getting familiar with all the requirements and specifications, then preparing a plan and scope, and after that getting into more details of the test cases.
Another tricky part about the QA job is when something breaks, but it’s not clear how it has happened. The QA then has to find a way to reproduce the issue, so that the development team can fix it afterward. It is a QA’s job to be familiar with the software’s functionalities. Every developer is responsible for their own component or service, but the QA must be aware of all of them. It’s safe to say that the QA holds the knowledge base on how the software product is expected to work.
What would you define as the turning point in your career perspective? Or to put it that way, when did you decide you want to be a QA and why?
Like Luke Skywalker or Frodo, the QA force chose me without asking. To be honest, it wasn’t as much fun as the other two characters. Initially, my first experience with this job was working with clients and providing support for using the system. Soon after that, I was allocated to a project where I spent most of my time testing the new platform we were developing with the team. During that time, I found the testing part very interesting to me because I was finally able to see the contribution it brings to the whole development process. And to be honest, those moments when you find critical bugs, or you have finally reproduced a tricky bug after a week of trying, bring you real joy at the end of the day.
How vital do you think the QA job is to the digital business?
I’m sure you’ve heard it many times before, but the QA is the final and most important “gatekeeper” in the process of developing a software product. They have the final say if the product is ready to be released or not. I think it’s self-explanatory how big of a responsibility this is for the QA. They must make sure that they fully understand the requirements so that they can validate the end product. The QA also has to be able to think through all possible scenarios which might not be included in the specs, but the normal user could do.
It’s a common misunderstanding that developers and QAs often don’t get along but I don’t think that is true, at least in my experience. Of course, there will be cases where the two sides won’t agree but in the end, they must remember that they are on the same team, fighting the same battle against all bugs, which shall not be let pass the testing environments and go to production at any cause!
I think the projects we work on here are constantly communicated between all team members and this ensures a better quality of the end product. Also, the QA has to be able to think like a normal user in unusual cases, in order to identify all potential scenarios and detect any possible problem that may occur. So yes, one might say that the QA role is quite vital. For a product to be healthy it will require its Vitamin QA (dad joke)!
You joined Flat Rock Technology only two years ago and now you have your own team which is expanding not only in Bulgaria but in Georgia as well. Tell us about your journey in the company.
Honestly, I didn’t expect at all to be in this position so soon in my career. It took me by surprise when my Supervisor asked me to become a Team Lead. It is something way out of my comfort zone and is still scary. It is a great responsibility, especially when I have to be part of the recruitment process for the new team members. Overall, this new experience helped me learn a lot of things for a short period of time, which is usually the positive outcome when trying something completely new for yourself.
It has been less than two years ago since I joined Flat Rock Technology and so far, I have been able to learn so many new skills and acquire knowledge about various testing tools, related to Automation, Backend, and Performance testing. Of course, none of this would have happened if I wasn’t given the creative freedom to develop myself just like anyone else in this company. Here, you have the chance to not only choose the direction you want to succeed in, but moreover, you can introduce new solutions or techniques that you find promising. In my personal experience, I have always wanted to evolve as an automation tester and now I can proudly say that I am part of the developing automation framework process for one of the company’s biggest clients.
What qualities do you look for in a QA candidate, apart from the obvious strong attention to detail?
Clearly, it is also crucial for any Junior QA specialist to fully comprehend the business requirements. We work in a fast-changing software development industry which is like a machine that constantly changes its parts. So, they should have some background knowledge about that and also think from the perspective of an everyday user. If they get used to putting themselves in the shoes of the user, this will most definitely improve their skills while working on test cases and acceptance criteria.
Another important quality I think the perfect candidate should have is to be motivated to grow and constantly improve their skills and knowledge. At the end of the day, this will most benefit them, while also providing better quality end products for the company they work for. I won’t go into any technical details and requirements because any knowledge or skill can be learned and acquired, as long as you have the impulse to grow in this field. I say this from experience since at first, I learned how to write automation all by myself.
If you could imagine the future 10 years from now what would the QA job look like? Is there a certain technology you wish to exist?
I am sure Artificial Intelligence will evolve even more in the near future. From a QA perspective, this will help our test cases writing process, while we focus on the fun part like writing automation, for example.
I imagine there would be more and more tools to ease the work of manual testers. Such tools could possibly allow them to test more easily all components of the software product and the communication between them, while also providing them with the ability to verify a lot more details. In terms of automation, I would expect it to be much more simplified and accessible for even non-technical people. For example, some actions which now require you to write a whole function with several lines of code would happen with only one line or even one keyword only.
Certainly, the QA job is at the core of every business that provides software products or services. Since technology is always developing how do you think the QA position will change in the next few years to come?
I would imagine that QAs will become more and more involved with the software development process and more specifically with the technical part. It is a current trend for experienced QAs to become something like DevOps. Since they need to be familiar with developers’ code in order to write integration tests, they need to have experience in writing FE and API automation tests and in the end to be able to prepare a CI/CD pipeline on a separate environment where the tests will run. So, I would expect the QAs to work more closely with the development team which will allow them to test the software product on a deeper level, hence the ability to catch the bugs even before they appear in the test environment.
That’s why I think it’s extremely important to always try to improve your knowledge and skillset to be able to keep up the pace with the latest technologies and tools in the testing world. You might ask “But won’t you get tired of all that constant reading and learning?”. Well, if it is really interesting for you and you have the satisfactory feeling when you know you have contributed to providing a better end product – no, it won’t be tiring at all.
And, who knows, the technology might accel so much that all you’ll have to do is write a test with a few lines of code or a few clicks of the mouse, and after that just sit back and watch the magic happen by itself…