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. Despite the size and complexity of our product suite, 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.
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.
At Sysco Labs, the Quality Engineering Process wasn’t introduced with the simple objective of finding issues or faults, but to eliminate waste. The aim is to engineer high-quality products that yield long-term business value to our customers while innovating to serve their expectations, ensuring product stability and making it easier to run their business. This requires that the team work together to innovate with continuous improvement and consistency.
Quality engineering at Sysco Labs is enabled by the use of Scrum, Agile Testing, Code Quality Analysis and Automation, focused on Continuous Delivery. We value the team’s responsibility towards quality, over QA responsibility. Everyone is expected to possess a mindset of building innovative products over a mindset of breaking products, and delivering quality products faster over unwanted delays. The prevention of bugs rather than finding bugs helps us solve problems even before they happen. The “3C Quality Engineering Framework” is used to sustain an orderly, lean engineering environment. The Quality Engineering Dashboard acts as an information radar for stakeholders to see team progress on the quality engineering forefront comprising collaboration, consistency, and continuous improvement.
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 towards 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.