Reader Question: I love being in IT, doing technical work and working with business people, but I don’t like programming or writing big requirements documents. Any suggestions on what I can do?
First, thank you for your email and your question. You may want to consider moving to a profession in software testing. Software Testers are the quiet giants of the IT profession and the guardians of software quality.
Software testing requires a combination of knowledge and skill. From a business knowledge perspective, the development of test cases require an understanding of the software’s purpose and how it will be used once it’s deployed for use. On the technical side, a professional tester must also have an understanding of testing-oriented best practices, bug tracking procedures, the software development methodology being employed (most likely Waterfall or Agile), project management and other related disciplines.
Regarding needed skills, testing professionals must have a working knowledge of automated testing tools, bug tracking and reporting software, and other related technologies.
There is a school of thought that software developers should be able to test the software they created. I’m a software developer by background and always disagreed with that premise. Certainly developers can rudimentarily test their own code, but a developer’s first love is the creation of new software, not software testing. If testing was their first love, they would be testers, not developers. Additionally, again speaking as a software tester myself, programmers test software to see if it works, professional testers test software to find out where it’s broken. It’s this simple, but important, distinction that makes professional testers more likely to find hidden bugs, functionality that is inconsistent with the original specifications and possible system malfunctions.
There is yet another school of thought that says Business Analysts make great testers because they are the people defining the needed software functionality and, therefore, are the best candidates to assess if the created software contains the needed functionality. While this is true, Business Analysts, unless they are also trained as professional testers, lack the formalized testing skill set needed to create quality state-of-the-art test scripts and lack the hands-on skills to properly use automated software testing tools. Additionally, as programmers love to program, Business Analysts love to work with business users and define/build application functional requirements. Therefore, testing is at best a second activity, should they wish to perform it.
In fairness to Business Analysts, they do have three additional attributes that could serve them well as testers. They have a willingness to dig into the details, an investigative mentality honed during the process of uncovering and defining needed application functionality, and a process oriented mentality.
All that said, if you agree with what I have said to date, while testing can be performed by programmers or Business Analysts, the expectation should be that the testing process will not be as complete, as detailed, as well designed, or as well executed as if it was performed by an experienced, well-schooled, professional tester.
Returning to your original question, consider professional testing as a potential profession. It may provide you the technical feel you like without the programming tasks. It keeps you close to the business, without the need of writing business specifications. Lastly, it’s a great profession for those who enjoy the challenge of discovery.
Until next time, work hard, work smart, and continue to build your professional brand.