Software Quality Assurance Manager
Job Title: Software Quality Assurance Lead
Type of Company: I work for a footwear manufacturing company. The company is global and has approximately six thousand employees worldwide.
Education: BS, New Hampshire College
Previous Experience: I worked as a Global Transportation Analyst focusing primarily on the business systems that our department utilized. That experience allowed me to move to the IT department within the same company.
Job Tasks: The Information Technology (IT) Software Quality Assurance department is new for my company. Our primary responsibility is the vetting of computer system code changes, our aim being to ensure that there aren't any bugs or flaws in the newly-written code which could cause our computers to crash. Only after all the code has been tested can the changes be adopted.
We have two kinds of testing we perform: manual testing and automated script testing. The manual tests consist of detailed "step" tests, each of which is performed by hand and results in a "pass" or a "fail." If any step fails, the whole examination is considered to have failed. The automated script testing is an automated (or coded) version of the same process, which can then be performed by computer and run over and over. The passes and failures are logged within the program and recorded.
Knowing which of these tests to execute is a significant part of the expertise we bring to the company. But every new project has a number of phases, and testing is only one phase.
Normally, the process goes something like this: someone in the business wants a change to one of the systems and he submits his request in the form of what are known as "requirements." IT will then do the coding required and review its new "design" with the business people. When (and if) the new design gets approved, the person who submitted the initial request will come up with so-called "test cases" and our software people will program the changes. When the programming's done, the QA department executes the test cases and fixes any bugs. Once we're satisfied that all the bugs have been removed, we turn the testing over to the business side for a final review. Then, and only then, when they have satisfied themselves that the new coding works, can the changes be implemented into the live production environment.
Best and Worst Parts of the Job: Since my department is new, we have to learn new systems specific to my area as well as learn all of the corporate systems so that we can support everyone. In addition, we have to pitch and demo our department to the rest of the company to obtain their approval. We need to demonstrate our value and one way we can do this is to show them how much work we're able to save them by providing a better software product. It is very exciting being in on something new like this.
Sadly, we cannot get approval from everyone in the company all at once. We have to win it incrementally, in small groups using the same (repetitive) demonstrations, and these can get boring.
1. Take as many programming courses as you can.
2) Learn as much about the business operations of the company or field you want to work in as you can. If you are interested in transportation, for
example, learn everything you can about domestic and international transportation. If you're interested in accounting, learn about the accounting software systems that companies use.
3) Don't be afraid to switch careers midstream.