How to educate customers about importance of code quality?


2

I work as a remote developer for a small product development company. I always try to write code that is easily understandable, easy to manage, reuse and low on defects. I am quite a good tester as well, can foresee complex business scenarios and test/clear them before hand.

I would feel very bad if someone looks at my code and says 'WTF'. In all the companies I have worked all my colleagues (even more senior than me) consider me very good at what I do.

Currently I am running a single person start-up with one long-term project in hand(Testing). This I got through a personal contact, so it was easy. Now I want to expand and I face a big dilemma.

I would like to hire developers who share the same principles as I do, enjoy programming and are passionate about technology. BUT they are only available at a very high premium here in India. The salaries vary from $3-4 hour to $20 an hour, and usually to get a good dev the cost is around $10 hour. All expenditures extra. So the overall cost to do the project is higher than the minimum.

Lets say there is another company in competition which hires developers at minimum cost. They write WTF code all the time. BUT they hire a UI designer who can create decent user interfaces. How to compete with them? These companies never admit they write WTF code and the customer never gets to see the code.
These companies only run for profits and I am trying to maintain a file balance between profit(30%) and quality(70%).

How do I explain to the customer the importance of code quality or educate them about how important it is to maintain good coding standards? Or it does not really matter anymore :(

Getting Started Development

asked Mar 29 '13 at 07:11
Blank
Aseem Gautam
331 points
  • Of course it matters but only if the customers knows the code is poor quality or actually cares - also if they only have $x to spend and you are 2x then so be it, move on and find those customers who value quality – Bhttoan 11 years ago
  • Quality is free. I love the question, and want to let you in on something I was taught, good quality code is free. Yes, free. To learn about this, there are some good courses/books (The exercises at the back of: A discipline for software engineering Book by Watts Humphrey, are very good) – Eddyparkinson 11 years ago

2 Answers


2

Customers do need code quality

However, some may not know about it but tend to realize it only late in the cycle when it comes back to bite them. On the other hand, some of them ask in advance and give adequate weighting in their evaluation.

More importantly, providing quality products and services can set your business apart in the market teeming with poor quality work. You seem to have the mindset for it. Take the lead.

Having said that, it is not easy to compete in the open market and get premium price for better quality work. Here are some suggestions:

Try to find new customers through references from existing customers, who can vouch for your work. When bidding on jobs for new customers, try to list the things you commit to do to improve code quality such as:

  • Certified coders
  • Unit testing frameworks that you might be using
  • Code review as part of your process
  • Automated regression testing
  • Dedicated specialized testers in your team
  • Other quality assurance process steps that you follow

You can even go so far as to offer to fix free of charge post-release issues traced back to code quality.

answered Mar 29 '13 at 10:12
Blank
Ashok Ramachandran
121 points

2

This is a question of market understanding and language barrier.

Your USP - Unique Selling Preposition is that you write really elegant and stable code. However the market is currently going to hear bluh, bluh, premium expensive code. So we need to translate - first we need to identify what the market needs that the WTF coders cannot give. At a guess I am going to say "Our Products Just Work" or "Our Software Never Breaks" something like that. Something that basically says - this is what you need.

The second tool in education is price. Do not price at the bottom of the market as you are offering a premium service. There are some clients that will only be interested in how cheap something is - they will never care if it works and you don't want them as clients.

Find ways to tell the story about how your better approach solves problems, saves money and meets whatever needs exist in the market- "Zero crashes Guarantee" or "Works first time or your money back" or whatever bold statement (that doesn't expose you to too much risk) gets the story told. Awards and other recognition is going to help here too. On your literature and website list your developers by name and mark them as "specialist in X/Y/Z" especially important is to mention any industry qualifications they might hold.

If there are any coding contests I would have your firm enter. "Winner of the 2013 Code a better X contest"says a lot about your firm.

"Unlike the cowboys we get the job done right first time"

The chances are that referrals from existing customers are going to be your strongest lead into new clients. However you are going to quickly find that there are clients that are not good enough for you. Some car repair places have said things like "if you want cheap then go to BrandX Cars and when their generic parts ruin your car then bring it back and we'll fix it properly."

I fully condone you attitude to code and hope that your market does too. It's not going to happen over night as you will need to raise a good reputation first. While you are doing that you are still going to have to compete with the shiny UI and bad code people so make sure your UI is shiny too.

answered Mar 29 '13 at 22:28
Blank
Matthew Brown
416 points
  • Thanks. For an absolute start-up it is quite challenging but I am getting a fair idea on how to proceed :) – Aseem Gautam 11 years ago

Your Answer

  • Bold
  • Italic
  • • Bullets
  • 1. Numbers
  • Quote
Not the answer you're looking for? Ask your own question or browse other questions in these topics:

Getting Started Development