In this house, you are QA

Recently my wife put me to task over not finishing something I had started in the house.  In short I hadn’t cleaned up after myself.  Instead of letting it slide and her taking care of it, I got called out on it.  And rightfully so.

Quality begins and ends with you.  It is not anyone elses’ responsibility to make sure that your code works, preforms well, or that it meets known requirements.  The fact that you may have a QA department to verify that you are doing your job doesn’t negate your professional responsibility to DO IT.

How would you write code if there wasn’t a QA department to verify it?  Would you force yourself to make sure it was done, or would you put your slop onto your customers and make them deal with it?  Why would it be acceptable to force your slop on other departments?  In my current job we have the luxury of a release team.  In my last job we didn’t.  Anything I did wrong in my configuration or didn’t plan out well in my code we ended up having to face during a release.  Does the fact that it’s not directly my problem make it okay to push my troubles onto another group of people?  What about load testing?  What about design issues?  What about security?  Isn’t it your code?

When I was training my teacher would show us something once or twice and then ask us to demonstrate we knew it.  Once we could show that we were capable of doing it the way he asked us… we became immediately responsible for doing it that way every time.  Is it fair?  Absolutely!  If know your WSDL contracts do not meet standards and you let it slide, shame on you.    If you see broken windows in your code, and you do nothing about it… shame on you.  The ultimate goal of each release of software is to make your code better.  If you aren’t working toward achieving that, you should quit your job and stop programming.

I am serious.  If you were a doctor would it be acceptable to not be trying to improve your patients every time you had a chance?  If you weren’t taking care of them at every opportunity, you are a sham.  While we aren’t directly saving people’s lives (though we could be), we are faced every day with helping a company succeed in meeting it’s goals.  You are robbing them with every paycheck if you aren’t doing your best.  Think about it from their point of view.  They are spending n-dollars to have you assist them in success.  If you aren’t doing it, why should they pay you?

If you think this is hard, you are right.  In fact, I would quantify this as the hardest part of my life.  Even as I wrote this post I am reminded of how often I fail at this.  My wife just called me out again on putting something off that needed to be done right now.  She noticed that I had written down a quote, “Don’t put off for tomorrow that which can be done today”, and then asked me to live up to it.  Last week at work I also knew something critical was wrong and instead of making with the haste to resolve it, I totally let it slide.    Shame on me.

Use those moments as opportunities to start taking ownership over you life.  These are going to happen far more then you will generally care for.  As you grow in your experience and knowledge, it actually will become more difficult to do.  With great knowledge comes great responsibility, right?  Don’t use your failures as an excuse either.  To save on breath… just f^*$ing do it (nsfw).


[update 2/9/2009 @ 11:00 PM]

For the record.  No, I am not angry in this post.  I don’t mind cleaning up after myself, however I do mind cleaning up after you.

Post a comment or leave a trackback: Trackback URL.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: