Numbers to consider:
- According to the World Quality Report 2020-21, only 67% of digital companies are meeting their quality goals.
- In 2020, pressure on quality assurance has increased because of urgent digital transformation forced by the COVID-19 pandemic.
- Growth Statistics Report 2019 found that growing mobile application development adds to the popularity of regression testing making it the fastest-growing segment in North America.
- 40% of all organizations planned to automate at least half of their Quality Assurance practices.
Software testing teams can vary greatly in size, position titles, technologies used on the project, and testing methodologies applied. Regardless of that, the key unit of a quality assurance team has always been and remains a QA engineer (interchangeably called software tester or software testing engineer). This job title is rather broad and just from that word combination, you won’t get much information about one’s qualifications, professional experience, and tech stack. So, in case you ever come across a testing department that employs five software testers, most likely each of them does something different operating different technologies and tools.
QA team roles and responsibilities
The table below contains short descriptions of the most common members of QA teams in mobile software testing:
|QA Lead||Manages all the testing activities in the team and delegates workload across engineers. QA Lead is responsible for high-level things associated with quality control, like the choice of testing strategy, resource planning and allocation, performance review of the team members, etc. Also, takes care of external communication with stakeholders and product owners to gather the project requirements and explain necessary changes to the top management if needed.|
|Test Architect||This role is the highest technical position in the whole team. QA architect is required to carefully analyze application requirements and come up with the most fitting testing strategy and framework. Also provides support and consulting to the rest of the team, as well as to other product divisions aside QA. In order to be effective in this position, in-depth knowledge of software architecture, manual testing, and QA automation is required.|
|QA Analyst||Quality assurance analysts are aimed at balancing software quality control with the current digital market state.They overlap testing qualification with industry-specific background, therefore, understanding the needs of end users in a particular sphere. Collaborates closely with UI/UX designers, marketing department, product owners to come up with the best possible version of a product that would pass the high-level system testing easily.|
|Automation Tester||A software testing engineer who’s main working tools are QA automation solutions like HP Unified Functional Testing or Selenium. Automation testing role puts programming proficiency first and software testing skills afterwards. This is because daily duties of an automation tester mostly consist of writing test scripts and validating the outcomes. |
|Manual Tester||Manual QA executes software checks by hand. Their work is very important for the right implementation of app’s usability, intuitive UI/UX, and other user-facing aspects of a program. Also, they are partially in charge of paperwork on the project (testing documentation and bug reports).|
|UI/UX Tester||A UI/UX tester is a person with a web design background who can surely differentiate high-quality design elements from poor ones. Even though they work closely with the design department, this role still belongs to the QA team. Their daily job includes evaluating the app’s interface and outlook, detecting and reporting any inaccuracies, and re-check everything after bug fixes.|
In-house vs outsourced mobile testing teams
The question of where to locate a quality assurance team is especially puzzling for mobile software projects. Such projects usually aren’t as large as, for example, long-term development of a large system or some legacy application with a huge codebase. Mobile applications do not require too much resources for continuous maintenance and technical support in the long term, and hiring a full-time testing team in this case is not always efficient.
As a way out, many mobile app owners turn to mobile testing outsourcing. Despite the fact owners of digital products have been outsourcing software development for decades, the concept of outsourcing their mobile testing and QA was still considered unusual just a few years ago. As of now, the current state of IT service market allows companies of all sizes, from tiny startups to large enterprises, to receive professional mobile app testing services from any location worldwide.
|In-house QA department||Outsourced testing team|
|Talent pool is limited by location||Large talent pool|
|Strictly defined working conditions||Flexible working conditions|
|Worksite organization is on you||No need to organize worksite or rent an office|
|Only suitable for long-term projects||Suitable for short- and long-term projects|
|Same time zone and culture ||Cultural and time-zone difference|
Starting as a cost-saving strategy, software testing outsourcing quickly proved itself as effective as in-house teams. In fact, out of all digital processes including programming, web design, business analysis, and marketing, quality assurance turned out to be the easiest one to entrust to a third party. This is explained by the fact that outside testing teams deliver more transparent and unbiased results compared to in-house QA departments that were involved in the product creation from day one and unintentionally lean towards it.
Mobile QA outsourcing is a great option for people who are just testing the waters by releasing their very first mobile application. As a beginner, you might think your project can’t afford an in-house QA team, therefore, condemning your future app to lousy testing. In reality, it’s not the case. The project-driven collaboration with an outsourcing company allows product owners to prioritize project resources and stay focused on aspects like marketing and on-site promotion while the quality of the code is being taken care of. Also, organizational tasks including hardware, equipment, worksite rent, and human resources management also belong to the outsourced mobile app testing company behind your project.
Software testers salaries and QA budgets
According to Payscale, the average annual salary of a software testing engineer equals $56,927 in the United States, which is calculated from the $39,000-89,000 range. As for the hourly rates, US software testers usually stay between $12-55 per one hour of work. However, depending on the level of expertise and place of employment, QA salaries can easily reach six-figure value. Depending on the years of experience, US testing experts salaries distribute as follows:
- Up to $49,000/year with less than a year of experience;
- $53,000/year with 1- to 4-year experience;
- $69,000/year with the experience of 5 to 9 years;
- $74,000/year after 10-19 years in the industry;
- $81-98,000/year with 20+ years of experience.
North America is rightly considered the most expensive software development and testing market in the world. Let’s take a look at other locations to compare the labor market states across them.
The Western Europe region is a slightly smaller job market for software testers, however, countries like Germany and Ireland are known for their skillful QA engineers. The annual salaries here range from $20,000 to $68,000 per year in Germany, $25,000 to 76,000 annually in France, $31,000 to 90,000 in Netherlands, and $28,000-55,000 in Ireland.
|North America||Western Europe||Eastern Europe||India|
Eastern Europe is far more budget-friendly than the two above-described regions. For example, an average Ukrainian software tester earns $18,000 per year. For senior-level engineers, this number grows up to $31,000 annually. In Poland, QA professionals charge for their services from $20,000/year to $31,000 depending on years of experience and technology stack. In general, Eastern Europe has proved to be a perfect combination of high-quality services with reasonable rates.
The Asian region is known for its low labor costs, which, unfortunately, do not always come with service excellence. Still, the local labor market is truly gigantic: you can find 5.2 million software developers in India alone, which means the number of QA engineers can be counted in millions as well. As for the salaries, Indian software testers earn from $2,600 to $11,000 annually. In Pakistan, an average salary of a QA analyst equals $5,000 in one year. China, Japan, and Singapore remain the most expensive development and QA service providers in Asia. There, you can find software testers earning from $23,000 to $67,000.
Software testing & QA budgets
According to Statista, in 2019 companies allocated 23% of their IT budgets to quality assurance and testing. This mathes the general recommendation for now ― to spend about 25% of all the project resources on software testing and quality control. Of course, this ratio will vary greatly depending on the stage in your software development life cycle, project scope, technology stack, etc. But using that 25% number as your guideline and having chosen the region, you can easily calculate the approximate funds you’ll need for QA.
The time estimation highly depends on the number of people you’re hiring for quality assurance, the qualification level of each of them, the technical complexity of a project, and its scope. Different people can estimate different amounts of time for the same tasks, so we recommend staying flexible during the estimation phase and prioritizing thorough testing over a faster one. Here are the processes you and your team should include in your action plan for QA with the corresponding number of working hours for each:
- Analyze the documentation describing project requirements and every feature of the future application;
- Discuss the collected information on the project with a product owner, delivery manager, and other team members in charge of external communication (trust us, your QA team will have a lot of questions about the project requirements);
- Research technical and business domains that the application is designed for to develop an understanding of what is the best way to implement the app’s features and how to make them match the industry standards;
- Feature by feature, write test case scenarios, unit test scripts, and checklists describing the acceptance criteria for each;
- Design the test environment including software and hardware;
- Execute software testing activities following the documentation written earlier;
- Document the results of testing creating bug reports and forward them to the development team;
- Discuss the potential ways of debugging with the development team;
- Retest the debugged features;
- Continue the software testing life cycle changing the testing methods depending on the development phase.
Given that the efficient software testing process should be started as soon as programmers get to work, it becomes obvious that as a project module, software testing lasts as long as the actual development. However, this does not mean that QA engineers will work as many hours as software developers. On average, software testing takes about 40% of all the project duration time, it just happens on a piecemeal basis. So, if the estimated project duration is 3 months, which equals 66 working days and 528 labor hours, you can expect the software testing to last about 212 hours which is equivalent to 3,5 weeks of work. Now that we know how many hours we’re planning to spend on testing, it is easy to calculate the financial value of it. Working with, let’s say, a software testing engineer located in the US, 212 hours of work would cost us from $7,208 50 to $10,600. A quality assurance engineer from Ukraine would charge about $2,000-$2,500 for the same amount of work, depending on the expertise level.
What to look for in a QA team
Choosing a software testing partner is a decision of crucial importance for business. It requires an in-depth analysis of the IT service market, as well as an examination of the teams you consider hiring. But how to tell the difference between a reliable application testing company and a vendor trying to pass for one? To answer this question, we recommend paying attention to the following factors:
- Official website. A website is the company’s face, especially of one working with software products. Take your time scrolling through it, read the content, and check if everything works smoothly. Application testing services have to adhere to the highest standards of software quality, and as a potential client, you have the full right to expect nothing but technical excellence from such sites.
- Company’s portfolio. A professional portfolio is aimed at reflecting the company’s background in software testing. When reading one, focus on not only the number of delivered projects but their types and business domains. Industry-specific experience guarantees a deeper understanding of product requirements and user expectations.
- Client testimonials and reviews. Usually, mobile app testing companies post customer testimonials right on their official websites but don’t stop just there. We recommend visiting sites like Clutch and Techreviewer.co ― platforms conducting analytical research on digital service vendors. There, you can find trustworthy feedback from legit clients and see how the platform itself rates the company’s performance.
- Awards and certifications. Mobile testing companies that put a lot of effort in their work and strive for excellence, sooner or later receive public recognition. It doesn’t mean that you should ignore ones that weren’t awarded yet; however, seeing some industry trophies does add points to the company’s reputation.
- Employee feedback. If you truly want to find out about the company’s in-house operations, there is no better source of information than job review websites. That’s not the most popular method of choosing a mobile application testing company, but still recommend including it as your last step towards finding a trustworthy technical partner.
I found a mobile testing company that I like. What’s next?
The first thing you should do in that case is to go to the software testing vendor, find a contact form and fill it in. The information you provide there is going to be the starting point of your communication with the company and your dedicated team. Obviously, onboarding procedures differ from one company to another, but in general, you can expect the following steps to take place:
- Call scheduling. After a manager processes the information you wrote in the contact form, they will get back to you to schedule a full-on talk on the phone or video-conferencing app.
- Pre-sale call. During this call, you will receive a more encompassing information about the company and the software testing talent pool they employ. If the vendor’s representative took their job seriously, during this stage you’ll get more specific talk about your project and might even meet your potential QA project manager. Of course, all this can take place after you sign an NDA, which should be offered by the vendor, not forced by you.
- Pilot project. Companies, that are confident about their performance and qualification, offer their clients an option to run a small pilot project before signing a long-term contract. This can be a smaller module extracted from your large project or, let’s say, prototype testing which happens early in the mobile app development projects. Hourly rates for the pilot projects can be lower than during the actual deal or you can even get a certain amount of QA labour hours for free.