Testing and Solving a Problem as a Team
1 June, 2021
After spending some time with a new development team, I wanted to increase our rate of releases. We had a very large QA team, and, as a result, an extensive and grueling QA cycle.
One thing that I notice a lot of organizations struggling with is moving from manual QA to an automated QA system. In this example, we had a few teams who were saying that there was no way that they could operate under these conditions, on the front-end, especially. They also claimed that the back-end was too complicated to rely on automation alone in its own right.
The attitude was not one of trying to figure it out, but rather one of why it could not and would not work.
I tried a lot of things in order to build a technical solution myself, and many of them, in spite of being technically working, did not convince the team to make the move.
I am not a front-end guy, but I do know what front-end testing entails. I created a proof of concept and presented it to the team. It was a small part of a huge script, which I was able to extract through refactoring and test in isolation. It wasn’t convincing enough.
After a few other mishaps, we held a hackathon to see if we would be able to crack it together. We worked for three days, refining the structure of that huge script. But the team still wasn’t convinced that it could be tested. We tried to automate another area, this time in one of the back-end teams. The same resistance to automation was present.
I sought out the advice of somebody who was not immediately involved with the project. I asked them to dedicate some of their time to the problem. They were not as familiar with the code as my main team was. They brought no prejudice against the difficulty of the project to the table, which, in my opinion, probably helped them to solve the problem. We started by building a small testing framework, and, after testing and testing, eventually we got it to work.
Our QA process was shortened greatly, from three days to maybe twenty minutes. Eventually, the developers found that it was easier to simply write the code than to explain it to the vendors on the outside.
- Sometimes, the baggage of knowing the history behind a project may make it more challenging to engage with it fully. You need to be able to come fresh and to just do it.
- If you set out clear requirements and give adequate time to the right developer, it will happen. You need to give people time. If you don’t give your people time, it will not happen. If you don’t have good requirements, it will not happen.
- Sometimes, you need to be naive in order to solve a problem. Isolating yourself with the problem may give you more space to think about it from all sides.
- If you showcase that something is working, you will earn the buy-in that you need from others. If they see that the product is good, they will believe in it.
Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader
Vineet Puranik, Senior Engineering Manager at DocuSign, discusses the impact of roadmaps, organization, and proper management for your teams to procure growth.
Senior Engineering Manager at DocuSign
Saikrishna Desaraju, Engineering Manager at Marks & Spencer, draws from his personal experience to advise new managers on thriving in their roles.
Engineering Manager at Marks and Spencer
Muhammad Hamada, Engineering Manager at HelloFresh, addresses the uncertainties brought on by the pandemic, how these have affected our work environments, and how we can adapt.
Engineering Manager at HelloFresh
Roland Fiala, Senior Vice President of Engineering at Productsup, raises an interesting issue about autonomy in teams: does it hinder collaboration opportunities that lead to better problem-solving? He shares his system for promoting teamwork in engineering departments.
Senior Vice President of Engineering at Usergems
Dursun Mert Akkaya, Software Development Manager at Product Madness, encourages a change in mindset for heavily technical individuals as he explains the importance of communication skills.
Software Development Manager at Product Madness