Какими знаниями и навыками нужно обладать что бы считать себя middle frontend разработчиком (или хотя бы middle верстальщиком).
Хорошо знать JS, освоить TypeScript, любой фреймворк (React, Angular, Vue) и сопутствующие ему библиотеки (redux, mobx и пр.), уметь работать с REST API, уметь писать тесты, иметь представления об общих концепциях программирования (паттерны, алгоритмы, архитектура), понимать бэк (уметь запилить хотя бы простое приложение на Node.js). Ну и конечно поработать в компании хотя бы 1-1.5 года, тогда условно можно потянуть на middle (грейды очень условны и зависят от конкретной компании, где-то с таким багажом только джуном можно устроится, на фрилансе же наверное больше портфолио решает).
Работа в портфолио вроде норм, но middle это всё же в первую очередь коммерческий опыт.