Skip to main content

Good-bye manual tester, hello crowdsourcing!


In the 90s when I got my first job as a software engineer I remember that being a software tester
required very little.  Some people got jobs testing software with only two qualifications: you knew how to use a computer and you liked breaking stuff.  Testers would sit in labs and invest long hours into pressing buttons and looking for bugs.  The quality assurance discipline has changed a lot in the past 20 years.  It’s no wonder that currently companies often times are looking for SDET (Software Design Engineer in Test) or a QA Automation Engineer.

As a QA Engineer today you are expected to know automation tools like Watir, Selenium or Cucumber.  You are expected to know how to write up a test plan, prioritize test cases, schedule test passes, coordinate with the deployment team and many other things.  Less and less time is left over to the good old fashioned bug bashing or ad-hoc testing.  Today you can bet your career on the fact that manual regression passes will not last for a long time.  Sure, you can probably do it when you are working on the 1.0 version of your product, but as soon as you start releasing consequent versions you will never get $100K engineers allocated to do the same thing over and over and over again.

However there is still value in ad-hoc testing and you can’t leave bugs undetected because you were too busy automating primary scenarios.  One of the ways to solve this is crowdsourcing.  We have been working with Appirio’s CloudSpokes (now TopCoder) for some time and I can tell you that crowdsourcing bug bashes seems like the way of the future.  It’s an equivalent of using a Mechanical Turk to find bugs for you.  We create a challenge and have folks compete in finding more and better bugs.   We usually get half a dozen testers from across the world banging on early builds of new applications.  The total cost is about $2,000 per bug bash and it yields bugs at an average cost of $50-$100 a bug.  Some portion of the bugs are minor, not important or aren’t actual defects and a QA Engineer with domain expertise still needs to sort through the findings. Regardless of that, the ROI is pretty clear.  One of the best things about these crowdsourced bug bashes is that you get a fresh perspective on your software.  The folks who sign up to do these competitions have a “beginners mind” that the team has lost due to being around the product every day for months.

For people who are looking to get into Software Testing this could be an easy way to get their foot in the door.  You can be a part of the crowdsourcing bug bashes for some time, learn the tools and then before you know it you are a QA Engineer with some experience.

Post a Comment

Popular posts from this blog

SDET / QA Engineer Interview Checklist

After interviewing and hiring hundreds of engineers over the past 12+  years I have come up with a few checklists.  I wanted to share one of those with you so you could conduct comprehensive interviews of QA Engineers for your team.

I use this checklist when I review incoming resumes and during the interview.  It keeps me from missing areas that ensure a good team and technology fit.  I hope you make good use of them.  If you think there are good questions or topics that I have missed - get in touch with me!


SDE/T or QA Engineer interview checklist from Mike Borozdin
If you like this checklist you might want to check out these posts:
Emotional Intelligence in Software Teams  and Good-bye manual tester, hello crowdsourcing!

Highly Effective Software Teams

A few weeks ago our Board of Directors asked me to present my assessment of the state of software.
 I was hired to organize and grow the software team and the directors wanted to know what kind of a team we needed to build.  I was hoping that I can just reference an article somewhere that would give me the answer, unfortunately I didn’t find anything suitable. During my research I did find some great material that will be helpful if your job is to put together a highly effective software team.
A highly effective software team has the following key characteristics: dependable, committed to shared goals, passionate about technology, respectful and compassionate.  These are not limited to technology industry, it can easily apply to finance, medicine, or sports as well.  Below is the summary and references that I found. Dependable If you are creating a software product, you need to deliver your software to your users.  Your users need to know that you are able to solve their problems on …

There are Only Two Ways to Treat Your Team

There are only two ways to treat your team: take care of them or let them go.  Early in my management career there have been times when someone has been underperforming on the team.  Before I knew better I let my emotions get the best of me: I’d give them the cold shoulder, avoid including them in conversations and look like I was upset with them. Thankfully with some good mentorship I came up with a simple rule: we are helping each other or you are off the team.

One of the biggest mistakes that folks make a lot of times is letting people linger on for too long.  Hiring good engineers is hard and getting new folks up to speed is hard.  You feel like you are going to miss your product delivery plan if you let someone go.

Letting folks linger when you are unhappy with each other creates a toxic environment.  This toxic environment is generally contagious and brings the entire organization down.  Of course you can’t have a constant state of euphoria on your team, but if a productive and…