I had a good read of article Testing for Errors – Bringing A Designer’s Perspective! by Parimala and started to think whether it should be designer only or product manager. In outsourced product development cycle, I observed that developers are more exposed in their work to designers and client side program/product managers and test engineers are less exposed to designers or product managers This make test engineers more dependent on developers and look less smart in others eyes. With support of my client, I experimented to engage test engineer(on silent mode) as part of meeting between developers and designers/product manager.
Developing my own products in my start-up, there are 3 human skills required to develop and launch product. technical skills( write code, design, architect and devOps), UX skills( user interface, usability and user experience) and product skills( customer, demos, product position, evangelize). Who would perform testing? For our products, I was in shared role of product person working along with test engineers. Testing was with me.
When my test engineer was involved by me in product demos to customer, the test engineer was more matured in deciding what bugs impact customer and what do not. For him the focus was no more in creating bugs, and focus was on better customer experience. if we scaled, I wanted to setup practice where product manager and test engineer works closely. Hence blog “Bring product manager perspective to testing for errors” and here is why test engineers to have product manager perspective.
When product manger offers service, customer expects service to offer pretty good reliability. To satisfy customer expectation, product manager comes with SLA to convince customers and win their trust and confidence. Even before that, the product manager needs to get convinced that the product meets SLA to be shared with customers.
Here comes the test engineer’s role to perform tests for reliability with discussion with product manager to make sure that product adheres to SLA. When test engineer reports product to be 60% reliable, the product manager needs to project product to be less than 60% reliable and reliability cannot be more than 60%.
when there is product launch of next version, the technical team is under pressure to ship new features and product manager is under pressure to launch from management. If product with new features is found to be outside of its SLA promised to customer, the test engineer needs to collaborate with product manager before he puts his foot down either to stop the roll out of new features or drop features that impacts reliability and continue roll out. Effectively reliability needs to improve and SLAs have to be met.
This scenario brings to front the classic conflict of developers & test engineers or development team & product team. Leader needs to resolve the conflict in favor of the customer and not in favor of specific person or group.
Right leadership increases team collaboration to deliver benefits. When the test engineers are provided with responsibility to test for adhering to SLAs and developers are educated about SLAs and role of test engineer, some new things start to happen. Smart developers walk across floor to test engineers to understand whether the new feature added will impact reliability. They also ask how to determine there is loss of reliability as they want the features to be shipped after spending significant effort.