Developing yourself out of a JOB!!!
Recently I've reaslised a major risk for developers working in a development firm. Now many development companies design and develop products to help with their business processes with the aim to make them more efficient and tasks easier. The problem with this approach I have found is that if you develop tools which are that good and that flexbile you may run out of work to do. If there is little variation between your clients requirements you may find that you have developed yourself in to user and all you have to do to create new solutions is drag/drop/complete forms.
The only solution I think there can be is that you create enough variety in your client requirements to make the development experience more varied for the developer. Again this has a knock on effect as you will then be able to add that functionality into the tool and therefore widening the range of nondevelopment work required.
Looks like the days of the skilled developer are getting numbered and soon everyone and more accurately their dog will be able to create complex, dynamic, interactive solutions within a mater of hours and copy and pastes.