Welcome to the Treehouse Community
Looking to learn something new?
Routine Poutine26,038 Points
How is the background to QA Engineers different from other software developers?
QA Engineering is a very interesting field that I know next to nothing about. I was curious as to what type of education one would need in order to enter this field, such as a generic Computer Science degree or an MS that focuses on this particular branch of CS. I'm hoping this class helps me take better care at producing good code in the first place since I'm used to thinking from the end to the beginning -- though that may be a weakness, since I'm told I should think step by step in modularity, one function at a time. Maybe that's just functional programming?
Ryan SaulTreehouse Guest Teacher
Hi Matthew! Yea this is a pretty great question. Personally I came from a Support Engineering background before getting into QA, and from that I had a business degree with a focus in Information Systems. My support role had a lot of focus on technical challenges and customer feedback, so my company thought it was a good fit. Most of my colleagues in the field started with positions in manual testing, and most do not really have much experience in programming. I think traditional Computer Science degrees are great for QA, but often they don't have a lot of experience in testing, which I find a little odd. I think many who find themselves in "SDET" positions (Software Developer Engineer in Test) usually come from traditional programmer backgrounds though.
Those who I've observed are best with testing have gone through some training both in test automation and have a good sense of whatever the company is "doing". Each organization presents a unique set of challenges in what makes a quality product, so I've also seen some great testers with backgrounds in customer success departments. They have a really great idea of what makes a quality product to the customer.
Its kind of a diverse field with a lot of opportunity, especially in agile teams. Even just improving the release cycle tends to help a ton in improving quality. If you can knock out releases quickly by having lots of automated tests and a speedy release window, then you can fix problems more quickly and give your customers a better product. If you are the type that has a high attention to detail, you can be really valuable just in manually spotting problems as they arise.
Hope that answers your question!
I think Ryan nailed it. I was lucky and landed a manual QA job, then landed in Production Support before moving over to another project as a Business Analyst/Scrum master. I think if you know basic programming and object oriented design you can easily get into QA engineering. If you start in manual testing and have the programming background or know a language well enough you can easily move from one to another. You definitely dont need any special degree to be in QA, I was going to Technology management and realized most people I work with come from all different walks of life. If testing is where you want to be, it is definitely a rewarding field, and you can do a lot in it.
Best of luck!
Thanks Ryan and Justin! I've worked in QA / Software Test Engineering for a couple of years. I'm a job seeker, splitting my time looking into Data Analyst jobs, as well as going back into Software QA. I had my reasons for leaving it, but it might be a great time to come back! Also, the DevOps movement hadn't taken off, not to my knowledge anyway, when I was leaving QA 7 years ago.
AWESOME! Great question and that answer from Ryan was spot on! I do not have a background with any testing what so ever. I know a bit of HTML, CSS and a bit of WordPress (not sure if it helps but I know a bit :) And I am excited to start this new course/journey.