Some people decide they want to be a ‘software tester’. Perhaps they know someone who does this, or have seen the role in real life or in a movie or in a book. Or have experienced the result of inadequate testing. Perhaps the concept just ‘sings’ to them. Some of these people have no past in software development, and some have development experience but want to move to the testing area.
And then there are people, like me, who just ‘fall into’ the role. I was doing electrical engineering and we were working on a product which required some programming. As the only person on the team who knew anything about programming, I was ‘volunteered’. And did well, so that the programming area of the business was interested in me. The job offered ‘some programming and some testing’.
Ewww, testing. But at least I would get to do some programming, so I accepted. Turned out there never was any programming, but who cares; I found out I loved testing, and just as important, was really good at it.
Let me burst your bubble here. Testing is not about finding bugs. Oh sure, you will find them, and it is just as satisfying to the tester to find bugs as it was to the developer to generate the code. Testing is about evaluating the quality of the product. If you don’t find serious bugs, the quality can be considered high, and if you do, the quality can be considered low. And you document the bugs found so that the quality can be improved to the desired level.
In fact, testing contributes to Quality Assurance, which in general has as a goal, to
1) Prevent the generation of bugs (through processes, reviews, design tools and coding tools).
2) Discover any bugs which do get in as early as possible (via reviews and testing)
The later in the process you discover a bug, the more trouble and cost to fix (or patch around) it. Thus testing and Quality Assurance are valuable positions which may be attractive to you.
There are a lot of jobs out there for testers. Experienced testers.
So how do you become a Software Tester? One presumes if you already are a tester, you have everything you need to continue testing or move to a new test position. If you are not a tester, then you need to get the credentials which can get you into that testing position.
First of all, there is Education. Learn about what testing is and various ways it can be done. Check out books, online classes, and perhaps courses at local schools. Best is if the education includes hands on experience doing actual testing, but even ‘book learning’ has its place.
Next, there is Certification. ASTQB offers an internationally recognized Software Test certification, the CTFL (Certified Tester, Foundation Level), along with more advanced certifications which are beyond the scope of this article. This is a multiple choice test which can be studied for in a classroom setting (expensive) or online. Note this by itself will not get you a job, but it should give you an advantage.
Finally, and most importantly, there is Experience. This is a hard one. You need experience to get the job, and you need the job to get experience. Classic Catch 22. So maybe you will luck out and find an entry level test position. Don’t hold your breath. You need to be proactive.
Experience testing is experience testing. Look for it everywhere. If there is a class in testing with an actual testing lab, grab it. Volunteer for extra projects through your school, or for unpaid positions (by nonprofit organizations) which involve testing. If you can get an internship, that is of enormous benefit (several of our intern testers went on to test careers with our company and others when they graduated).
If none of that is practical, then look for classes or jobs with a lot of programming. Any time you program, you need to do testing. Treat the testing part of this activity as the ‘most important’ part. Do it and document it in a professional manner; these may provide evidence of your skills to potential employers. Plus, if you get an entry level programming job with a company worth staying with, you might be able to ‘move’ into the testing position you desire.
Finally, do testing as a ‘hobby’. There are not many computerized devices, web sites or software programs out there which have ‘no’ bugs. So, test them. Record the bugs in a professional manner. You may even be able to submit the bug reports to the company which produced them. And there are ‘cloud testing’ organizations out there which accept testers without experience to do real testing, and pay for it (usually per valid bug found).
So you can see, that in today’s market at least, getting to be a Software Tester is not a straight and broad road. But there are paths to that goal, even if they may be narrow and twisty.