Взялся я изучать бэкенд. По большей части я уже знаком довольно тесно с тем, как создаются API, как работают циклы авторизации на токенах, но сейчас, пока нахожусь в поиске работы, захотелось углубиться. На опыте я сталкивался только с Python и Ruby, но для простоты чтения кода и входа в инструмент, решил остаться на JS.

Расчехлил один из проектов с предыдущего мест работы, где делал фронт, и начал изучать, как прикручивается бэкенд. Тут сильным подспорьем оказался опыт решения DevOps-задач. Вместо того, чтобы ставить Postgres и pgAdmin инсталляторами, удалось всё по красоте запустить в контейнерах.

Потратил денёк на знакомство с node.js. Кусками уже что-то откуда-то знал про работу с файлами, про отличия цикла событий от браузерного. Запомнилось про внутрянку, что под капотом у ноды libuv, написанный на C++, который обеспечивает кросс-платформенность и отвечает за многопоточность.

Вспомнил, как в начале своего пути по курсу с Udemy знакомился с фулстаком, прослезился. Кстати, курс отменный. Для входа в веб-технологии нереально крутой. Мне очень понравилось, что ты галопом по всем Европам в нем и после курса уже знаешь, что тебе нужно изучать, гуглить, ковырять. Появляется очень широкое представление, что это вообще всё такое. В одном курсе и React, и Express, и MongoDB. Там еще кучу всего надобавляли, но я уже не слежу особо.

Я делал тогда ради прикола приложение-словарь с хитрым названием DicBoy. Фишка была в том, что у различных слов были примеры контекстов со скринами из кино с субтитрами, кусками аудио, а так же упоминания в каких медиа встречается.

В общем, начал я освежать это всё дело и удивился насколько это всё просто спустя несколько лет опыта. На экпрессе время от установки до запуска первого эндпоинта занимает минуты. С автокомплитом от Копайлот - еще быстрее. Даже ИИ ради этого напрягать ну как-то стыдно вообще.

В течение часа уже были все эндпоинты, подключена Postgres, и всё это попивая холодную колу с приоткрытым окошечком и думая о светлом позитивном будущем. Начало погружения в бэкенд мне нравится. Хочу посидеть немного на экспрессе, но в итоге прийти к Nest.js. Я видел несколько проектов на нем, тоже вещь довольно структурная, интересная. Любопытно на нем сделать авторизацию, разобрать как работает.

Собственно, вопрос к собратьям-разрабам на бэкенде. Как считаете, что вообще мастхев для мидла на ноде? Какой список компетенций надо учить в первую очередь? Определяет ли фреймворк специалиста или учим базу, а потом работаем с чем угодно?

#nodejs #express #javascript #postgres