This is a really good analysis.  I think that as it stands, the best hope for filling these jobs is to get a highly talented postdoc who will accept this role in exchange for assistance with his or her academic career aspirations (another way to do it is more insidious, which is where a PI stretches out a doctoral student&#x27;s completion time to hang on to his or her talented and cheap programmer a few more years).<p>Of course, this means getting authorship (doesn&#x27;t have to be first, but it needs to be there), recommendation letters, and so forth.  It is also a temporary situation, since what is happening here is that the postdoc is doing software development for well below market rate in order to get a boost in climbing an academic career ladder.<p>Unfortunately, this scenario makes it even less appealing for a software developer who isn&#x27;t part of the academic ladder.  Because they aren&#x27;t getting any special boost, career-wise, it just becomes a demanding job with long hours and low pay.<p>The setup is virtually guaranteed to result in very low quality software.  Post docs may be brilliant people, but it&#x27;s unlikely they will learn to write high quality, maintainable software in a transitional period between grad school and a faculty position, especially since it&#x27;s something they&#x27;d like to leave behind as quickly as possible.  And it&#x27;s equally unlikely that someone talented at software development will stick around in an organization like this where they will never get the chance to lead a project and make a decent salary, especially when those opportunities exist outside universities.<p>The idea of a research programmer role is a really good one but I&#x27;m not sure I can really see faculty accepting it.  It would be a major cultural transition for them.