(scientist w/ 15+ years experience in software dev in bioinformatics, with nice results, see
http://www.ncbi.nlm.nih.gov/pubmed/?term=grosdidier+aur%C3%A... )
I think a decent software development capability is one among the many skills a scientist must be able to be comfortable with in order to provide society with valuable research results.
Professional developers are given a task, or a goal, and are focused on the right way to do it. Some do wonders, but they aren't paid to go beyond the goal they are assigned.
When you're a scientist, the software is not a goal, but only a tool that will be subjected to further iterative refinement.
No one else but you knows about the proper efficiency / flexibility / level of abstraction you need. There's a strong need for scientists combining both scientific and development skills.
Btw, I'm looking for a new position ^^