Software testing outsourcing is an offshoot of or often companion to traditional software outsourcing. It’s any combination of short-term mission-critical testing just before a crucial feature launch and long-term maintenance testing. Automation testing and manual. User experience testing. Website, software, and mobile application testing. API testing. Continuous deployment and continuous integration testing.
First and foremost, let it be known that, no matter what you’re building, it’s a waste of time and money if you aren’t testing early and often. Software testing and QA (formerly called “quality assurance” but it’s just one aspect of the quality creation) mark a vital phase of software development. Software testing assures that you have working software before release, in production, and integrated with your whole workflow. Furthermore it helps you make sure the APIs and other tooling you are integrating with — and maybe don’t have control over — are also working.
Fact: Testing makes for better software. And for better software engineers. But that doesn’t mean you need to hire a full-time staffer to perform it.
The benefits of software testing outsourcing
Software testing is often deemed an ancillary or non-core activity. Outsourcing testing allows you to incorporate that essential activity and its feedback into your natural software development lifecyle without the cost of a full-time QA person, or burdening your already loaded teammates with extra testing.
This is a role that is well-suited for software offshoring and nearshoring because it is well-suited for asynchronous development work and could even be done early in the morning or late at night from a different timezone, closing the feedback loop to developers.
There are many reasons to outsource software testing but certainly one of them is the power of an external set of eyes. An outsider thinks differently than your team and can bring in a new perspective to threats like security flaws to compliance misses. It also acts as a positive work validation — it’s always great to have an outside, fresh perspective!
In our agile and DevOps world, testing automation is something that definitely should be the responsibility of everyone. But, in reality, it’s not. That’s why you can hire a software outsourcing agency that can set it up and maintain, but you control the dashboard.
In addition, the right software org will also make sure to set up a transparent workflow, testing and even documentation specification or guide to make sure testing is done as part of the routine of your agile workflow. Partnering with a software outsourcing agency to take care of all of your testing needs means you aren’t only outsourcing the immediate testing or even the ongoing testing automation, you can outsource — but still weigh in on — your testing planning and strategy.
Of course, if you are not a digital agency and software isn’t your bread and butter, just like you would benefit from outsourcing the actual creation of your ancillary software or app, it’s equally logical to outsource the maintenance of it.
For all of these reasons, and our belief in focussing on what we’re great at and hiring help to augment the rest, at Code4Nord we have decided to externalise this service. We still perform continuous testing and automation on our own code, but have hired an awesome testing engineer who is responsible for the core of our testing. We work with her very closely so her results and advice feeds right back into our software development lifecycle. And while she is not an official Code4Norder, we still consider her part of our extended family and team.
What to consider before outsourcing testing
All this being said, it’s important to be conscious about considering when to outsource testing — and when not to — and who to outsource this crucial lever to. There was a lot we learned when we decided to go from having our own in-house tester to outsourcing that service. We share that all with you now.
You can’t just throw it over the wall. Feedback cycles matter. You need to partner with an outsourcing agency that will work with your developers to improve their code together. Having an external tester is a great way to incrementally improve not only our code, but the engineers writing it.
Consider what’s being tested. And have priorities. You need to understand the languages you need someone to be specialised in, which will effect you choosing the right agency with just the right testing experience. You also need to have an idea what you think are your business-critical pieces to create a testing roadmap. But the right outsourcing agency will also be there to help you refine estimation.
Scoping and benchmarking. With all external partnerships, clarifying scope ahead and having benchmarks to it throughout are key. In this particular kind of partnership, clarify up front if you are just looking for QA consultants or if you want them to execute the tests they are building too.
Short-term vs long-term. Maybe your usually QA is on family leave or you just have more work than usual. Then a short-term engagement is enough. Or maybe you recognise testing isn’t part of your core offering, so you are looking for a long-term partnership.
Cheaper is not always better. Unless it’s IKEA, it’s probably really really worse. We’re sorry to say, there’s a lot of outsourcing crap out there. And going with the cheapest means you’re getting the cheapest quality. And you can’t afford to pay too little and release buggy software or worse.
Stick closer to home. By nearshoring to Eastern Europe, like our home country of Romania, you get the benefits of better English, similar timezones, and a similar European mindset on deliverables and high-quality. A culture fit is key when talking about mission-critical outsourcing. Sure, you’ll still save some money, but you also won’t be wasting it. You are also looking for a better long-term relationship. Nearshoring software outsourcing sees a turnover rate of about 2.5 percent a year. Offshoring sees about 40 percent turnover annually.
Company culture matters just as much. We live in agile times, but loads of orgs and loads of quality analysts are stuck in stagnant Waterfall workflows. Are they ready and able to jump in (even virtually) to your daily stand-ups? Can they join your retrospectives? Can they work around tight test, release, feedback, and repeat cycles?
Best practices are key. When interviewing an agency to preform software testing, you need to ask about what best practices and testing frameworks they follow. They need to be in-sync with your own expectations and workflows. This is also a great way to weed out phonies. Any tester worth her salt will be up-to-date on best practices and how to check for headline-grabbing vulnerabilities. Note: They should be teaching you here because it’s their job to know way more than you.
Look for modern. Yes it’s important to test all software before release. But then you don’t just leave it out in the wild. For the best and most reliable software, you need to test in production. And you need to test continuously. And you need integration testing. The best software testing outsourcing agencies should have been doing this for at least a couple years now.
References matter. This is like all hiring. You want to make sure other orgs like yours like to work with that outsourcing software agency. And you want to see some sort of proof of work, whether it’s word of mouth, a case study or something else.
Remember: It’s a partnership. This was worth mentioning again. Software outsourcing, including testing outsourcing, must be a partnership. The tester or QA needs to work with your team and have a sense of ownership of her or his piece of the code when testing. It’s the only way to get quality testing that truly improves your codebase and your whole team.
Like all good things — and especially good partnerships — it starts with a conversation. Looking for any software outsourcing services? Go on, write to us or give us a ring, and we’ll be happy to learn more about your project. If we aren’t experts in it, we can certainly point you to an outsourcing professional we already have worked with and we know is also great.
Have you worked with software testing outsourcing before? What made it a success? (Or not?) Tell us in the comments below!