sainath's Advice on Sunday, December 27, 2009 :
The amount of salary you earn is directly dependent on where you are sitting on the demand curve, the more the number of people available in the market who possess the skills that you do, the lesser will be the average salary. There was a period when the demand for testers was high against the demand for developers, but it appears right now that this has rationalized, so the situational advantage is no longer there. Basing long-term career decisions purely on demand-supply fluctuations is not a good idea, as you will then keep changing tracks and never gain specialized, hard-to-find skills. Having specialized skills is the sure-shot method of ensuring that you are in high demand in the market and earn more than the average salary in your chosen area.
Functional testing is a good area to start off but you should not stay there forever. Target more specialized areas like performance testing, penetration testing where automated tools cannot fully replace the skills of an intelligent tester. For penetration testing, you need to have tool knowledge, testing knowledge, basic coding abilities (in the application security testing domain you will also be asked to test how secure the source code is. So you do need a basic level of code reading ability to do the same). Check out my earlier related response in this area.www.dotnetfunda.com/advices/a65-career-.aspx
In performance testing, many tools are available right now for simulating application load, however, this area requires you to have good ability to understand the load factor from many angles - for ex. database (poorly performing stored procedures), application (memory leaks), server (high CPU, memory utiilization) , network bandwidth (how the application will perform in different bandwidth bands). Check out the below best practice link from Microsoft which will give you some idea.msdn.microsoft.com/en-us/library/ms998581.aspx
The CA Introscope analyzer is also an outstanding tool as it literally shows you which are the worst performing methods in your code using a process called profiling. Check out the CA Application Performance Management Flash Demo in the "insights and documents" section in the
A related piece of advice from Kapil is also available belowwww.dotnetfunda.com/advices/a24-performance-testing-.aspx
If you have actually gone through the above links you will realize that the above skills are not easily available in the market, so salary is not a constraint for people having such skills.
Testing as a practice is becoming highly structured and standardized. There are organizations which only offer various kinds of testing as a paid service to customers. Then again, IT and non-IT companies sometimes choose to have their own testing centers of excellence.Your skills will rise purely based on how mature the testing practice is in your organization.
With quality experience and knowledge, you can actually move towards heading the testing practice in organizations, so high-profile careers are indeed available.
While taking peer feedback is important, it is also important to be sure that you are well informed when making career decisions. Are the people offering you free advice successful themselves, if yes, please go ahead and follow them. If no, you need to do your own analysis - and typically seek advice from people who have already achieved what you seek to achieve."It is essential to free yourself from the fears of what others may think about you."
- Al Siebert
"There is no way of existing on this planet that won't be criticized by someone."
- Al Siebert
You can be a top-class specialist in testing or development only if you have the basic degree of talent and passion for the area and are disciplined to convert your talent into hard skills through practice and daily disciplined action. Without high degree of genuine interest and passion for your area you simply won't do it."Therefore, I say, you must have passion for what you do."
- Kapil Dev in "Straight from the heart: An autobiography."
To specifically answer your questions:
1. Should i continue my career as software tester or should i try to move to software development?
Ans : Based on the above discussion you can come to a decision in this regard.
2. What is the actual career growth of a software tester?
Check out the below link.www.xndev.com/articles/Where_Do_I_Go_From_Here.pdf
Apart from this check out the profiles who are heading the test centers of various organizations on LinkedIn - this should give you a fair idea of what step to target next.
3. Should i consider to quite this company come back to India and continue working as software tester?
Ans: Whatever decision you take, it has to align with your next career goal. Just changing from one company to another will not help. The following pointers should help you:
How mature is the testing practice in the new company?
What role are you being offered and what kind of exposure will you gain?
Does the new job help you grow - in areas of skill, finance, career growth?
All the best !