Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

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 been in QA for 10 years, trying to get into development for about 5 of them. I have taken classes in C++, Java and C#. I was able to write some tools and unit tests in C# at my current job and (by all accounts) did a good job of it.

However, 8 months ago, my employer tasked me with the responsibility of establishing the new QA group. Now I'm doing manual testing and deployment with no promise of returning to development. I have looked at the job boards and there are a lot of jobs for web developers, so what else can I do to get one? I've picked up some books on Ruby on Rails that I plan to work through on the Mac at home, but I'm not sure employers would be interested in anything but commercial web development.

Do you have any suggestions on how I can use my experience to get a job as a junior developer? And I mean one that entails programming; the postings I've seen for junior developer amount to doing all the grunt work besides coding. They should just call them "Technical Secretaries".


locked by ChrisF Mar 23 '14 at 19:31

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

closed as off-topic by ChrisF Mar 23 '14 at 19:31

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – ChrisF
If this question can be reworded to fit the rules in the help center, please edit the question.

Can you introduce automation for your QA team? – Ethel Evans Feb 10 '11 at 18:57

Have you talked to your current employer about your desire to become a developer? Start with that, and if they don't oblige, it's time to look elsewhere.

If you're looking at developer positions (junior positions are best to start with), make sure they will get you experience in doing actual development, not the "grunt work" you mentioned. As long as you get in somewhere, stick it out for a few years and if it's not your cup of tea, move on. Having a developer position on your resume, even for a couple of years, will help you get better positions. I would be honest during any interviews and emphasize that you are passionate about becoming a developer after all the QA experience you have.

You should definitely leverage your QA experience because experience does count.

+1 for leveraging your QA experience. You shouldn't start at the total ground floor with 10 years of experience. – Ethel Evans Feb 10 '11 at 18:57

QA is often looked down on by developers - and this is often unjustifiable.

However, the bias does exist and you can't exactly strike QA out of your resume.

Here is my suggestion: Instead of making a transition directly to dev, make a transition to a "halfway role". The term (at least in the US) is called an "Automation Engineer". It combines QA skills with programming skills and usually involves very little manual testing or traditional QA. Your experience with unit tests and the focus of a TDD make this quite a nice position. I held that position from a year (though I came from dev and later went back to dev) and can tell you that there was a lot of software engineering to be done.

If you stick in QA, switch to a company where there is more internal mobility if you do well (there are such companies), and where there is a tradition and focus of automated testing.

Also try out with agile shops. They tend to observe the boundaries of qa/dev less.

"SDET" is similar to automation engineer (software development engineer in test). I'm an SDET and spend about 50% of my time coding - mostly test tools and fixtures. The rest of the time is spent writing tests, debugging, etc., largely using my own tools. +1 for agile. – Ethel Evans Feb 10 '11 at 18:55

I don't recall seeing "technical secretary" jobs back when I was looking for my first development job. This may vary by where you are, of course, but I think that if you really want to break into development, you should not discriminate against junior dev job postings. Most if not all of them will say something along the lines of "other duties as required by management". That's normal. It doesn't mean you'll be making coffee for your boss.

I think the important thing for you would be to get that first dev job. Doesn't really matter what it is -- you just need to have "software developer" appear on your resume to make it easier to find your second dev job, which will likely be better than the first.

Your existing QA experience can work in your favour. You have real-world work experience that a college graduate isn't likely to have. So the best advice I can give is to start applying for jobs and interviewing. If you don't end up getting hired, follow up with the people who interviewed you and ask them what you could've done better or differently. That'll help you out more than anything else.

RE: "making coffee for the boss"; in smaller start-ups, this often does happen. – FrustratedWithFormsDesigner Feb 10 '11 at 15:00
In my first dev job I was guy who got the chicken in on Fridays :D – Matt Ellen Feb 10 '11 at 15:13
@FrustratedWithFormsDesigner I still make coffee in my current job. ;) Gotta put another pot on after taking the last cup. – Adam Lear Feb 10 '11 at 15:22
♦: As long as everyone takes turns making the coffee, it's all good. ;) – FrustratedWithFormsDesigner Feb 10 '11 at 15:30
I had a job where the CEO showed new hires how to make coffee. His feeling was everyone who drinks coffee should make it and do it right. – JeffO Feb 10 '11 at 17:42

My first task as a junior dev after 1.5 years in QA (and 3 years on support during summers) was to fix markup and css issues. After a few weeks I was fixing simple code defects before taking responsibility for areas of work and eventually projects.

In any profession, you start at the bottom and work your way up, development is certainly no exception and very competetive. You clearly have aptitude (teaching yourself 4 languages) and drive. QA and unit testing experience will make your life much easier too.

Take a job as a junior developer and wait for your passion, experience and ability to take you further up the ladder of responsibility.


Based on your question, the area you live in appears to have a great number of webdev positions but it looks like your classwork is focused more on application development.

If your goal is simply to move into a development job, then you should be sure to open up your search to any development job. Tailor your resume to focus on your development experience at work, write a few sentences to describe the automated tools/unit tests you wrote. Not only will this show you have some development experience but it will show you can document your work intelligently. Just don't make it a filler block of text, it needs to be written well enough so that the reviewer doesn't file your resume in the basket under their desk. If you don't think you can make it interesting then you're not trying yet. Do the same to explain your coursework and side projects. Just make sure you leave some interesting details that you can talk about when you do get the interview.

That being said, do not belittle your experience in QA. If you dig into the code to help the developers identify where their bugs are then make sure you explain that, if you are constantly looking for ways to improve processes then don't leave that out, if you sit at your desk waiting for the day to end... then you probably don't want to mention that. Just make sure everything you put on your resume is based on reality, best of luck.


If I were an SDET (and thank goodness I'm not), I would show my aptitude for software engineering by implementing a valuable internal tool for the company, and I would use C++/Java/C# to demonstrate my skills. The reason I would work on an internal tool is that most likely I would not be given a chance to write customer-facing code as an SDET, so an internal tool is the (only) way to go.

Think about any kind of internal infrastructure or tools that your company needs but just doesn't have enough engineers to work on them, such as system monitoring, report generation, test harness, etc. and build the best system you possibly can. Ask your manager or your manager's manager what they need in infrastructure so that whatever you build is important to the company.

And when you build it, apply solid software engineering skills:

  • write maintainable code
  • add lots of comments
  • implement it for efficiency, scalability, and reliability
  • set goals and a release schedule
  • write a readable design document.

At the start of many jobs, I was told that I wouldn't touch live code for months. This lasts about two weeks. Then someone throws a new project at the already swamped development group. Guess who's available?


Not the answer you're looking for? Browse other questions tagged or ask your own question.