



Software testing career is very peculiar - you can't just go to university and graduate, as none of them offer this field of study. Maybe because of that I hear a lot of questions like: 'how to become a software tester?'. Today I'd like to answer them and compile good advice (at least in my opinion) in one place.





As usual, a word of caution (which you should adopt for everything btw): those are just my views, they don't have to true for you and your environment. The order is pseudorandom.





1. Education

Google takes hiring engineers seriously. In general, our engineers have computer science or related degrees from accredited universities.





A highly controversial topic makes a lot of people agitated and emotional. From my experience though testers with computer science background are indeed better (and I'm not the only with such opinion).



Now imagine you don't have any IT education and you are being recruited by someone like me. Every job interview would be an uphill battle for you. You would have to prove more skills than your peers just because they are not confirmed by 'accredited university' yet.





Today we interview for general computer science and technical skills combined with a strong requirement for testing aptitude.





Place yourself in pole position and graduate. As Sun Tzu said fighting an uphill battle is never a good idea.





2. Learn English

The reality is that the companies consider the candidate’s ability or inability to speak fluently in English as one of the major selection criterion.





Obvious one. It's true especially for testers which often have to not only play with the system under test but also actively cooperate with product owners, programmers, managers, etc.





Remember that learning English doesn't have to be boring. Make it fun by reading books, watching sport, and TV shows in English (preferably with English subtitles). Some cities have something like 'Language Exchange Club' where you can meet people and train foreign language.





3. Avoid naysayers and doubters

One of the dangers newcomers face in any industry are “broken” and “settled” employees.









4. Work on soft skills

We want to hire people who are enjoyable to work with, get along well with others, and who add to our culture here.





As I said already in 'do and don't for testers' software development is social activity these days. Engineers aren't locked in small rooms with no windows, but they cooperate daily with a team . I know people who have very high technical skills but are just terrible when it comes to effective communication.





Our society discourages honesty in this area (because it may hurt someone else's feelings) so until you're hired and trusted employee don't expect any feedback. You have to be aware of its importance and analyze your failures on your own. Recruiters won't tell you were just weird :)





One of the major attributes employers find lacking in young graduates is soft skills.





Also before getting a new job, you need to succeed at a job interview first, that's why I wrote this post: ' How to nail testing job interview '.





5. Get ISTQB certificate

Pass ISTQB FL because it may give you an edge during recruitment, but don't waste time going higher.





I'm not a fan of ISTQB certification, but it can be important during the recruitment process. Foundation Level is pretty easy so it shouldn't be a too big time investment. Learn basic vocabulary and try to understand basic concepts.





6. Work on programming skills

Knowledge of coding is necessary but tends toward the coding skills necessary for {...} the modification of code over its creation and the ability to script end-to-end user scenarios.





Most of the testing jobs these days require test automation skills (some testers call it to check automation, but don't bother about it now). Pick any language you want, for example, Java. Start with general programming skills and move to Selenium after that. My recommendation would be:



