Как практиковать продвинутые темы js?
Промисы отточить... легко.
Создайте форму, в которую можно накидывать список файлов. Файлы можно накидывать в любой удобный для пользователя момент времени до отправки формы. Файлы отправляются на сервер сразу как только пользователь выбрал файл, не отправляя форму. Пользователь может отменить процесс отправки файла. Форму можно отправить после того, как все процессы отправки файлов завершены. Если один из файлов по какой-то причине не отправился, форму отправлять нельзя.
Ставите в инструментах разработчика "Сеть" - скорость 3G. И испытательный стенд готов. Оттачивайте навыки написания промисов.
PS: Также с любой другой темой. Ставите себе практическую задачу, способ решения которой возможен с использованием инструмента по теме (а то и смежных тем) - и навык закрепится.
Перейти от тестовых задач к реальным проектам.
Например начать писать свою библиотеку, решающую свою задачу (или круг задач).

Открываем какой-нибудь топ-100 лучших библиотек, выбираем любую тему и пытаемся написать свою либу, только лучше.

Море практического опыта гарантировано. А в случае удачи - у вас на вашем гитхабе еще и появится популярный проект, востребованный сообществом.