Stop Trying to Break Stuff
One common thing I hear when I interview potential Quality Engineers and ask them why they like software testing, is that they enjoy breaking things. I have concerns with that – as quality engineering is not about breaking stuff, but building it better. Our job is not to find holes in products, but prevent holes from appearing in the first place. To put it more simply. your goal as a successful test engineer shouldn’t be to find defects at all, but to ensure that there aren’t any. This might sounds like a pipe-dream, because surely the only way to prevent defects from being put into production, is to find them before they get there. I however believe that is simply thinking inside the software development box - we need to think outside of it and start asking ourselves what we can do design systems and frameworks that can find as much as possible before it even gets to a software tester for final validation. It is possible, if you're willing to invest time in engineering the solution.
What’s more – you can do this without needing to test a single bit of built code if you work closely with your architects, engineering team and business analysts to catch these defects early through requirements testing, static analysis, quality sustainable architectural design and pre-built automated test cases that can test that the code meets requirements before it is even written. This though requires strong focus on coding and software design and not on the typical testing approach of fault finding.
Test engineers that want to step back and let coders do their thing and then they test background, whether manual or automated are in danger of becoming obsolete as the software development industry can no longer afford to pay the expensive cost of additional testing cycles to improve their ability to release to market. We need quality and we need it as soon as possible to thrive in a competitive market.
Does that mean that your analytical skills and critical thinking developed over the years are lost? Absolutely not. There is still a need for test engineers in any company to think out the box and have a bigger picture focus on software quality and putting measures in place to improve it efficiently. The only difference is we need to view this from an engineering perspective. Through design and analysis, writing code, building systems and collaboration.
So, if you’re passionate about making it big in the quality engineering game - start trying to build solutions rather than break them.