  Large-scale collaborative scientific software projects require more knowledge
than any one person typically possesses. This makes coordination and
communication of knowledge and expertise a key factor in creating and
safeguarding software quality, without which we cannot have sustainable
software. However, as researchers attempt to scale up the production of
software, they are confronted by problems of awareness and understanding. This
presents an opportunity to develop better practices and tools that directly
address these challenges. To that end, we conducted a case study of developers
of the Trilinos project. We surveyed the software development challenges
addressed and show how those problems are connected with what they know and how
they communicate. Based on these data, we provide a series of practicable
recommendations, and outline a path forward for future research.
