Coming Soon: The Professional Software Tester!

Published on August 2, 2025

I have a new book coming out this month: The Professional Software Tester! This book focuses on career guidance for testers, including how to determine what kind of tester you want to be, how to sharpen your skills, how to get the job you want, and how to be successful when working with others.

To get you excited about the book, I’m sharing a free chapter today: “Know What You Don’t Know”. I hope you enjoy it, and be sure to watch for an announcement about the book’s release later this month!

Chapter 16:  Know What You Don’t Know

In 2012, I got a job as a QA Engineer at a small software company that had never had a tester.  They wanted me to write test automation in addition to performing manual exploratory and regression testing.  I had never written automated tests, but the company was willing to take a chance on me because I had taken a few programming classes in college. 

Learning test automation proved to be quite a challenge!  One of the things I discovered during this process was that it’s important to know what you don’t know.  In other words, you need to have enough familiarity with a topic to be able to ask the right questions to fill in your skill gaps. 

One area where I struggled was JSON formatting.  I didn’t understand why sometimes the data was in curly brackets and why sometimes it was in square brackets.  My automated test was failing to build, and I couldn’t see where the error was.  After I asked for help, a developer on my team realized that I needed to learn the difference between an object and an array.  Once I knew that curly brackets were used around an object and square brackets were used around an array, I was able to ask more questions about formatting that gave me the information I needed. 

So, the first step in taking charge of your education is to discover what you don’t know!  Perhaps you have dabbled in a programming language while writing test automation, but you are pretty sure you are missing some key concepts.  One way to identify your skill gaps is by taking free quizzes online.  I am a huge fan of the website W3Schools (www.w3schools.com).  It offers completely free courses in languages like JavaScript, Python, Java, and React, as well as database query languages such as SQL, MySQL, and MongoDB.  Each of these courses has a quiz associated with it, which you can find by looking at the course directory or by searching on “Quizzes”.  Once you’ve taken a quiz, you can look at which questions you answered incorrectly, and that can provide guidance to the gaps in your knowledge.

Another useful way to discover what you don’t know is by using AI.  You can enter a prompt such as “What are the most important concepts to understand when using TypeScript?”, and the AI will return a list of concepts.  Reading through them, you can discover if there are any you don’t understand, and focus your learning in those areas.  Finally, AI is useful for when you need information about a specific area of programming, but you can’t remember what it’s called.  If you ask a question like “What is the name of the process in JavaScript where you iterate through all the items in an array?”, the AI will return a list of common ways to iterate, including a for loop, a for…of loop, the forEach method, and higher order methods like map, filter, and reduce.  Chances are that one of those methods was the one that you were looking for!