Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have three years and nine months of java development experience specifically in finance domain and now I want to move into testing (functional). But I took a break from my job due to location change. Is it advisable and how should I do it?

share|improve this question

closed as off topic by Mark Trapp Feb 16 '12 at 6:33

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

What's your reason for that change? IMO it's a step down the ladder. – user281377 Jan 20 '11 at 8:54
@ammoQ: it depends on which wall you put the ladder on don't you think? – user2567 Jan 20 '11 at 9:01
nothing wrong with being a professional tester, if thats what floats your boat. – quickly_now Jan 20 '11 at 9:09
Pierre 303: at least the average salary of a developer is significantely higher than that of a tester, according to – user281377 Jan 20 '11 at 9:43
@ammoQ Many companies are still "saving" on testers and are hiring unskilled testers - that's why average tester salary is low. However good "manual" tester is a very rare beast and should be - and usually is - paid accordingly. – Sergii Pozharov Jan 20 '11 at 12:09

Testing requires a different mindset than programming, and in many ways I think all programmers would benefit from spending some time as a tester. As a tester with programming experience, you would be able to automate much of what you do--making you more efficient and more able to spot accidental regressions.

With many companies, testing can be a way to get your foot in the door. Once you are there and you want to go back to programming, you will likely have that option.

share|improve this answer

Your programming skills will put you in very good steed for a testing position. Think about the powerful tools (e.g. selenium, JUnit, Mockito) and techniques (such as BDD/TDD) you'll be able to bring in to help build fantastic test suites! You'll also be able to understand where the developers are coming from and actually work with them to improve quality right from the start.

I don't see it being a problem, I'd actually emphasis how you can apply your programming skills to the testing domain.

share|improve this answer
BDD and TDD are not test tools, they are development methods. any test generated from BDD or TDD should be held as specification and not at testing that was done. – Display Name Jan 20 '11 at 14:03
@bold - right you are, answer clarified. – Martijn Verburg Jan 20 '11 at 14:50
how can one use TDD or BDD to develop a test? you go create a test for the test , where will it end? – Display Name Jan 20 '11 at 15:00
@bold So instead of the tester creating manual test instructions ("Go here, click here, see if value X pops up") a tester with programming skills could write BDD test in say cucumber to then run against the system. A test script using BDD if you will – Martijn Verburg Jan 20 '11 at 15:39
@DisplayName: we use a form of BDD for writing tests. We call it TDTD (Test Driven Test Development). We write a "perfect" test without regards to what keywords are available, and stub out all missing keywords with warnings. Then we go about developing those keywords. When the test finally passes, we're done with that test. So, instead of writing a test then working on code until it passes (TDD) we write a test then work on the test until it passes. The principle is the same. – Bryan Oakley Feb 16 '12 at 14:12

Testing has lower salary than development, well that is a Myth, why I am saying so: because I am a tester.

Testing is a great field and it's hard to find good testers (well it's true as companies hire less talented people).

Testing is not limited to manual testing - you can go to Automation, since you know Java you can learn Selenium. This tool is in demand nowadays.

If you love programming then stay there, if you want to be in testing you are welcome.

Each and every project requires testing so you need not to worry (if you are good in testing).

Often I encounter developers who think I am at downside as I am in testing (and most of them don't know anything) but I reply with More Defects In their work.

share|improve this answer
"...but i reply with More Defects In their work" pwned. – Aaron McIver Jan 20 '11 at 15:08
It might be a myth in your company. On average I'd say programmers earn more however. – Carra Jan 20 '11 at 16:37
@ Carra : No its not a Myth its truth. Those days were gone when QA used to get less salary. @ Neha : Search for iVV (Wikipedia) you will get your answer its a special Testing team. Also you might look at your organization level about testing. – Ranger Jan 21 '11 at 4:53

Well you have to start building your skills in testing now from scratch? salary expectation must come down as you will be starting. And success will not come overnight. You have developed one perspective now you have to developed another.

you must realize that Developers job is hectic but testers has the more responsibility as they have the final say..

But you said you want to do it , by all means go ahead but first of all ask yourself what naturally comes to.

Thinking wise after almost 4 years you will be equipped with more analytical capability you developed at your job which will definitely help. You will be seeing the application with more deeper thoughts.

And i as employer will definitely see programming as a plus point if you come for an interview as i will find some one with ability to unit test. So Just go ahead but first i think read a good book of unit testing or just testing.

share|improve this answer
Mostly right, but "have the final say"... I believe is a bit too idealistic. Realistically they are one voice among many (dev's, design, qa, managers, producers, marketing, etc...). QA's need to to good communicators (then again, good communication is a plus for anyone involved in software development, but especially for QA.) Expect to have to elaborate, and even defend, the issues you identify as well as those around you ("Vanessa's out sick, guess who gets to verify her bugs today..."). – mummey Jan 20 '11 at 10:02
Well if something bug goes to the client whom do you point out first? so they must have the final say . if not then they must not be the one to be blamed – maz3tt Jan 20 '11 at 10:10
yes he have to be a good communicator – maz3tt Jan 20 '11 at 10:11

First of all I wouldn't treat it as a mutually exclusive situation. Yes, the industry has labels for each of us and we're supposed to fit in those little boxes, but if you can see yourself as developer and tester then good for you. You can apply for jobs as a tester (sounds like you're in that situation), but will almost certainly have to start from the bottom and accept a pay cut too.

I would actually suggest you still go for developer jobs that resemble what you've already done, but in the interview tell them you are interested in the testing side too. Any smart employer should jump for joy to find someone willing to do both. Your best bet I think would be in a large scale environment where the development work is significantly functionally compartmentalised and one developer wouldn't really have a strong idea of what is going on in another area. Any kind of project there would last long enough for you to do the development work they hire you for and then make the transition over to testing at a later stage. And like Berin mentioned you'll be better at both in the end.

Note that you'd have to have your 'story' straight first though, because the first reaction (like here) would be Why? That's for you to decide but I would point out that I have always learned far more about my craft when the testing phase kicked in (integration/unit/whatever) than at any other time. If it worked the way I thought it would it's a bit of a non-event (after the initial joy of course). Also in a big project you would get a broader exposure to the overall system than a standard developer would.

I tell you this as someone who was a vanilla programmer, but also got heavily involved directly on the testing side too. (Boss noticed I was sitting around not getting alot of defects on my code while everyone else was being slammed... what can I say.) It helped that unlike many in the development team I treated the testers as peers and got on well with them... note there's a difference between system/functional testers and people who are checking if things are the right colour in user acceptance. Getting up out of my seat and walking over to them to talk about a bug works wonders too.

share|improve this answer

If you like testing and become a top-notch tester you can earn better than developers with more job prospects. I have seen that with good testers I have worked. Testing is much less technology specific (unlike developers that get branded as java, C#, ruby etc) but can be business domain specific (like health, insurance etc) to some extent. So the career is much more flexible. And as testing resources are ramped up during later phase of big projects there is also a good stream of contracting opportunity. You should also know the testing tools widely used in your local market like HP Quality Centre, HP TestDirector etc. Specialising in niches like performance testing using tools like LoadRunner is also very demanding.

You can then of course grow to be a test lead and eventually test manager who has as much say on a project as development managers in large projects.

share|improve this answer

thanks for the replies. But my further doubt is

Testing in itself is a huge field. Key Concern is: After being a Java developer for almost 4 years; What type of Testing role(function, regression, automation...) should I take up so that:

  1. I could leverage my past experience as a Java Developer in Finance domain
  2. Since my Objective is move to a Business Analyst role in a couple of years. What type of role in testing will help me get the domain expertise (that is end to end knowledge of the project as being a developer I have particularly worked in modules) along with technical skills to help move to the BA role. My View is: Testing preceded by a Development experience will give me a cross functional exposure across the value chain and will enhance my candidature for a Business role. Help needed: Suggestion on the right Testing role which helps me to reach a BA role with leveraging my current Java development experience.
share|improve this answer