After my last posts I did get asked how I convince clients to go for agile software development services we offer instead of fixed bids and waterfalls. Well, it is not easy and it is worth a longer post which I’ll write one day. So for now, since it’s late and I’m tired, just a few words about clients.

My experience shows that to accept agile development the prospective client has to be agile in his ways too – even if they never ever heard of Scrum, XP or Agile Manifesto. That is they have to understand and accept that what they do is an inventive process, hardly as predictable as it is portrayed by snake oil vendors and hence inherently risky. Instead of giving their project away to experts for a fixed bid and hoping for the best a good “agile client” wants to stay on top of his project, wants to have a say, get involved and be able to change direction or add new ideas.

This mixture is, indeed, not as frequent as I would like it to be. And this attitude is almost completely absent in governments and large corporations. Because of that I don’t even try to sell agile projects there. Some brave souls did succeed in this waters, but I stay away from them – for the time being. So if you try to sell an agile project to company of 1000 people or more (and it is not Google, Yahoo, BT or one of the other corpos known to use agile) you are going to have a hard time and little chances of winning.

Fortunately, most clients do not fall into those categories. Most clients are privately owned business of various sizes, who thanks to web technology can afford now to have a system custom developed for them. And they are spending money that is perceivably theirs, which means they want to spend it well and control where it goes. They understand much faster than corporate managers the benefits agile gives them and hence are more likely to go for it.

So, for now I’d recommend going after medium-sized, privately owned companies with a pressing need for a custom system unless you’re an expert salesman able to convince a corporate behemoth not to behave like one.