At Sysco LABS, we take a holistic approach to quality engineering. Not limited to merely testing our products at the end of the development lifecycle, our quality engineering team engages in all stages of the development process. Just like our products, our quality process is under continuous improvement.
Our QE team’s involvement in the development process begins at its inception: we perform the detailed analysis and elaboration of the feature requirements outlined by business analysts. In this sense, our QE engineers are domain experts to an extent.
These detailed requirements are then discussed with developers by means of feature walkthrough meetings, also driven by the QE team. These feature walkthroughs ensure that both the QE team and the development team are on the same page with regards to requirements, and that both the product and the test suite arise from the same requirement source. This minimizes the likelihood of test-product mismatches, an all too common problem in the software industry.
While tests are considered common assets (the entire team has access to them and are expected to utilize them in their work), it is the QE team that develops and maintains the test suites. Many of our test suites exist in the form of automated BDT (behavior driven testing) test specifications – they can be rapidly run without human intervention, and often do exactly this when used in conjunction with continuous integration. Despite the size and complexity of our product suite, 70-90% of our testing is automated. This eliminates much of the day-to-day drudgery of the traditional QE engineer, freeing his/her mind to focus on product quality in a more intelligent fashion.
We are a team of QE engineers with a strong background in quality engineering and technical knowledge. New additions to our team must possess a good understanding of industry standard QE practices, a team-oriented attitude toward work and the mental acuity to deal with the intricacies of testing complex products. Knowledge of automated test tools and programming languages (primarily for test automation) is a definite advantage.