Do you need to write correct software for your science?
Will your software need to change over time?
Do you need to make your software faster, or more scalable?
How will your users learn how to use your software?
How will you convince people to invest in your software?
What will happen when the original author moves to a new project?

The BioExcel software engineering teams are passionate about creating effective, usable, high-performance software for life science. They have long experience with software engineering processes that have worked well for developing the HADDOCK, pmx, MiMiC and GROMACS packages, and have distilled that knowledge into guidelines useful for all teams developing software for science. Along with those guidelines are worked examples of how each team is implementing those aspects relevant to their projects, and plans for the future. These projects span a very wide range of strong-scaling HPC C++11 applications to Python scripts, Flask web servers to HTC compute engines – your team will learn from the methods that we’ve found to work.

You can find the full paper at the BioExcel Zenodo repository.