  The development of scientific software is often a partnership between domain
scientists and scientific software engineers. It is especially important to
embrace these collaborations when developing advanced scientific software,
where sustainability, reproducibility, and extensibility are important. In the
ideal case, as discussed in this manuscript, this brings together teams
composed of the world's foremost scientific experts in a given field with
seasoned software developers experienced in forming highly collaborative teams
working on software to further scientific research.
