Having known people in the sciences who attempted to transition to software, some of them at least had trouble focusing on making code maintainable and understanding what its like to work in a team setting. It might be worthwhile to focus on this, somehow.
Its as though in this case, they were so interested in the scientific problem at hand, that they didn’t focus on the code they were writing – which makes sense, I suppose.
I think looking for work as a developer, but in companies where your considerable scientific background would be useful, would definitely be a good idea.
Also, look at things like design patterns (amazon.com/dp/0596007124/?tag=stackoverfl08-20) … working with known, proven design patterns makes your code more maintainable. Being able to recognize the patterns your team mates are using means you can continue them instead of working against them.
This article is a repost of an answer I provided previously at programmers.stackexchange.com.