Без фреймворка JS всего лишь табуретка, что бы подпирать верстку или делать её красивее.
Выучи чистый JS, выбери направление.
Фронт - идешь в vue, react, angular.
Back - углубись в node js.
Последовательно, дочитывай до конца учебник Ильи Кантора (learn.js), параллельно тренируй навыки в написании реальных задач. Напиши то, что уже написано другими, сделай лучше. Например, слайдер с расширенными функциями, фотогалерею и т.п., примеров много и они кругом.
Если уйдёшь в react, vue или ang, так же пиши практические, реальные вещи, которые тебе нужны в работе будут. Например чат напиши или красивый и нужный сервис по обработке фото с наложением фильтров. Это уже практика и уже портфолио.
Задачи, например hackerRank - это хорошо, но это не средство достижения. Задачам посвещать более 25% процесса учёбы - глупо и не сравнимо с реальной практикой. Практике уже уделять более 60% разумно (после прочтения книги соответственно, когда будет база, к книге ты ещё вернешься много раз).