Finding the right professional niche makes all the difference to a rewarding career. Don’t you agree? We have all had part-time jobs in high school and college to pay the bills even if the work was boring. That is a reasonable arrangement in the short term. After all, you know something better is coming soon. Once you have arrived in your professional career, there’s no time to waste.
In the software industry, how do you know if you should take on a software testing role? Many people fall into the role accidentally because they happen to care about quality. Alternatively, you might simply be good at developing and executing processes. Does that mean that you should take on full-time software testing responsibilities?
What to expect in this blog post
In this short guide, you will discover if software testing work is right for you. Here’s the deal on how to use this guide. If you find yourself agreeing with five or more of these principles…
Congratulations! You have found the right role in software.
If you find yourself agreeing with less than five principles, it is time to reassess your career situation. Look for ways to offload some or all of your software testing responsibilities. If that does not work out, you may need to take a more radical step of searching for a new job.
1. You are known for process and discipline in your work
Most effective software testing professionals are known for their process outlook. They like to develop and leverage systems, checklists, and procedures to guide their work. If you have a process outlook, you are probably the kind of person who regularly writes “standard operating procedures” at work and home.
Have you ever found yourself speaking up about the need for more process in meetings or discussions? That is an excellent sign that you see the value of process and have the skills to apply process to the organization. After all, software testing requires the ability to work well with other people.
Tip: Simple checklists are used to save lives and prevent devastating errors in medicine, aviation, and other industries. For more insight on checklists, check out “The Checklist Manifesto” by Atul Gawande.
2. You are known for effective confrontation
You are working through your software testing process on the beta release of your company’s flagship product. You find a critical test failure that will prevent 50% of your users from completing a critical activity like saving data.
How you handle that discovery says a lot about whether or not you are cut out for software testing. If you rub your hands with glee and have a big smile on your face, that is a good sign you will like software testing.
Identifying a problem is not the whole story, however. If you carefully document your findings with ideas on possible solutions, well done! You are the type of software tester that companies need.
Alas, that may not be enough. Sometimes, you may need to take a further step – confront others about the defect and demand a solution. If you simply detect a problem and make a mediocre effort, that may not be enough. That is how small problems eventually grow into full-blown crisis situations.
3. You use a variety of software testing tools
As an effective software tester, you recognize that tools have the potential to augment your performance. Of course, you will start by checking into the software tools provided by your company. After all, those tools are likely already customized to the company’s processes.
However, it is not enough to simply take the tools provided and “stick to the script.” If you are interested in getting ahead and shipping great software, keeping an eye out for new tools is an excellent professional habit to develop.
Advanced Tip: Do you ever find yourself asking other testers about their testing tools? Alternatively, reading discussion threads where different tools are compared? Those are signs that you had the mindset and dedicated required to succeed as a software developer.
You may regularly attend meetups and conferences to stay informed about the latest tools. In my opinion, regularly seeking out and experimenting with new software testing tools is a hallmark of a rock star software tester.
4. You know what the business and customers want from the software
What if you come into work next Monday and find that you have over hundred bugs and test cases sitting in your queue? To make smart choices and prioritize your time, you need to be aligned with the business. How does a software tester find out what matters? It is simple. Take the time to meet with product managers, marketing professionals, and user. Ask them questions like: what problem do you want to solve?
Consider this example: you are working as a software tester for a financial services client. Once in production, this application will handle millions of transactions per day and be subject to constant hacking attacks. Therefore, the client will want to see proof – detailed, exhaustive proof – that you have thoroughly developed test cases relating to security.
Habit Tip: When you are focused on grinding out work, you might forget to stay in touch with the business. Set a recurring calendar reminder for twice per month to meet or call with someone close to the product and customers. This habit will keep you closely informed on what the business needs.
5. You know how to explain bugs in a clear and compelling way
Did you know that technical professionals need sales skills to succeed? It is true! As a software tester, you need to sell the value of testing to find bugs.
An accomplished software tester is committed to quality and shining the light throughout the product. That level of dedication may frustrate some people on the team who just want to ship the software. To overcome that resistance, your ability to communicate and persuade others.
Tip: For an introduction to selling and persuasive skills, pick up Dan Pink’s book “To Sell Is Human: The Surprising Truth About Moving Others.” Pink makes the case that selling skills are essential to success in a wide variety of professions.
6. You invest your own time and money to stay current on software testing and technology
You are living in the golden age of technology. There are more books, websites, conferences and tools than ever before. However, those resources have no value unless you seek them out. You do not need to work 24/7 or head into the office every weekend. However, if you are committed to professional success in software testing, you should look for books and podcasts to keep your skills sharp.
What if you have limited money to invest in your professional growth? Don’t worry – nobody is asking you to take a Master’s degree in software engineering. In two hours per week, you can make meaningful progress. Let’s illustrate how that could work.
- Listen to a 30-minute software development podcast on your commute to the office. Write down two ideas to explore new tools.
- Revisit your notes from the podcast. Your objective is to find one new technique or tool to add to your professional toolbox.
- Take an hour to attend a Meetup session with other software professionals. Focus on having one or two in-depth conversations.
7. You have the heart of an explorer
The best software testers are dedicated to exploration. In your spare time, you might enjoy the science fiction exploration of Captain Picard and the Star Trek universe. You might have a bucket list goal to see every country in the world. The urge to see, experience and veer off the beaten path is incredibly valuable for software testers.
Let’s say that you develop ten test cases based on the business priorities and your understanding of the product. A novice tester will execute that plan and then call it a day. In my opinion, that is not enough to truly make it as a successful software tester.
You need to be the kind of person who asks questions like this:
- Video Game Testing. What happens if the character uses multiple weapons while running off this ledge?
- Database Testing. How can I force this database to crash by putting extra load on it?
- Smartphone App Testing. What happens to performance if the user’s network connection suddenly dies?
- Integration Testing. What is the user experience in Salesforce if a certain popular customization interacts with our service?
- Error Message Testing. Are error messages correctly displayed when I trigger malfunctions?
Your creativity needs rest, relaxation, and variety to be effective. That means taking occasional breaks throughout the day and time away from technology. Research has found that a short walk through a park or forest does wonders to improve your mood and well-being.
8. You bring an end to end perspective to your work
Consider the number of specialized roles in a large software team. You might have dedicated user interface designers, testing staff, product managers, project managers and engineers at various experience levels. If you are a tester, you need to seek out the full picture from beginning to end. Otherwise, you are likely to miss bugs and failure points that occur between systems.
How exactly can you acquire an end to end knowledge of a software product to test it? Use the following strategies to get up to speed quickly:
Read the documentation
It may sound obvious, but you would be surprised how many testers skip this step.
Connect with project managers
By the nature of their role, project managers regularly interact with many different people. Ask them for any diagrams or charts that illustrate the application’s structures.
Read bug reports
If the organization has a bug report database, reading this material may prove helpful. Remember that you are seeking the big picture at this point so resist the urge to dive into solutions.
Evaluate your understanding with the Feynman Technique
Named after accomplished physicist Richard Feynman, this technique is an excellent way to put your end to end knowledge to the test. If you can explain the product’s component to a person with zero knowledge of the product (e.g. a brand new intern), then you are off to the races.
9. You know how to read between the lines and see the invisible
If you have the ability to read between the lines, you have the capacity to become a great software tester. For example, you may find that a certain process takes much longer than planned to run. On the surface, non-testers may not see much to be worried about it. After all, the application passes the test cases.
Here’s where the rubber meets the road.
A dedicated tester will see the implications suggested by degraded performance. The cause may be something like poorly constructed SQL queries. Alternatively, you may draw the lines between this misfire and other problems detected elsewhere in the product.
It all comes down to the ability to switch between linear thinking (e.g. comprehensively executing a checklist) and lateral thinking (e.g. identifying connections and patterns that run counter to conventional wisdom).
10. You are never completely satisfied with products and processes
Have you ever watched a slow-moving retail checkout line and started to think about ways to improve the process?
That is the mindset that effective software testers bring to their work. Sure, you design and run the tests developed with the rest of the team. That is rarely enough for you. Like any strength, you can hurt yourself if you push this strength too far.
Can you have “too much software quality”?
The answer is yes! If the product is never shipped because it is constantly tested, you are taking your strength too far. Fortunately, there is a productive way to productively manage this instinct. Create a document where you take notes for the next version of the software. You can then bring up your observations at a team meeting or when the next iteration is planned.
How Can You Develop These Software Testing Qualities?
In my experience, the very best software testers tend to have almost all of these signs. If you are just getting started in testing, don’t worry. If you have drive and curiosity, you can deliver these capabilities over time.
Take item number four from the list – understanding what the business wants from the software. You could get started by meeting with a sales professional at your company. Sales professionals usually know exactly what customers like and hate about software. That is critical intelligence to guide your thinking about software testing.
Share an example of how you were recognized as a proficient software tester in the comments. Did you have to fight to get more time for testing? Did you point out a disconnect between modules created by different departments? We want to hear your stories!