Но жизнь решила иначе. От окончания курсов до первого коммерческого оффера прошло почти три года. И сейчас я даже рад, что всё произошло именно так.
Всё это время я продолжал работать инженером-проектировщиком. Каждое утро начиналось одинаково: дорога в институт, коммуникация с 8-ю коллегами в небольшом кабинете 8 часов / 5 дней в неделю, чертежи, расчёты, экспертиза, согласования. А вечером начиналась совершенно другая жизнь. Я приходил домой, включал компьютер и снова становился начинающим разработчиком. Никто не заставлял меня после восьмичасового рабочего дня снова садиться за компьютер. Не было дедлайнов, руководителей или обязательств. Был только интерес и желание разобраться ещё в одной новой теме. Наверное, именно тогда программирование перестало быть для меня просто увлечением.
За эти годы появилось несколько pet-проектов. Я сознательно избегал типичных учебных задач вроде очередного списка дел. Мне хотелось решать реальные проблемы и создавать проекты, которыми действительно можно пользоваться (хотя бы для себя). Каждый новый проект был немного сложнее предыдущего. Постепенно в них появлялись базы данных, авторизация, работа с внешними API, развёртывание на VPS, Docker и другие технологии. Вместе со стеком росло и понимание того, насколько огромен мир backend-разработки и как бы парадоксально это не звучало - все более углубленное изучение тем открывало все больше дверей и приводило к осознанию насколько я мало понимаю.
Параллельно я начал ходить на собеседования. Это тоже было отдельным испытанием. Поскольку официально я всё ещё работал инженером в офисе, далеко не всегда удавалось спокойно поговорить с рекрутером. Иногда приходилось буквально выходить из кабинета и идти в самый дальний угол самого высокого этажа института, чтобы никто случайно не услышал разговор. Сейчас я вспоминаю это с улыбкой, но тогда было совсем не до смеха.
За эти три года у меня было около двадцати собеседований, а в части были даже ТЗ. Среди них были как небольшие компании, так и крупные — например, Яндекс. Где-то я понимал, что ещё недостаточно готов. Где-то понимал, что компания просто не подходит мне по духу. Иногда отказывали мне, иногда отказывался уже я сам. После каждого собеседования у меня был список вопросов, в которых я не чувствовал себя уверенно. Наверное, именно тогда я перестал воспринимать отказы как поражение. Каждый разговор с опытным разработчиком или техническим интервьюером показывал, в каком направлении двигаться дальше. И да, я постепенно научился проходить собеседования, это правда приходит с опытом.
Иногда становилось тяжело. Казалось, что цель всё ещё очень далеко.Что знакомые с курсов уже работают разработчиками, а я утром снова открываю AutoCAD с экселем, а вечером — документацию по джанге или фастапи.
Но была одна мысль, которая не давала остановиться. Каждый вечер, проведённый за кодом, делал меня чуточку лучше, чем вчера (правило 1%). И этого было достаточно, чтобы продолжать. Постепенно произошло самое важное изменение. Я перестал считать, что «я учусь программировать». Нет. Я уже жил этим - у меня была борда с задачами, приорететы и куча мыслей (приходящие в самые разные ситуации) которые позже реализовывались в моем IDE. Разработка стала такой же естественной частью моей жизни, как работа, поездки на велосипеде или бег по утрам (да, я тогда бегал!). Наверное, именно тогда я впервые начал ощущать себя разработчиком. Даже несмотря на то, что коммерческого опыта у меня всё ещё не было, оставался только один шаг. Самый страшный - уволиться со стабильной работы, отказаться от привычной жизни и поверить, что всё получится. Честно говоря, тогда я ещё не знал, насколько сильно это решение изменит мою жизнь.

