One constraint is that the scientists would like this system to be something they can maintain on their own, and that (for better or worse) means using languages they are comfortable with. Python is obviously popular in science, and C++ seems to be the current de facto "fast" language of choice. It's likely we'll develop two versions of the system, of which one can be more "researchy" and therefore able to take on more technical risk. However, we'll still want to be strategic about what that risk is so that if the research side of the project is successful it could in theory become the production system.