I think that many Developers with great capability don't even know the idea of freelancing or even if they have than it is very little and because of this reasons they are hired by people who don't even have the concept of programming but the other reason that also involves in this concept is that the developers are highly paid so they think that why should they indulge their time in freelancing, like i am a tech writer and i do freelancing and for this purpose you must have high speed connectivity internet like u verse internet so that you may not face any connectivity issues, any way as i am saying that i am a freelancer and i have to tell you that freelancing is way better than a regular job because you can carry your task at your own space and there is no workload burden and you can start your work when ever you like of-course keeping the project deadline in mind, in short you can be your own boss.