Testing In Startups

The Testing Ecosystem Of Startups

Today’s tech. world is well-known for its startup ecosystem. The young, energetic, and enthusiastic youth generation is up for following their passion and making an impact. Ranging from social causes to the bleeding-edge technology, the startups have been making a mark. An important aspect of technology solutions built by these startups is the quality of their products and services, and an important component of Software Quality is Software Testing.

There are two challenges that startups face in terms of getting testing done – one is staffing, and second is speed to market.

Startups usually don’t have the resources to staff a testing team, because the funding don’t understand the importance of software testing. Most often, the compromise they do is to releasing without getting testing done and then handle proper testing when the product matures and scales. This makes sense when the product is still in nascent stages, there are quick builds released to customer for their verification. There was this beautiful article in LinkedIn about how to use bots for customer service and handling customer queries while the startup is ramping up and scaling (but not hiring) with huge number of clients, not necessarily related to testing but yet a strategy the companies are trying to adopt for Software Testing too with automation.

The key is find that sweet spot when the nascent stages are over and the product’s quality becomes important in customer’s eyes. This would be immediately recognizable when the company receives calls like ‘Hey, your beta build was okay, but now the login screen has so many issues’. Don’t curse the customer. Know that your product is now really getting some serious eyeballs. This is when a testing team is needed.

But unfortunately, the startup ecosystem is tending to do something which they call ‘Quality Engineering‘. The basics of how this works is as follows:

– Have one ‘Quality Engineer’ who will be an ‘expert’ in everything testing and quality in the team
– The ‘Quality Engineer’ would coach/advice the development engineers on how to build better products and also guide them on testing frameworks
– The development engineers (a whole lot of them, because they are really building the product) will do all the work presumably using BDD, TDD, etc.

Why do we need testers after all, right?

One problem with the above scenario is that software is not as easy to produce as to put it in the above framework. In my homepage, I highlighted about the complexities and the dependencies of software. These are making it necessary to have a testing team (in spite of ‘building quality in’ during development).

The other problem is the bandwidth and expertise of the so called ‘Quality Engineer’. The expectations of the customers and the industry today is pretty overwhelming. When you consider areas of software, you have to consider performance, security, accessibility, user interface, and many others. Do you honestly think that one ‘Quality Engineer’ can handle all these with their bandwidth? Do you think one ‘Quality Engineer’ will have the deep expertise in all these areas? If you look at each of these areas, there are experts working for years to master these techniques amidst ever-changing technology.

It might be okay to adopt this approach during the nascent stages of product development, but once the product matures and scales, it is necessary to have a Software Testing team with experts from each area. I think that would be right approach, otherwise, the product is doomed to fail.

To calibrate when and how to have the right amount and kind of Software Testing in your organisation, feel free to setup an initial consultation with me. Happy to help!


Leave a Comment

Your email address will not be published. Required fields are marked *