Well-organized testing processes help projects efficiently meet software quality standards. Quality assurance is no longer one of the steps in the development process, but a series of activities carried out strategically throughout the entire project life cycle.
Many startups often make the same mistake of implementing testing activities after the release, when first bug reports appear from the end users. However, starting QA processes right from the beginning, even when requirements are being discussed, sets the right course for the whole project.
QA services strengthen the reputation of a brand by delivering a high-quality product to users. Detecting bugs and correcting them in time plays an integral part in the software development process, as it ensures the continuous improvement and steady growth.
Read on for an in-depth look at the software testing and QA process at the Hive project and its influence on the overall success of the company.
Hive: The Tool For Productive Teams
Hive is the digital tool that takes the project management of thousands of companies to the next level.
It allows teams to collaborate, plan, schedule time, get updates, chat and much more in one centralized place. With Hive, companies can forget toggling between numerous tools and increase efficiency by bringing all the information into a structured and well-organized system that handles more than 1000 integrations.
Journey From a Startup To an Enterprise
The idea of Hive started from John Furneaux and Eric Typaldos’ preoccupation with a workplace collaboration. While dealing with teams at startups and multinationals, and learning what makes them effective, the co-founders spotted a huge gap in the project management process. One of the main pain points was the lack of a productivity tool that could meet different needs of employees and leaders across enterprises. That’s why they set out on a journey of building Hive.
Since its foundation, Hive has been striving to improve workplace productivity for companies of different sizes and industries. Hive has achieved great success:
- A lot of market giants, such as Google, Uber, Toyota, IBM and Starbucks became Hive’s clients
- The revenue has increased by 32x and $16M of investments was raised overall.
- There are now more than 1,000 integrations to combine messaging, email, calendars, file-sharing and workflow tools within one platform.
The Hive team is eager to deliver the top platform for centralized workflow management and ensure that their clients have the best experience using the product. Its roadmap is directed completely by users' feedback and needs.
Startup Roles & Responsibilities: Tech Team Structure
As the company provides a customized software product for thousands of companies all over the world, its team has a highly organized workflow and clear structure.
Hive is headquartered in New York, with sales, marketing, and top management teams. For their product development process, they turned to an outsourcing software development company in Ukraine - Apiko. From the very beginning of Hive, they have been collaborating with Apiko and the Ukrainian dedicated technical team has grown from 3 to 19 people over this time.
The team is the largest investment and the biggest asset of the company. As stated by the co-founder, John Furneaux, in his article at Forbes, Hive wouldn’t be where it is today without its technical team from Apiko. The offshore development unit can be a great extension for the startup and lead to long term success.
The structure of the technical team is built in a way that ensures continuous collaboration, innovation, and productive work. For planning, organizing and directing the development process project managers are responsible. Each PM is in charge of a group of developers, pods.
All the developers are grouped in pods.
- A Starline pod deals mostly with the development of premium features. Such features are not included in the list of fundamental functionalities of Hive software, and are designed to suit the particular needs of the customers.
- A Nectar pod handles the core features Hive has from its beginning. This pod is responsible for the smooth performance of the main functionalities and allows other teams to design new features more easily and engage in the development of an innovative part of the product.
- A Honey pod manages performance in GraphQL. They are in charge of the proper functioning of the backend and review the code regularly.
- A Swarm pod is a mobile application development team.
The Quality Assurance team at Apiko is responsible for testing any changes during the development in all of the pods. There are 6 testers working on a Hive project and their goal is to ensure the proper functioning of all the features, integrations, and platform in general.
A team lead in the QA department monitors the assignment of tasks and their completion by priority. Some QA engineers are responsible for automated and some for manual testing. The arrangement of a testing workflow at Hive creates a perfect environment for product’s growth and improvement. To find out more about it, read on.
Software Development: Key Principles of a Testing Workflow and QA Processes
Testing is an essential part of the development process. Many startups have little idea of its importance and workflow. To bring some light on this issue, we’ve conducted an interview with Antonina Kanteruk, a QA team lead at Hive. She gave us an insight into how the testing processes are arranged and carried out.
First of all, work of QA engineers consists of creating test cases and performing test runs. Test cases include the test steps, conditions, and expected results. They ensure software testing is done in line with the set requirements.
Test runs form the next most important step and allow testers to try out the software functionality that is described in test cases. In that way, QA engineers can find out the highest number of unexpected bugs and keep track of statuses and results of each test.
A testing environment is a setup of software and hardware for the teams to execute test cases.
There are three testing environments: devel., beta and production.
- Devel. is the freshest variant of the product. After merging tasks on devel., the QA team has a few deployments to beta.
- Beta is a pre-production stage. The tasks stay and are tested on beta approximately a week before they are moved to production. Testing on beta allows engineers to discover maximum bugs before the end-users see the product.
- When all the bugs are fixed there is a deployment to production, once a week.
Types of Testing You Should Know
There are different methods QA engineers use to ensure the flawless performance of the software. Some of the most common are:
- Automation testing. With the use of software tools, testers can control the execution of tests, compare their results, and report functions automatically instead of performing each test manually.
- Manual testing. It is a more efficient way of uncovering unexpected bugs than automation testing. Testing the software manually brings out unusual scenarios to see if the system works and whether your users will enjoy using the product.
- Regression testing. The re-running of tests makes sure that previously developed and tested software performs well after a change.
- End-to-end (E2E) testing. This method involves testing a software workflow from beginning to end the way users would normally do it, replicating different scenarios.
- Functional testing. It validates the digital product against the functional requirements, verifying the right output after the appropriate input.
- Integration testing. The testing of individual software components as a group which evaluates the compliance of a system or a module with the requirements.
- Validation testing. The process of assessing the product during the development phase or at the end to ensure that the software meets the client’s needs.
Regular application of various methods leads to steady improvements in the quality of the product. With thorough and complex testing and QA processes, QA engineers ensure a considerable decrease in the number of bug reports from end users. Also, it fosters the company’s growth as new features can be developed and adopted much more easily and quickly.
Top Tools Used at Hive for Testing and QA Processes
Team at Hive is a lucky one. They have the privilege of using their own software for the organization of internal project management processes.
With Hive product, the workflow of the QA team is highly structured and optimized. Testers can track all their tasks, assign responsible people, keep documents with requirements, communicate in built-in chats within one platform. And it works great, as QA engineers can not only use and benefit from their own product but also test it simultaneously.
There are some specific tools QA department uses particularly for testing.
- CircleCI. It is an automated software delivery tool for building, testing, and deploying code. The QA team at Hive uses it mainly for E2E tests.
- TestRail. It’s a test management tool for tracking and organizing software quality assurance efforts. Mainly used for writing and storing test cases.
- Postman - a tool for automated testing of API. Postman can be used for running many types of tests again and again, thus streamlining the process and avoiding human errors.
The Role of Testing in The Startup's Growth
Software bugs are inevitable, that’s why testing is essential for companies who want to build customer loyalty by delivering high-quality software. QA services are not only for large organizations with a huge budget. If startups and smaller companies strive to scale up their product, provide impeccable user experience and a steady platform, they should engage testing activities as early as possible. Here are some tips.
Testing should start with the formation of business idea and first requirements. It often happens that requirements may be contradictory and later on create problems. To avoid this, testers need to familiarize themselves with the project and question the business logic from the very beginning. In that way, you’ll be sure that the product has a solid foundation and is going in the right direction.
Scaling requires perfection. If the team wants to grow their technical product, regularly update it with new functionalities, but don’t lose its position as high-quality software, testing must be in place. Adding a specific feature, you expect it to work flawlessly. Agile testing can ensure quality and save time on designing new tests each time your product gets changed.
Early testing costs less than urgent debugging. Integrating testing when first bugs appear may turn out to be more complex and detrimental than you thought. You’ll need to find available QA experts fast and spend lots of time and money on debugging which you could spend on your product’s growth. Thinking about it beforehand will save you the trouble of maintaining the time-to-market balance.
Quality testing on a budget. What many startups have already experienced, such as Hive, is that there is a way to start your project development cheaper without compromising on quality. Outsourcing your development needs is a great solution for startups to afford an experienced team of developers and testers.
At Hive, QA engineers have appeared in the beginning, from the first months when the work started. Apiko’s client and CEO of Hive, John Furneaux, noted that testers have taken the product to a very high level. The work of the QA department influences the project in the most positive way, because they ensure that the product is what its users want it to be.
Don’t blind-bet the future of your startup. Implementing testing workflow into the development process is going to drive efficiency at every level of your project. To ensure customer’s complete satisfaction, the product has to be updated regularly, so there is a greater need for continuous, seamless QA and software testing services.