То, что я понял не из книг

«Тебе ещё рано читать Чистую архитектуру»

Наверное, это один из самых странных советов, который я получал за время обучения. И дело даже не в самой книге. Просто за последние пару лет я всё чаще сталкиваюсь с одной мыслью: Очень многое из того, что считается "слишком сложным для новичков", на самом деле становится понятным только тогда, когда начинаешь с этим сталкиваться. Когда я только начинал изучать backend-разработку, всё выглядело довольно просто.

Есть идея. Пишешь код. Делаешь CRUD. Получаешь результат.

Казалось, что главное — выучить язык, фреймворк, базу данных и можно идти работать. Но чем дальше я учусь и хожу на собеседования, тем сильнее понимаю, насколько эта картина была неполной. Сегодня мне уже недостаточно просто идеи проекта.

Возникают совсем другие вопросы:

— Кто будет этим пользоваться? — Какие есть бизнес-требования? — Какие ограничения есть у системы? — Как будет развиваться проект дальше? — Почему архитектура выбрана именно такой?

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

Собеседования работают иначе. Они показывают не то, что ты выучил. Они показывают то, чего ты ещё не знаешь. Именно после интервью я начал обращать внимание на темы, которые раньше казались слишком сложными или ненужными.

Архитектура. Проектирование. Асинхронность. Брокеры сообщений. Подходы к организации кода.

Многие вещи я начинал изучать не потому, что увидел их в учебнике. А потому что столкнулся с ними в реальном разговоре с разработчиком. И да, иногда это неприятно. Иногда выходишь с собеседования и понимаешь, что ответил далеко не на всё.

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

Ещё одно открытие последних лет связано с университетом. Раньше я относился к нему как к главному пути в профессию. Сейчас смотрю иначе. Высшее образование — это хорошо. Но оно не делает разработчика востребованным автоматически. Работу получает не диплом. Работу получают навыки, проекты, практика, умение учиться и готовность постоянно разбираться в новых вещах.

И, наверное, главный вывод, который я сделал за последнее время: Не стоит ждать момента, когда почувствуешь себя полностью готовым. Потому что такого момента может не наступить никогда. Можно бесконечно читать статьи, смотреть курсы и готовиться.

А можно идти на собеседования, получать обратную связь, находить пробелы и постепенно становиться лучше. Даже если иногда очень хочется всё бросить. У меня такие мысли бывают регулярно.

Но пока работает простой принцип: "Стучите — и вам откроют". Главное не переставать стучать.

То, что я понял не из книг | Сетка — социальная сеть от hh.ru