This paper by two economist professors now at Stanford and Brown is the best short guide (~40 pages) on what anyone writing programs for computational social science should know. I would have hoped that data scientists and software engineers do all of those practices, but even they miss some of them (some miss many of them). There is nothing in this paper about programming and databases that I disagree with (and that is a VERY rare situation for me).
Please read it.