Article on techgoss.com
The domestic job market is looking up at last. Recession in USA and Europe has altered the dynamics of the Indian technology industry with mass recruitments becoming a thing of the past. Indian IT Firms now look for people with specific skills. And TalentSprint has stepped in to feed the demand for highly skilled professionals in the IT, Banking and Finance sectors.
TalentSprint (.talentsprint.com) is a leader in creating high performance professionals for the global industry through fast track transformations. It partners with Information Technology, Banking, Financial Services, and Insurance firms to design unique programs that reduce the cost of recruitment and induction and enable young professionals with minimal or no work experience start exciting careers in these firms. These short, experiential programs called ‘sprints’ are based on industry-designed curriculum, backed up by national or international certifications, and include internships. The placement percentages are very high.
Techgoss spoke to two of the TalentSprint Students about their experiences.
Ms. Manjupriya, a Current Student at TalentSprint, holds a B.Sc. (Mathematics) and worked as a Test Engineer at HCL Technologies in Hyderabad for 18 months. She is currently doing her M.Sc. in Total Quality Management.
Ms. Pratyusha was an intern at AppLabs from Nov - Feb, and now is working as an Associate Software Engineer. Prior to AppLabs, she was in Recruitment and Payment Process training at Ivy Comptech for 3 years 8 months. A B.Sc in Psychology and English, she is currently pursuing an MBA through Distance Learning program at ICFAI.
Techgoss: Please tell us your background, what did you do in academics and how different is it in the career you have chosen now...
Manjupriya: I am basically from B.Sc. – Math sphere. But I won’t say that they are no where related to my Testing profession. Because math knowledge is very much helpful while using testing techniques like equivalence class partitioning and boundary value analysis. According to me, I find lot of similarities rather than differences.
Similarities: In both math and testing we have to apply our mind, we use suppose factors, comparing expected and actual results.
Differences: Working backward is effective in testing but not in math. Out of box thinking works in testing alone.
Pratyusha: My academic background: My entire schooling until the X grade was in St.Ann's High School, ICSE, Secunderabad. I then moved to the US (NJ) where I completed 2 more years of high school (+2) and went on to study B.Sc. (Psychology & English) in The University of Texas, Arlington. I was also very interested in Computer Science, which incidentally was a double major until I realized I had too many pre-requisites to wrap that up. I was however more fascinated with Psychology and the expert insight it had to offer into human behavior. I also took courses in Banking and Finance as a part of my diploma for Home Mortgage and worked as a loan officer in a mortgage company. This experience has helped me in terms of the core knowledge that is needed to understand BFSI domain that I currently work in. As far as technical knowledge is concerned, testing is a very dynamic field so learning is always a continuous process.
Techgoss: How does this compare to other normal jobs?
Manjupriya: As a voice based tech support one should possess good communication skills. As a developer you should be very creative. As a business analyst one should possess good analytical and reasoning skills. As a customer care executive one should have problem solving skills. Like wise as a sales executive one should be convincing by nature.
But a tester needs all these qualities together. One should be creative while breaking an application, have good communication skills while reporting to clients, should be able to convince the development team, should have good reasoning skills to analyze the business risk, and guide the development team in the fixing the bug with problem solving skills. Thus I could find that this profession satisfies all the skills that are required by different professions.
Pratyusha: I'm not so sure I understand what the definition of a 'normal job' is. I’ll try to answer this: Any job requires a few key areas that need to be top notch. Testing is no different.
Every client wants the timely delivery of the application. Software testing plays a major role in the software development life cycle, so proper planning of the software testing plans and timely execution of the plan is the commendable quality of a software tester. A Software tester should define all the testing criteria, approach, assumptions and chart out a time bound schedule. All of which requires proper planning.
The role of a software tester is to find the logical as well as functional errors in a software application. To find logical errors a software tester should be able to do complete visualization and mapping of the all possible scenarios. And so, to develop a strategy and to test the software application requires strong and fundamental logical and analytical approach towards software testing.
This quality forms the crux of what a good tester should possess. Body language, presentation skills, a good listener and a confident approach to problem solving are all important aspects of software testing.
Techgoss: Is testing a traditional male bastion like Unix Sys Admin or do testing teams have a fair share of Indian women? India, unlike other countries, has a good proportion of women in IT fields like Analysis and Programming.
Manjupriya: This statement may fit in the older days but now women have changed the entire picture. Most of the Leading companies are proving that they do not gender - discriminate and that they encourage women at all levels. Actually one third of the employees in IT software industry are women. They best suit the field for their responsiveness and thoroughness. They have good inter personal skills and are more methodical in their approach to every task. Women's advancement to senior level management positions ensures that the company's growth is not put to threat. Instead it broadens the managerial ground for the company giving it a cutting edge over others who have not understood the potential of their women employees.
Pratyusha: I would like to believe that we are slowly but steadily moving towards an egalitarian society. It would be unfair to call any field these days solely a male domain. Testing is no exception. This field too has its share of women like most fast growing job profiles. Roles in all IT fields - Test / Project Lead, Business Analysts, Product Specialists, Managing IT projects and HR all have a fair share of women in it. Granted that the male: female ratio is not at par with other countries but that is something that our culture inculcated in the past. Not anymore. Women are fast gaining the reputation of being highly efficient on all fronts and the statistics today will second that statement.
It is normal to run into more men than women in certain fields and have some "these are not my people" moments. Personally, I've had to study, do research and talk to a succession of well…men but a lot of women will vouch for the fact that it's a thing of the past now.
It is important to realize that our social or technical infrastructure has been built not only on those who hold MBAs or PhDs but, rather, on the merit that any individual who enters its domain. The idea is that the harder a person works, the more an individual participates and shares, the more merit the individual achieves and can use to his—or her—empowerment.
Techgoss: Do women bring special skills to software testing? Does their ability to multi task help is solving bugs in complex software?
Manjupriya: Frankly speaking, women find faults in everything. This is not a negative aspect; it is because she wants everything to be perfect. Perfection implies quality. Women have good analytical skills where she analyses effectively and efficiently what risk could occur or the impact of the bug if the bug is not getting fixed with immediate effect. Women’s biggest asset is communication skills which plays a vital role in the testing field. She always finds a solution for problem. Just logging bugs is not so important, but if you able to trace out where the problem has really arisen, then that note may be helpful for developer to fix bug easily.
I personally feel that women are not only skilled but they are talented. Skill is something that anybody can acquire but talent is something which is inbuilt. All the above characteristics are basically built within women. Thus it makes easier for women to be more successful in this field.
Pratyusha: To be able to find defect in a product you need to have the patience, perseverance and common sense. There are times when we tend to get highly technical and fail to test basic facts that hold the product together. It would be unjust to say that all women have ability to multi task. It is a skill that some have mastered over the years. Let's remember we are human first and not all of us are par excellence, all the time. Having said that, I think women have all the qualities mentioned above and the ability to multi task which adds value to determine bugs at early stages of product life cycle. It is important to note that as the male roles within the workplace evolve, so must our roles as women. I’ve seen a lot of women shy away from challenges. There is something called self-esteem and courage, which are required to deal with your fears head on. Benjamin Disraeli said, "Never apologize for showing feeling. When you do so, you apologize for truth."
Techgoss: What is so special is this course you are doing that helps you become a better tester?
Manjupriya: Here in Talent Sprint (TS) they teach us how to learn. In current situation when you put yourself in the IT industry nobody has the time to teach anyone. One should have real zeal and interest in learning things on their own. TS really helps the youth to self motivate themselves to learn things.
Learning is easy, but imparting to others what you have learned is more important. You should be able to educate people with the knowledge you have gained. TS impart this by training people on presentation skills. This is very important in the testing field. When you find a defect you should be able to report it to the client in an effective manner. Similarly when you gain knowledge in the project you should be able to share that among the team. Thus the presentation skills imparted by Talent sprint are very useful.
They also teach us about experiential learning. You start to do exploratory testing on application and gain knowledge and start implementing the techniques and methodologies leaned and do a real time project.
The mindset you have while joining the institution grows exponentially when you come out from TS. They change your focus on testing. The “just” factor changes to ‘wow’ factor.
Last but not least, you come out as a research scholar and join an esteemed company as world class testers.
Pratyusha: This course offers us the basics of testing and how to proceed from scratch. It does not need a pre-requisite or a prior understanding which makes it easy to absorb. The information given is easy to grasp and helps us get familiar with the jargon used in IT companies. It also helps us with the a-z involved in a project and the roles played by different people.
It is way more important to have critical-thinking than whether you write your own compiler or a thousand lines of code. Sometimes a degree alone might not come in handy as much as a good amount of smart thinking does. And that is what is needed to be a good tester.
Techgoss: What methodologies do you do for your testing?
Manjupriya: Defects are found too late in the life cycle as testing is involved in the last stage. Thus introducing testing in the early stage will reduce the number of defects. On this behalf V-model is a widely used testing model in the software industry depending on the project and the software product. It emphasizes that testing should be started in the early stage. Here testing activities are performed in parallel with Development activities and only the running of test is done later. It includes 4 test levels – component testing, integration testing, system testing and acceptance testing which run parallel with business development levels - coding phase, design / project specification phase, system specification phase, and business requirement phase respectively. Other widely models are Iterative and Incremental models. For instance - Rapid application development, Rational Unified Process, and Agile development.
Pratyusha: All recognized testing methodologies that are internationally accepted and practiced. It is also based on what approach suits the project on hand best. A few examples are the V model, Spiral Model, RUP, RAD, Agile Testing, Water Fall Model etc.
Techgoss: Why is that every few months we hear about software bugs in Facebook, Twitter, Google's Buzz and other software? Is it because sometimes all big companies compromise on unit and system testing?
Manjupriya: According to me compromise should be a big ‘NO’ for any big company. Unit and system testing are 2 important testing levels. Presence of any s/w bugs has following reasons;
First, exhaustive testing is not possible. It consumes more time, cost and man power. If this is implemented we cannot release the product on time or product may not even hit the market. So testing is done sensible on high risk areas. Critical issues are found and fixed soon.
Secondly, there are few defects which may cause serious effects on the product on fixing. Fixing a single issue may affect the whole working flow of the application or product. So in that case if the bug is really not going to affect your business hard you can keep them in open status in the deferred database and release the product in the market. Along with that release notes are also attached which detail the known issues in the products.
Another reason for s/w bugs is that due to a lot of improvements / enhancements / few new features introduced in the application, defects may be introduced. So an acute view on this may decrease the manipulating of defects.
Pratyusha: No product is 100% bug free. No matter how hard or thoroughly we test it, there will be defects that occur in real life situation which cannot always be mimicked in a test environment. A bug can arise at any given stage, which is why we have compatibility testing. All these are web-apps and the compatibility testing involves the OS/browser combination, so when testing is done, it’s almost impossible to test in all given OS/browsers. Development companies often test their codes and often miss out defects which may arise on Sanity/Smoke to cover the main functionality (UAT). It helps to have different degrees of Independent testing, Peer testing which eventually leads to fewer bugs. It is hard to comment how or what procedures these companies follow consistently. I’m sure there are different methods and approaches that they follow that are best suited for their product.