In part II of our interview with testing expert Jim Sivak, we get his thoughts on hiring testers; waterfall vs. agile; a flexible SDLC; pointless automation testing; his time spent working on the Space Shuttle, landscaping at Disneyland and more. Enjoy! If you missed part I, you can find it here.
uTest: You’ve hired your fair share of software testers over the last 30+ years. What sorts of skills and attributes do you look for when filling out your roster?
JS: The best people I hire are the ones who have three key attributes—they love to learn, they constantly look to do things better (not satisfied with the status quo) and they love puzzles. To be a great QA engineer, you have to continuously learn to make yourself and the team better. The best teams continually try new approaches and processes. And testing is solving puzzles—how do you make sure it works, how do you determine what can break and when it does, doing initial looks at what actually happened. I feel that the other skills—programming, product expertise, etc. can be learned on the job.
uTest: You’ve worked with dev teams that adhered to all sorts of different methodologies (agile, waterfall, etc.). From a testing perspective, which one of these is the most effective? Are there certain approaches that don’t mesh better with testing objectives than others?
JS: You can find success or failure with any of these methodologies and I don’t think that one is more effective than the others, if they are done correctly. Each offers challenges to test teams and there is no single approach that works everywhere. The key is to work within the software life cycle that you are presented with. You can’t succeed in an Agile process using the techniques you learned on waterfall-based projects. You have to be flexible and adapt to the SDLC.
From a testing perspective, I think the easiest is an SDLC that is more waterfall than anything else. If the business supports it, having traceable requirements up front, lots of accurate documentation and formal test cycles is much easier than Scrums. Agile is less forgiving as your status is given on a daily basis and there is little time to take corrective actions.
Effectiveness is really determined by customer satisfaction, regardless of the SDLC.
uTest: What’s the biggest mistake being made by test teams today?