Testing and Solving a Problem as a Team
VP Engineering at Next Insurance
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.
Connect and Learn with the Best Eng Leaders
We will send you a weekly newsletter with new mentors, circles, peer groups, content, webinars,bounties and free events.