At Cardinal Peak, quality testing is engineered into every step of the engineering process. Not everyone does that, but we think it’s critical.
From development all the way through launch, delivering the highest quality product is so deeply ingrained in our DNA that roughly 20% of our staff is dedicated to quality assurance. With such a robust QA team, we’re able to find and correct any issues early on, which ultimately eliminates surprises as we approach the final stage.
For this two-part blog series, we tapped a few members of our QA team and asked them to answer some questions about quality assurance and testing in order for you to get to know us better, as well as understand why strong QA is the Cardinal Peak way. In part I, we touch on what QA means, why it’s important, how it varies between different types of projects and why our QA team is so robust.
What does “quality assurance” mean?
For most of the team, QA is what helps create a high-quality product that works as well as possible as often as possible. When a product is launched, a company’s reputation is judged by its quality. Consequently, if the product was poorly tested, that company’s reputation is going to take a hit, and they’ll probably end up losing business. And that reputation assures consumers they can be confident they’re purchasing a reliable and high-quality product.
At Cardinal Peak, the way we do QA is an intimate part of engineering product development. We’re not blindly mass-producing products — we’re actively verifying in a continuous integration environment that what the developers are implementing meets the product requirements and identifying defects that can be remediated before the product is mass-produced.
Why is quality assurance and testing so important in product development?
Quality assurance and testing are important because any product, no matter how well designed, is worthless if it doesn’t function correctly and consistently. QA not only ensures users have the best experience as often as possible, but it also gives developers a new insight into how the product can be improved. If a product isn’t thoroughly tested, then it might be released with numerous defects that would frustrate the customer.
We try to think outside the box as far as how customers would use a product. While most customers use the product for its intended purpose, some may try to use the product in a different manner than the intended user experience design. For example, if your product plays music, users want the play/pause button to work properly. Our goal is to ensure that all possibilities are tested and results understood to ensure the best user experience possible. That’s why we approach testing from the end-user’s perspective.
How does QA vary between hardware and software products?
As far as the general process, it’s the same whether we’re working with a hardware or software product: we’re planning, creating test cases and testing. The biggest difference is there’s a significant amount more physical involvement when doing hardware testing versus software.
With software product testing, we can do a lot more with automation, whereas with hardware product testing, we can automate testing to a point, but then there’s the physical aspect that is always going to be a part of the process that we can’t necessarily automate. Fortunately, there are possible simulations and tools that can be used to approach these physical testing difficulties. However, we have to be careful when we automate these types of tests. When we automate, we will get faster and more concise results, but we have to remember that automation may produce different results, for example, simulating the sensor being touched versus actually physically touching the sensor may exercise the hardware in different ways. When it comes to the differences between testing hardware and software products, it’s important to fully exercise the product with both automation and manual testing and select the right tools for the job.
Why is CP’s QA team so robust?
With 18 people working on quality assurance at Cardinal Peak, that’s just shy of one in five engineers across the entire company, cementing our commitment to quality. We value quality, and we know the customers we’re seeking also value quality.
When it comes to QA, we all try to be overall generalists, but each member of the QA team has unique specialties. Because we work on many different kinds and levels of projects, there are always going to be different facets of each project that require different expertise. Two projects could require two vastly different QA approaches, with different skills required.
As such, having a robust team with different strengths forms a web eliminating any gaps in our coverage. From cloud deployment, blockchain and cryptocurrency and connected smart home products to headphones and professional audio speaker products, writing Bluetooth stacks for novel new chips, device voice enablement and so much more, we have people that can handle all of the disparate roles that are needed. Just having all those different skill sets, as well as different perspectives working together, is crucially important. We take QA very seriously, so it’s important to have the capabilities to execute QA on whatever product comes our way.
Stay tuned for part II of this series. That post will highlight the steps involved in Cardinal Peak’s QA process, why we implement QA at every step and what sets us apart from the competition.