Если вы о использовании scop-а то это уже legacy, а если касательно того как здесь используется async\await то критика принимается, но я не вижу здесь проблемы с точки зрения логики, где должен быть синхронный код, а где асинхронный
Тут больше речь про другое - у вас есть операция внутри метода на 10 секунд, как вы говорите, но вы ожидаете что она не должна отражаться в вызывающем методе. С этой позиции либо метод реализован не верно, либо что-то выше этого метода.