The one with the transition - Dev to QA
This has been a therapy of sorts.
I am in the middle of transitioning to a new company. Not that my current company is no good. In fact, it has been one of the best companies I had the pleasure to be a part of so far. I made a lot of really wonderful memories here in and also worked with incredible people.
And like what Barbara Streisand famously sang, some good things never last.
Now, a new chapter begins. An exciting new adventure with lots of new things to learn and opportunities to grow and explore.
But first, let me tell you about my journey to QA.
It's not something you dream of when you were little. Maybe some did, but not me. I entered in the world of QA by opportunity. Almost 5 years ago, I was still working as a software development engineer in a tiny country called Singapore. The company's headquarters was in France. I already had more than 8 years of software development experience back then. I also had experience being in different roles like scrum master, deployment engineer, automation test engineer, and even tech lead.
Until an opportunity to move to Paris arrived. I have been wanting to move outside for various personal reasons. Europe was definitely in my places-to-move-after-Singapore but France was not one of them due to the thought of needing to speak French.
As most things in life, one needs to be open if one needs to grow. This was definitely the answer to our prayers and that answer came with the job as a QA engineer. It was daunting at first. I had so many questions. Would I learn a lot from QA? Will I like doing QA? What do I need to change in my perspective, in the way I think? Will I succeed?
Well fortunately for me, the answer were all yes. I would not say it would be the same for all developers transitioning or wanting to transition to QA. But it was definitely a decision that I did not regret to take even until now as I'm recalling that experience.
Well one of the things that I learned working as a QA engineer, you still need to be technical. You still need to be think critically, an inquisitive mind eager to solve problems. The main difference between a developer mindset with a QA mindset is the goal. A developer when implementing something, has one goal in mind - to make something work. He implements and code things to solve a problem. While on the other hand, the QA's mindset is totally different. When a QA implements an automation test for example or even just planning and writing different test cases has a specific goal in mind, to anticipate what would possibly go wrong. A good QA engineer. can think of a thousand and one ways an application or function in test could go wrong.
So conflicts often appear between a developer and a QA engineer because of the difference in mindset. I believe that what makes my experience interesting. I started out as a developer and I have been one for a really long time. Moving to QA, I needed to change that perspective. But fortunately, having trained with a developer mindset all those years, helped me anticipate even more where would things possibly go wrong. Thankfully to my developer background that I was able to not only anticipate but also to relate to developers at a certain level and be able to address to them in a more logical way the bugs that were found by QA.
I have not regretted that decision since that fateful day. I learned so much being a QA engineer and still learning day to day about QA engineering. It's a whole new exciting branch of engineering and I believe it will be something that would continue to be something undoubtedly more essential to the software process as a whole.
Well one of the things that I learned working as a QA engineer, you still need to be technical. You still need to be think critically, an inquisitive mind eager to solve problems. The main difference between a developer mindset with a QA mindset is the goal. A developer when implementing something, has one goal in mind - to make something work. He implements and code things to solve a problem. While on the other hand, the QA's mindset is totally different. When a QA implements an automation test for example or even just planning and writing different test cases has a specific goal in mind, to anticipate what would possibly go wrong. A good QA engineer. can think of a thousand and one ways an application or function in test could go wrong.
I have not regretted that decision since that fateful day. I learned so much being a QA engineer and still learning day to day about QA engineering. It's a whole new exciting branch of engineering and I believe it will be something that would continue to be something undoubtedly more essential to the software process as a whole.

Really cool article, hope you will enjoy your new work. As a developer I agree with the mindset you describe here but as habits like TDD get more and more popular I think a developer should now have both vision to ease qa work and also accelerate the automatisation of testing of his platform :)
ReplyDelete