My Education: Madurai Kamaraj University, India, Bachelor of Engineering. Purdue University- Java, J2ee and web development courses.
My Prior Experience: I worked as a quality assurance analyst for 6 years before joining my current job.
My Company: My company is a Health care software company that makes a clinical decision support system which help the physicians and medical professionals to provide proper care, minimize hospital visits, etc.
Job/Career Overview: My primary responsibility is to make sure the application developed by our developers is meeting the requirements and working as expected. I review requirements and other business scenario documents to prepare different positive and negative scenarios and test cases. These scenarios are tested on the application to make sure that the application is stable and meets the customer requirements.
Other responsibility is preparing documents which is called 'test plan' that will explain objective, scope, over view of the application, what are the modules can be tested and when they can be done, who are resources assigned to the task, what are the restriction, what tools we need , environment requirement, and automation tools etc. The test plan is prepared based on use case or requirements document.
Whenever there is a issue, I need to work on the production issues identified by the customer. My job is to figure out why this is happening and inform the root cause to the developers with elaborated steps to reproduce the defect.
My other responsibilities are opening tickets for the issues identified in the application and assign to developers.
I work on validating the defects fixed in each build and do regression testing for the existing functionalities to make sure nothing else gets affected because of the new enhancement in the functionality or the defect fixes.
There is a meeting with development lead and manager every day to report the critical issues and status of the testing.
I work on preparing data for my testing activities or other application that generate reports which needs thousands of records, so my responsibility is creating or updating a existing program to create xmls in order to meet our data requirements.
Overall as a quality assurance engineer I should know complete functionality of the application, have some database and programming knowledge, and view the product in the customer's angle to make sure the application satisfies the customer requirements and provide ideas to enhance the application if there is a risk and act like a detective to find the scenarios that will break the system.
I rate this career 8 out of 10.
The best part of the job is that you get to be a kind of detective who finds bugs and solves mysteries of problems that arise on the application in the production. Most of the time, problems aren't what they appear to be at the surface, and to solve them permanently usually involves in-depth technical analysis, talking to lots of people, reviewing product history and documentation and more.
The worst part is time constraint. Within the given day or two I need to complete testing the whole application, each and every functionality, enhancement requests and defect fixes. If there is a automation script, that needs to be modified to meet the current change.
It is not a eight hour a day job, we need to be available after work hours whenever there is a problem in the production. We need to be ready to test the emergency patch build as quick as possible in order to avoid downtime in the production environment.
The basic requirement is BS degree, act as a liaison to customers, attention to details, able to understand or visualize the product, think outside the box, study some programming that will help to understand the code as a white box tester, basic data base knowledge to verify large amount of data directly in the database and xml knowledge.
Learn some automation tools to automate the testing activities, knowledge of black box, white box, functional, end to end, system and regression testing, able to do performance testing, cross-platform testing and user acceptance testing.