QA Engineer Career Path – Tips And Advice For Newcomers
When I was just starting my career in QA I knew that I need to perfect my technical skills in order to be better in job interviews and eventually get a job. I completely underestimated soft skills required for getting a job in QA. This comes from my personal experience and experience of my colleagues I had the chance to discuss it. Many engineering leaders regard soft skills, like communication in particular as more important for the QA engineer career path. Many engineers focus on improving their technical skills. But soft skills is what lacks today’s engineers. Having these skills improved can separate your from others. This way you can get one step closer to getting a job. Further below I am about to share my advice for technical and non-technical improvement.
Improving soft skills
This part is quite difficult, because there are no specific courses that can help you. The point is, you need to learn how to communicate with your colleagues. Being respectful is the first thing. Treat people as you would like to be treated. This also includes being a team member. Offer your assistance if someone needs help. Share your knowledge with everyone, be a mentor. Practice to recognize the needs of your colleagues and show empathy for their pain and frustration over their daily work. Another one you need to master is collaboration. In today’s world of remote work, we have forgotten that we are working from different locations but we are still working together. Learn how to collaborate effectively. When you become versed in all of these you will earn respect from your colleagues and you will be truly valued as an important team member.
All it takes in this part is practice and a little bit of pushing yourself to maybe get out of your comfort zone. Many engineers like working alone and communication with others is quite problematic for them. I know a lot of excellent engineers who cannot explain their thoughts to others simply because they do not have the appropriate soft skills. This part is especially important if you have in mind to advance your QA engineer career path into managerial position at some point.
Learning testing basics
Many newcomers in the world of testing focus on test automation skills. There is nothing wrong about it but you should first master the basics of quality engineering. Here I would like to share a few resources which can help you to get there faster. I would encourage you to stay open minded, because many things that you learned in class (in courses you might took or even at the university) might not be true. First I would recommend reading The Art Of Software Testing which is a great book for beginners. There are a lot of other QA books you can find online. For getting different perspectives on the same question you might consider reading as many as you can find.
What I wouldn’t recommend is pursuing a certificate in testing. Those who have some experience in the industry know that these are mostly useless other than the fact that you will get an occasional question from the certification test during the job interview. You are welcome to read through the materials for the certification. But you are not obligated to take the exam.
Finally I would suggest you to follow my testing challenges which I plan to publish once a month. They should cover a variety of topics and they are designed for testing skills improvement.
Test automation
This part is where most people will focus the most of their efforts because they think that QA engineer career path starts with test automation. Understandably, test automation is important part of our world and it is a requirement in many job descriptions. Some of you might be confused which framework or tool to choose to learn? My answer is, just pick any. Understanding one for starters will be an incentive for you to learn others. And second tool will be easier to learn once you understand at least one. If you have ever learned at least two foreign languages, then you must know that the second one is always easier to learn. Test Automation University by Applitools is a great free resource for learning test automation. You can find tutorials for all types of tools and with various programming languages. The tutorials were created by renown QA engineers and once again they are free.
Should you even have programming knowledge before you start learning automation?
It is a common question and although people will try to convince you that you don’t need any prior knowledge it is not quite like that. Any programming knowledge is a plus and eventually as you progress in the role of QA engineer your programming knowledge will improve. I would say that you need quite a lot of programming knowledge to become authority in your team during conversation with developers. Understanding their talk and their work will help you immensely not just in test automation but also with manual testing.
Which programming language should you choose?
Another question that you shouldn’t burden yourself with. Most of the programming languages have the same abilities and principles. If you choose an Object Oriented Programming language like Java, you will be able to understand and switch easily to C#, Javascript/Typescript, Python etc. You can start with Python or Javascript as the basics in these languages are easy to learn. However, more advanced things might be more complicated. For learning Python or Javascript basics and intermediate I would suggest another free resource Cisco Skills For All interactive platform. It is easy to follow at your own pace. If you need something more difficult and you would like to challenge your knowledge I would suggest you to register at Excercism, another free resource for learning programming by solving short tasks. It supports dozens of different languages and it is suitable for all levels of knowledge.
API testing
As API testing is now a must for modern software here is another resource where you can work on your skills. I would suggest enrolling into Postman Academy a resource which helped me a lot with understanding APIs and Postman as a most popular API testing tool. API testing is also covered a lot in Test Automation University which was mentioned in previous section.
SQL skills
SQL skills are very important for our job because of checking if the data is successfully stored in the database. Sometimes you will need to enter some data manually in the database to prepare for the test. On other occasions you will need to delete something from the database or to edit some values. You have to know the best (meaning the fastest and the most effective) and the safest way to do this. On this link you can find an online database set as a playground. You can learn by following various tasks of different difficulties located in the right hand side of the screen. Just select difficulty and click start.
Suggestions for job interviews
All of these resources above are just a suggestion for improving your understanding of QA and hopefully successful start of your QA engineer career path. None of it is given as something that should be memorized and replicated during work or job interview. It is just a resource that you should use to expand your ways of thinking. At a good job interview, you will be asked to showcase your thinking process, not your knowledge. Bad job interview will assess your ability to reproduce knowledge you once heard or read somewhere without caring if you understand what you said or not.
Every job interview is a learning opportunity but not in a way that you should focus on the questions and learn answers to those. Instead you should deploy all your ability to solve problems and display it. Different interviewers ask different questions and you cannot memorize answers to all of them. Quality assurance is a thinking game and the only way to be good at it is to improve your thinking process. Above all, never say I don’t know as an answer. Think out loud, this will show the interviewer what is your approach to solving the problem.