The owner of the company asked me to hire a "Tester" (we were not originally a tech company, but I was hired to help build a development team and produce a new tech product for our business). We don't have a dedicated QA division currently. Of course, our development team has its own internal review process, and we have our own best practices related to unit and integration tests to make sure things are working before they leave our desk. After things look good on our end we hand them over to the owner who tests everything systematically and extensively, not just for simple bugs, but also to look out for any ways the results might be improved from a business perspective.
That last part is important. Everything starts with the owner explaining how the system needs to work (we're effectively automating large parts of the business). It's all his brain child, and he's an expert in his industry. We use our own experience to work with him to refine the ideas and try to come up with the best solution for the company. Often though once the pieces get all put together and he starts testing things, he comes up with changes for us that aren't the result of bugs but simply the result of him seeing things in action and therefore having better insight into what the company needs.
To be clear, I don't have a problem with this process - after all this is pretty much just the whole idea behind agile development anyway. The final product is never far from the original draft, so its not like we're wasting lots of time. However, the owner has basically been our QA team through this process. He's been happy to do this up until now (he's really been the only person who could), but now he's ready to hand over the reigns to someone else and have more time for other parts of the business. As a result, he asked me to hire a tester. However, as I thought about it, I realized that he does more than just testing - in particular evaluating how well it fits the business needs and refining things with another round of development. That's the tricky part.
So in essence, we want to hire a tester (our first QA person?). Someone who can go through all aspects of our system with a fine tooth comb and identify any bugs that the dev team may have missed. That, I'm sure, is very standard. However, the owner would also like this person to be able to understand the underlying business needs and also suggest refinements to the business processes, UI, etc... That last part is where I think things get trickier. I've never been in a company large enough to have its own dedicated QA team, so I'm not sure if this would be a standard part of a QA job. That's pretty much my question(s):
- Is it "normal" (I know, dangerous qualifier) to expect a tester to also understand the underlying business needs, and therefore test not just the results of the code for bugs, but also test how suitable the overall results are for our business?
- I'm wondering if perhaps I should just advertise for a QA/tester job, but specifically screen for candidates with experience in our industry, or who demonstrate an ability to do more than just follow a testing script?
- It occurs to me that I might be falling victim to the X-Y problem, and what we need is something completely different than what I was asked for. We don't have an official "Product Owner". That's pretty much what the business owner has been doing. Maybe we need one of those and a tester? Or maybe a different process?
To summarize though: Is it reasonable to expect a tester to not just evaluate a program for bugs, but also evaluate for whether or not it is a good match to the business needs? If not, any suggestions on what it is that I'm looking for?