1. Engineers


    Engineers! Claim your free membership
    on CrazyEngineers.io RIGHT NOW!
    __________

    Do not stay behind!

    Sign Up in < 10 Seconds

    Dismiss Notice

Career In Software Testing Vs. Software Development

Discussion in 'Engineering Jobs & Career Advice' started by Kaustubh Katdare, Mar 12, 2013.

  1. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    Lot of freshers write to me via email about career in software testing, various growth opportunities that exist in India vs. career in software development. The main issue is that no one really tells you what kind of jobs and career do both these career streams offer. This short essay aims to give you a clarity so that you can make a well informed decision and be happy about your career choice. I'll be as objective as possible, combining my own experiences of working in software development & testing team for over 3 years (I left the IT industry afterwards) and try to give you an overall idea of what to expect. I'll encourage you to read entire post and if you have questions, post them below.

    Understanding The Indian IT Industry :

    The Indian IT industry is mostly services based industry which relies mostly on two types of jobs : software development and software testing (QA). There are other streams too, but those are out of the scope of this discussion. We'll only focus on testing vs. development.

    Typically most big IT industries will take up projects from overseas clients and have engineers work on them. This leads to two career paths - Software Testing & Software Development. Overall - the software development teams are responsible for 'coding' and software testing teams are responsible for making sure that everything adheres to the specifications of the software being developed.

    Roles Played By Software Developers Vs. Software Testers :

    Typically there would be 'two' teams working in sync on a project because both development and testing cannot be separated. Every written code must be checked for quality and without any team not existing - it'd be impossible to create the final software. The point I'm driving home is that both software development and testing teams are equally important. It's a myth that software 'testing' is kind of a 'lower' job as compared to software development.

    When any project begins - both software development and testing teams get involved from day 1. While the actual job of software developers begins much later, software testing teams usually begins right at the time of verifying the specification documents and continues throughout the life cycle of the project. It'd not be wrong to say that software testing teams often have a better knowledge of the overall functioning of the software systems they are working on.

    Software development, is one of the most crucial parts because without it, nothing gets 'developed'. Project manager or team lead will assign specific modules to you which you will have to code according to the specifications finalised by the software testing & business development teams. Every module developed by the developers is checked by the testing team and approved.

    Skill Set Requirements:

    For Developers: The developer skill set will be determined by the nature of the project and the technology stack decided by the software architects (much senior position in the organisation). If the architects decide that a combo of Java, C, Ruby, Python would be used in the project then accordingly developers will be selected who are trained on these technologies.

    For Test Engineers: They require entirely different skill set which could be a mix of Java, C, Ruby, Python along with software manual and automation tools along with scripting languages. There are several automation tools that require programming knowledge. It's a myth that software testing engineers do not write code. Given the complexity of the project a software testing engineer might end up writing more complex code than his developer counterpart. The point to be understood is that - both development and testing jobs require you to have programming knowledge.

    Career Growth:

    Software testing and development engineers have unique growth paths with similarities. Software developers may get promoted to module lead, team lead, project lead, project manager and so on depending on the company's hierarchy.

    A software testing engineer will have a similar path where he/she will become team lead, project lead, project manager, test architect etc. It's a myth that there are no or little growth opportunities in software testing career.

    Salaries Offered To Testing Engineers Vs. Developers:

    It's a fact that few companies offer a bit lesser salary to testing engineers as compared to developers at the initial phase of career. But I've not seen this remaining a problem for longer time in career. In fact, a qualified automation engineer can draw much more salary than a developer with similar work experience (years).

    Ultimately You Will Become Managers

    I'd say 'unfortunately' because every promotion will take you away from your technical expertise. Ultimately you will become managers and will mostly use Microsoft Outlook, Power Point and Excel Sheets no matter which stream (development or testing) you belonged to. At that stage, your salaries will be the same as what the industry offers and your testing stream won't really matter.

    There are few companies that allow you to stick to your roots through caries technical and management career paths. That however is out of scope of this post. You may ask specific questions about this, if you have any.

    Should You Choose Software Development Or Software Testing?

    My answer remains the same as what I've answered in most of the other similar discussions here on CrazyEngineers. If you are 'passionate' about coding [check if you've contributed to open source projects, developed a software in your part time just because it's fun, have you cracked complex coding problems just for fun?] then opt for software development.

    If you aren't passionate about coding and haven't written a single line of code out of interest - any stream is okay for you. I think most of the students will fall in this category. You'll be happy in any career stream - be it development or testing.

    Bottom Line: Don't form opinions or take decisions based on what people say. Most people are not at all exposed to the IT industry or just one of testing or development. Do your own research, gather information on your own from well informed people (CE is an excellent place to do that). If you have questions, post them below. We've several software testing engineers and software developers who will be happy to answer your questions. If you have general comments, they are welcome too.

    Update: While we welcome all your specific questions in this discussion; I'd strongly recommend that you should get yourself registered on Welcome - CrazyEngineers . It allows you to ask your questions privately to the industry/domain experts and seek help.
     
    • Like Like x 3
    • Informative Informative x 2
    #1 Kaustubh Katdare, Mar 12, 2013
    Last edited: Aug 18, 2016
  2. tanvisharma

    tanvisharma Apprentice

    Engineering Discipline:
    Computer Science
    hi biggie, i have researched a lot about this and what i understood is same, be it development or testing both has equal importance.
    for development we need to have very good reasoning and analytical-skills.
    and interest in programming, so finally one has to decide their choice :). i have a doubt, after like 1 or 2 years of experience in testing field, can we jump to development side, with full fledged preparation for development?;) same as a fresher in development side?
     
  3. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    Both software testing and development jobs would (for that matter, any engineering job would) require you to have reasoning, analytical and logical skills. Changing career paths is difficult but not impossible. Few of my friends decided to shift from development to testing and few jumped from testing to development. But the jump isn't very easy always.

    The major reason for this shift of track being difficult is that once you are experienced in something, no Organization would really want to lose out on your expertise. 2 years later, you'll be commanding higher salary than a fresher and if both of you are starting afresh, the company would rather prefer a fresher than a candidate who's built his/her expertise in testing or development.

    It entirely depends on your employer, nature of projects available, and the criteria that might look favorable to having you switch track after getting experience in one field for two years.

    It doesn't make much sense to switch track actually, unless you get terribly pissed off at work. If you've dedicated two years to something, you should better be building on it than switching to something newer. Of course, if you have a very strong will and are ready to do whatever it takes, you might find yourself in the career path of your choice.

    My friend had spent ~2 years in development and he decided to switch to software testing. He had to change his organisation and take salary cut because the new employer agreed to hire him at a fresher level.
     
    • Like Like x 2
    • Agree Agree x 1
  4. tanvisharma

    tanvisharma Apprentice

    Engineering Discipline:
    Computer Science
    thank you biggie for the information...:)
     
  5. Sandeeep Usha

    Sandeeep Usha Newbie

    Engineering Discipline:
    IT
    Hi Kaustubh,
    I'm a B.Tech(CSIT) graduate working as Testing Engineer. I do Manual Testing.
    Coding is my passion and I always wanted to be a developer but unfortunately I got into testing domain:( after joining our organization.So, I thought of moving to development.Now,I have started doing automation which is interesting but we use only vbscript in QTP.
    Is it better to move to development or to continue career in automation testing by getting hands on QTP and selenium.
     
  6. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    If coding is your interest, I think you should consider yourself lucky that you're in testing domain. I think you haven't explored all the opportunities the world of QA opens for you.

    I'd strongly recommend that you should develop expertise in all the automation tools out there. Start with JUnit, HTTPUnit, Ruby, Selenium, PERL scripting and QTP. With your main interest in coding; it should be very easy for you to develop expertise in all these automation & scripting tools and trust me - that's going to make your whole profile kick-ass!

    If I were you, I'd definitely leverage my current experience in testing, develop additional skills and then look for the company that offers me the right salary & role. I'm confident that with all of those in your resume - no company will ever deny you a job.

    PS: There's a huge shortage of QTP & Selenium experts. But don't limit yourself to those tools. Combine the best of programming and testing and you should see yourself skyrocketing past your peers in development (and testing).
     
    • Agree Agree x 1
  7. Sandeeep Usha

    Sandeeep Usha Newbie

    Engineering Discipline:
    IT
    Thanks for your reply Kaustubh..
     
  8. Anoop Kumar

    Moderator

    Engineering Discipline:
    IT
    If coding is your passion and your are in testing. Selenium is best thing you could learn. It's just replica of core java coding and most of tester fear of coding.
    There is very good market and opportunity in selenium.
     
  9. Manisha Singh27

    Engineering Discipline:
    Computer Science
    How is the future of vsts 2012 testing tool of .net ?
     
  10. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    I'd not recommend any software testing engineer to stick to one particular tool. All the automation tools are intended to automate the manual execution of test cases. Once you become familiar with one tool; learning others shouldn't be too difficult.

    That said, if you are talking about Visual Studio testing tool, I think it should attract you a few job offers; but it'd help if you could do a search on job portals for companies that require knowledge of this tool and then base your decision.
     
    • Like Like x 1
  11. raghunathan

    raghunathan Newbie

    Engineering Discipline:
    Electronics & Communications
    Hi
    I am 2013 passedout
    I completed my engineering(ECE). I got placed in one MNc company as a testing engineer
    i am getting very less salary i am having fear on my career wether i chosen a right career or not .
    please clarify my doubts wheter testing is a good career or not.
     
  12. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    @raghunathan - please read the first post in this discussion. It should clarify all your doubts. If you have further questions, you may ask them below. :)
     
  13. raghunathan

    raghunathan Newbie

    Engineering Discipline:
    Electronics & Communications
    Hi kaustaub
    I have doubt why for testers alone as a fresher they are giving very less salary.

    hi
    I have one more doubt some of them saying that the salary for developers will be always high compare to tester.the openings also will be less for the experienced testing candidate.
     
    #13 raghunathan, Jan 16, 2014
    Last edited by a moderator: Jan 16, 2014
  14. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    I think I'd tag @Anil Jain and @Saandeep Sreerambatla - both of them have been in the Quality Assurance domain and have years of experience to tell you their own perspective.

    I think it's because Indian companies don't focus on quality as much as they should do. But in the longer term; I guarantee that how much you'll earn has nothing to do with what career stream you've chosen. It's all about excelling in what you are doing.

    I know a person who rose from a junior engineer to vice president of a major company in a short span of about 10 year; all while being in the QA domain. Trust me, you'd definitely want to go where there's a shortage of highly skilled people.
     
    • Like Like x 1
  15. sookie

    sookie Addict

    Engineering Discipline:
    Computer Science
    Its difficult for Electricals & Electronics engineer to go into development domain in starting until you can really impress the interviewer(or boss later) with your programming & data structure skills.
     
  16. ShSK

    ShSK Apprentice

    Engineering Discipline:
    Computer Science
    I passed out in 2012(CS)and was never a coder.Joined an organisation as java developer.Started learning J2EE and found interesting.Later was put into testing project and worked as manual tester.Found relaxing but not challenging.So thinking of switching back to development.On reading the above threads I am really in a fix now.I am more of inclination towards management stuff in IT and don't want be into technical coding all my career life even if i am finding it interesting now.Heard that at one stage growth in development stagnates.Please throw some light on this and also of other career options in IT like BA.
     
  17. Kaustubh Katdare

    Administrator

    Engineering Discipline:
    Electrical
    @ShSK - I think you should stick to testing field and develop expertise in automation testing. That should give you an edge over others when it comes to promotions or even when making a switch. A testing engineer with background in development would be a killer combination; if you get into QA automation.

    Ultimately, the managers; irrespective of their background, would do similar jobs: Excel, Powerpoint & Outlook (email). The only difference will be that you're likely to be managing the QA teams instead of Dev teams.

    Remember that most of the projects outsourced to Indian IT companies will have the QA component; which is going to be very important when it comes to delivery.

    I'd recommend developing expertise in PERL, QTP, UNIX and also master a few tools like Selenium. Enjoy the best of both worlds (relaxing+coding) and make your way to higher steps in the corporate hierarchy.
     
  18. micheal john

    micheal john Addict

    Engineering Discipline:
    Computer Science
    Being java/j2ee developer switching to testing, will there be any scope:)
     
  19. Anoop Kumar

    Moderator

    Engineering Discipline:
    IT
    Become a Selenium webdriver tester and developer :)
     
    • Like Like x 2
  20. ShSK

    ShSK Apprentice

    Engineering Discipline:
    Computer Science
    thanks for the answers but is it true that career in Core development(J2EE) stagnates at some point,as in no growth in heirarchy or financially?Also whats a BA role n how to assume it? also heard if testing provides lesser switching options while dev gives load of them.
     

Share This Page