Developers in Testing

Jesse says:

…and finding Quality Assurance people with Python experience (especially advanced Test Engineering skills) is even harder.

…either you teach QA people automation/test engineering, or you try to find a programmer who wants to learn/do test engineering and teaching them python.

Corey says:

We need to see more Test Engineers and Developers In Test. Unfortunately, this hybrid roll often falls through cracks as many people view quality/testing vs. developing as a binary choice.

As someone who is a developer/tester and a manager of a QA team of developer/testers using Python, I tend to agree with both Jesse and Corey.

To Jesse’s second point, that I noted above: I’m fairly straightforward to my team and most people at large about how I’m a failed application developer. Whether it was with Perl, PHP, Ruby or Python I just don’t grok the fundamentals of building an application. But in all of the failures, I did figure out that I understood how the pieces of a system fit together, how things should work, what items misbehave most and I developed a penchant for breaking things that were supposed to work. I fell into testing after a failing pretty miserably in application development.

And Corey’s right, too. I think Titus Brown and Grig Gheorghiu have been incredibly outspoken in the Python community about testing through their blogs, their presentations/tutorials @ PyCon and on the Testing in Python Mailing list. Allen Hutchinson at Google has spearhearded the Google Test Automation Conference (2006 – London, 2007 – New York). Jeff Fredrick, who I met @ CITCON Chicago a number of years ago, has always talked about the developer/tester idea. Brett Pettichord, Chris McMahon and the Watir guys have also done a great job bringing the developer/tester idea to the Ruby/Watir masses.

But Jesse and Corey are both correct that finding these people is a challenge. They’re out there though!

Comments 5

  1. Jesse wrote:

    I concur with everything you said – Grig, Titus, etc have all been pushing a focus on testing. I had the opportunity to go to the first GTAC – but alas, work got in the way.

    Perhaps it’s not just testing in python that needs more focus, but rather Test Engineering – there’s a goblin in the room, and that’s old school waterfall-methodology development where development throws code over a wall to QA, and QA pushes buttons until someone calls it good enough.

    This goblin is so deeply entrenched in the software world that people always fall into a binary category – either they write code, or they perform tests.

    I don’t see the difference: A software engineer is a software engineer. The only difference is the goal of the code/tools you write. Some of us write product code, some of us write code that proves that codes.

    Still others, namely, me, hop in between both. I wouldn’t have it any other way given how complex and distributed systems are rapidly becoming.

    I like your statement on being a “failed” application developer “turned QA guy” – I think it’s spot on for many of us who do understand and focus on how things work and interact. I commonly call this practical programming – how does a system *really* work, how do the parts really come together – and most of all, how do you prove any of it.

    Ok, I meandered a bit. +1 :)

    Posted 17 Apr 2008 at 8:37 am
  2. Brett wrote:

    “A software engineer is a software engineer. The only difference is the goal of the code/tools you write”

    Coming from the agile pm side of things … I’ll call that one of the most true statements I’ve read on the dev vs. qa debate.

    ps – TP, don’t sell yourself short. I have seen many who call themselves ‘application developers’ that aren’t qualified to carry your macbook.

    Posted 17 Apr 2008 at 2:40 pm
  3. Dr. T_Bone wrote:

    I’m so not a computer/SF guy. I had to look up grok because I thought it was a typo. This may help people like me. http://en.wikipedia.org/wiki/Grok (apologizes to Britannica peeps)

    Posted 17 Apr 2008 at 6:51 pm
  4. ftorres wrote:

    “A software engineer is a software engineer. The only difference is the goal of the code/tools you write”

    I like it too and practice it also.

    ftorres

    InCisif.net
    Web Testing with C# or VB.NET

    Posted 18 Apr 2008 at 10:05 pm
  5. Nishant Verma wrote:

    Hey Guyzz….
    I don’t understand why you people are trying to equate an application developer and an automation tester who writes code to test something. They are 2 different people with different mindset. I am an automation engineer who writes code to find out bugs and ease my testing process. So while writing code I have different mindset and my objective is to ease and automate my testing. But a developer writes code to achieve an objective may be Requirement Spec or Functionality.

    Posted 27 Apr 2008 at 7:37 am