Fresh out of university and full of ambition, but with no experience? Here's all you need to know about landing your first job as a software tester.
At the start
If you have freshly graduated from university or college – or are looking to change your existing career – and are considering the field of software testing, you are probably wondering where to start. You may also be feeling a bit of fear as well as some doubts. Firstly, remember that the longest of journeys begin with just one step, so let’s see, step by step, how you can land your first testing job – as a fresher or otherwise.
A degree in Computer Science is what most employers in the field of software testing declare that they’re looking for. But even if you have no IT-related education, you can still try to get this kind of job as a fresher/newbie if you are motivated, persistent enough, and have the skills and traits required for this profession – among which the main ones are:
- An analytical mind,
- A technical background and skills,
- A good communication skills,
- A high attention to detail,
- A so-called ‘tester’s mindset’, which has a strong interest in finding defects in software that can then be corrected.
If that sounds like you, the next thing to do is start learning the basics of software testing. Try out real job tasks to make sure it’s the kind of job you would like to do going forward.
Software Testing Theory
Below is a checklist that covers the main points in software testing theory, which you will need to understand before you can start your career:
- The different types of testing and levels of testing,
- Main testing techniques,
- Software development life cycle (SDLC),
- Software development methodologies (v-model and iterative-incremental models; agile methodologies in particular),
- Bug tracking systems and bug reports; the bug life cycle,
- Requirements analysis and testing,
- Test artifacts: test plan, test cases, checklist,
- Familiarity with the main operating systems and browsers.
The following skills and knowledge will be also be of benefit:
- Knowledge of any programming language,
- Basics of SQL,
- Ability to work with a command line,
- Familiarity with UNIX-like operating systems,
- Basic understanding of networks, protocols and working principles,
- Domain knowledge (any domain the tested software is related to),
- Any test automation skills or experience (especially with Selenium),
- Familiarity with the tools used in testing and project management (tools for bug tracking, test/project management, test case creation and running, requirements tracking, etc.).
After reading these long lists of skills and knowledge needed, it’s highly understandable if you are feeling fear and doubt. But don’t worry – carry on reading to find out how you can get up to speed.
You can search and study any information on this list, both online- and offline-based, including articles and blog posts, wikis, video tutorials, books, and courses.
There is one caution here though… While you learn, you will come across a number of varied and confusing terms and definitions related to software testing. The best approach is to only use reliable and credible sources. For instance, use materials by one of the acknowledged institutions that provide software testing certifications: ISTQB. Using the terms and definitions found in the ISTQB Glossary and Syllabus will make sure that you learn and understand the more widely recognized structured and systemized basics.
Online & Offline Courses
There are plenty of software testing courses available online. If you’ve already learned the software testing basics by yourself, you will be better able to evaluate the content and quality of the materials offered, before choosing the best one for you.
Also, you may want to join some of the offline courses offered in your city (if there are any). Ultimately though it’s up to you whether or not you take these courses. They are not absolutely necessary, but – if you pick the right one – it could help you obtain structured information and give you access to addressing any questions to an experienced person.
There are a number of books on software testing but they are mostly aimed at giving a deeper understanding of specific areas, rather than teaching the basics. I would recommend you start with the steps mentioned above, then get to reading books later on, when you’ve gained a general background as well as actual working experience in the field.
Among the books that are worth reading at this stage, are:
- ‘Software Testing’ by Ron Patton
- ‘More Agile Testing: Learning Journeys for the Whole Team’ by Janet Gregory, Lisa Crispin
- ‘Lessons Learned in Software Testing’ by Cem Kaner
- ‘Scrum and XP from the Trenches’ by Henrik Kniberg
- ‘A Practitioner’s Guide to Software Testing Design’ by Lee Copeland
- ‘How Google Tests Software’ by James A. Whittaker, Jason Arbon, Jeff Carollo.
Getting Testing Experience
One more advantage you can take before you knock on the door of your first employer is getting some real-life experience.
Perhaps the easiest way of doing so is participating in crowdsourced testing (or crowdtesting) which is available at numerous sites like uTest, where you can perform requested testing activities – such as usability testing, finding bugs, and creating test cases – and get paid via PayPal or Payoneer.
You can also find lots of testing jobs that are aimed at entry-level – or that don’t require experience – at freelancing platforms like Freelancer or UpWork (although landing your first jobs with a fresh freelancer profile can be a challenge).
Practice your skills as much as you can, and be creative. For example, whenever you are using a site or application and notice any bugs, you can report them to the development team and ask for their feedback. If your information is really helpful, there’s a good chance they will get back to you. Some people say they even got a discount – or other bonuses from the team – in return.
If you have some friends running a website, you could offer them your testing services. Document all the bugs and suggested improvements thoroughly, provide screenshots and video recordings where necessary; do your work with all the best attitude, and you’ll get experience – and perhaps also a good recommendation or referral. In the end, ask them what they liked and what could be improved in your work and communication process. Constructive feedback is always helpful, especially when you are doing something for the first time.
Applying for a Job
So, you are now prepared, and it’s time to look for a real job. Compose or update your CV/resume. Make sure to mention all the relevant experience (your actual testing experience, any IT-related experience or education, other skills and expertise) that can be associated with checklist items above. Use best practices in composing your resume, make it readable and informative, and do not list false information.
Look through the vacancy posts on job sites – but make sure you only address those that are aimed at specialists with minimal or zero experience. You don’t want to compete with the experts.
Use social networks – such as LinkedIn* – and your personal acquaintances.
If you are aware of relevant companies you could work for, make a list and send them your resume or CV. Some vacancies are filled before they are openings are published so it is worth making contact.
* New to LinkedIn? Read our Software Tester LinkedIn Profile Guide!
Getting your first QA job as a fresher – straight out of university or college – may not be easy. But it can be exciting.
You can find any information you need online and also get first-hand experience online. Just stay motivated in what you do, be persistent, and be ready to put in some extra effort at the start – and then the results will show up.
Good luck, and I hope to see you on-board soon!