My company hired me for developer's position. However, as they don't have a project, I was moved to Testing.

Is this a bad move for my career?

  • 4
    "Testing" is very broad. Please be more specific. Jun 30 '14 at 5:37
  • 1
    While you've gotten some answers, it would be helpful to know if this is a permanent transfer, temporary until project X starts or is ready for you, until some unknown project has a need, until some unknown project appears out of the sky, until they figure out what to do with you. In any case, demonstrating that you are very good at your job, no matter where you are assigned, will tend to much more quickly get you into positions that you desire. If you go to the test team and they aren't thrilled with you then do you think a project needing a lower level developer is going to want you?
    – Dunk
    Jun 30 '14 at 16:14
  • I'll also add that testing is part of software development. So hiring you to a developer's position and assigning you to do testing is still keeping you in the developer's position. I noticed that you have a BScE. Testing frequently is different in the embedded world. You usually automate tests by talking to various hardware devices (e.g. Logic Analyzer, Spectrum Analyzer, Protocol Analyzer, etc...). So it may not be as boring as it initially sounds. If you can make something "More" out of it than their expectations then this would be awesome to talk about on any future job interviews.
    – Dunk
    Jun 30 '14 at 16:19
  • This is way to broad. Engineers need to test though. I see no qualms here Jun 30 '14 at 16:45
  • 1
    In its current form this question is too broad and discussion-y. If you add more information (in response to the previous comments) and focus it more about how to evaluate the effect of the change on your career (not "what should I do", but "how do I evaluate"), we can look at reopening. Thanks. Jun 30 '14 at 22:02

No, getting another skill in your resume is not bad. It never is. Testing is an important part of the software development process and even as a programmer, you will be helped by knowing these skills.

If it turns out you're stuck as a tester for a long period when you really want to program, then you should talk to your boss. If you both agree that this is a short term situation, then embrace it and make sure you learn as much as you can.

  • 1
    Seconded - understanding how to do proper testing is going to make you a much better developer. Embrace the opportunity!
    – Jenny D
    Jun 30 '14 at 7:52
  • 1
    @JennyD - that assumes that the OP will learn to do "proper testing" rather than some slapdash job since they're not trained or engaged.
    – Telastyn
    Jun 30 '14 at 13:52
  • @Telastyn Well, if they do embrace the opportunity and have any sort of learning skills, they at least have the chance to. If not, not. Can we go with "encourages to" rather than "assumes that"?
    – Jenny D
    Jun 30 '14 at 13:54
  • 1
    @user3416398 - then find another company.
    – Telastyn
    Jul 19 '14 at 15:57
  • 1
    @user3416398 - you'll make less money over time as QA...
    – Telastyn
    Jul 19 '14 at 16:01

Let me dissent with the other answerers - assuming you don't want to be a tester, this is horrible for your career.

Sure, having the experience doing testing is a new and valuable skill that you can use to do a better job creating software.

But his means that your resume now has a gap where you didn't actually create software. HR will look at that and not count it as the always desired "years of experience". Hiring managers (and your peers!) will look at that and wonder why you got moved to testing, was it because you couldn't write code?

Worse yet, you're not gaining the experience actually designing, writing, and troubleshooting code. This experience more than anything will make you a better software engineer. And the skills you do have will quickly grow obsolete, even if you do enough to keep them from atrophying. The opportunity cost is too high.

And then there's the work itself. Being a QA engineer of any sort involves a lot of mindless repetition. Oh, there's a new release candidate. I get to run through my thousands of test cases again. Or I get to extend this automated test framework to handle UI widget 4033. Most software engineers I've known have found the work itself to be maddening. Not only are they not good at it (since they're not engaged - or thrive when creating things, not breaking things), but they quickly look for new work - derailing any momentum in their current job (though it could be argued that the job shift did that already).

And that's all before considering pay. Fair or not, QA Engineers make about 15% less than software engineers. Sure, you're keeping your current salary for now, but the new work will guide your raises, which in turn will influence your salary for years to come.

  • 4
    -1. Your understanding of SQA is reductive and doesn't really capture the nature of the work. Too often programmers see QA professionals as mindless drones, test-bots that just run through scripts time and time again, but that's like characterizing web programmers as code-bots who take a photoshop mockup and implement it literally, with no input to the creative process. Jun 30 '14 at 14:22
  • 6
    @Yamikuronue - having been a SQA engineer for 3 years, I heartily disagree. Certainly there is some creative process in doing the test plans, and the scripts if you're lucky enough to not be an entirely manual tester; but that creative part is a small fraction of the overall work. I've seen no different during the other 15 years of my career.
    – Telastyn
    Jun 30 '14 at 14:46
  • 2
    @Yamikuronue - Symantec, 3M and 3 places you've never heard of. I'm happy that it's not soul crushing everywhere, but I am skeptical that your experience is in any way normal.
    – Telastyn
    Jun 30 '14 at 14:58
  • 1
    I agree in part with what both of you said, however, the hardest people to place tend to be people with less experience. What often happens when projects are just starting up is the experienced people are developing the plan, architecture and requirements and the less experienced people can't be put on the project until that is done. The usual logical place to put them where they are easy to get out when needed is testing. It would be nice for everyone to work a project from the get go, but budgets tend not to allow this. So if this is a temporary (3 months or less) then don't worry about it.
    – Dunk
    Jun 30 '14 at 15:56
  • 4
    +1. Testing is important, but so is mopping the floor. If you want a career as a software developer, get out of testing ASAP before you reach the point where testing jobs are all you can get. Jul 1 '14 at 6:51

It depends:

  1. Is being moved to Testing better than sitting around all day doing nothing? The consequence of inactivity is unemployment.

  2. Is testing an essential part of the development process?

  3. Is it necessary for senior developers have to understand the Testing process well enough to work with the testers?

If you determine that the answer to the questions above is "yes", then being moved to Testing is good for your career. If you determine that the answers to the questions above is "no", then you are wasting time going to work.

  • I've learned things in every job I've ever been, including cashiering at a grocery store. Not necessarily the things you'd expect from reading the job description, either. If the OP isn't learning things, it's not his time that's being wasted but his opportunity.
    – Jenny D
    Jun 30 '14 at 13:55
  • 1
    @JennyD Excellent point - too many look at the short-term because it's in front of them and don't see the medium term and the long term that are behind the short-term :) Neither of the words "short-sightedness" and "tunnel vision" would be used in the description of a successful professional career. Jun 30 '14 at 14:01
  • @VietnhiPhuvan , but my company is not letting me become developer.They made me tester for lifetime.I talked to boss. But i got hired as dev.I love devlopment NOT testing . – user3416398 just now edit Jul 19 '14 at 15:56
  • @user3416398 Well, when you apply for a development job with someone else, your mention of your boss's intention to typrcast you into a tester for life will be an excellent reason for leaving. Until you take off,it doesn't hurt to be the best tester that you can be. Jul 19 '14 at 23:25

Proper test design can be a highly skilled field of its own, and requires a fairly deep understanding of programming to predict what usage patterns will be edge cases/stress tests. Arguably, every programmer should be writing testcases for their own code as they go, but that rarely happens... and there are sometimes emergent properties that can only be provoked when testing the system as a whole. If they have you designing tests for a while, consider it a good learning experience ... just as working customer support, while frustrating at times, is a good education in how customers are using and thinking about the product.

If you do a job well and cheerfully, it can only reflect well on you.

If it isn't what you want to do or where you think your skills are best used, remind management of that periodically (not more than four to six times per year) and they'll eventually move you back to development.

  • Not more than 4 to 6 times a year! Ouch, I hate the thought of sitting there during year three, checking my calendar to see if it's time again. If it's something you seriously dislike, and you've raised it once or twice already in a formal manner... what are the chances it's going to be fixed? :/ Jun 30 '14 at 7:46
  • The chances it will be fixed depend on the balance of headcount availability in testing vs. demands upon development, which does change over time. My point is that pestering managers more often than that balance gets reconsidered at their level is likely to come across as "not willing to adapt to meet the Needs Of The Business" -- and/or just plain not pleasant to work with -- and may become a career-limiting move.
    – keshlam
    Jun 30 '14 at 19:14
  • 1
    @keshlam: it's may limit your career in your present organization. OTOH doing work that is less valuable than work you are capable erodes your value to every potential employer. Jul 2 '14 at 8:31
  • Not necessarily. Exposure to testing -- especially exposure to the weird things customers do after buying your products -- is a plus. Showing that you can write strong tests is a plus. Showing that you can use the results from those tests to improve the product is a plus. It's a question of how long you're doing it, why you're doing it, and what else you've been doing. Testing is not necessarily "less valuable"; it's a different value.
    – keshlam
    Jul 2 '14 at 15:03

Don't regard this assignment as a season in jail. Instead, treat it as a rare opportunity. Seriously.

What career trajectory do you hope for?

Most careers in the world of software creation require a deep knowledge of the lifecycle of software. That lifecycle includes many phases of work other than the cutting of new code.

There's specification. There's detailed design. There's unit testing. There's usability testing, system testing, integration testing, and load testing.

There's deployment support, ongoing support. There's maintenance and defect correction.

Real world experience in software quality assurance will improve your skills at every single one of these phases of software creation.

For example, in specification: you'll be able to understand "how are we going to test this system?" In detailed design, you'll be able to design for testability. This is especially challenging for system that will scale up and require load testing.

So, talk to your manager and say you hope to learn all you can from this temporary assignment to a software quality assurance team. Talk to your software-quality professional colleagues, and get to know something about how they think.

Find a copy of the classic book "The Mythical Man Month" by Dr. Fred Brooks, and read it. It explains the wide difference between code-creation and software product development.


Testing is pretty vague. The answer depends a lot on what you are doing. Writing automated tests is a valuable skill. Executing manual tests is a poor practice, and will retard your technical advancement. If your organization is manually testing, can it be automated?

In short, if they are stuck on you executing manual tests, I suggest you find something else to do.

  • I agree with this point. If you're only a test monkey executing scripts then this process will suck. However if you're creating the testing plan then that's a skill in itself.
    – Philip
    Jul 2 '14 at 1:42

Not the answer you're looking for? Browse other questions tagged .