Engineering Software for Modern Challenges