Я вообще не планировал становиться программистом

Когда-то я даже не задумывался о том, кем хочу стать. А сегодня за плечами уже больше шести лет коммерческой разработки. Но путь в IT оказался довольно извилистым.

Всё началось ещё в школе. У меня был старший брат, который работал в IT на фрилансе. Он постоянно покупал какие-то интересные вещи, дарил дорогие подарки, но чем конкретно он занимается, я особо не интересовался.

В школе мне неплохо давалась математика, особенно алгебра. Но какого-то выраженного интереса к конкретной науке не было. Когда пришло время выбирать экзамены, я совершенно не понимал, куда двигаться. В итоге остановился на химии и физике. Информатику даже всерьёз не рассматривал — в моём представлении школьная информатика была преимущественно про презентации и таблицы Excel.

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

Химической теории было много, а интерес к ней постепенно угасал. Практика с экспериментами началась только на втором курсе, но к тому моменту я уже понимал, что это не совсем моё.

Зато неожиданно для себя я полюбил некоторые другие дисциплины: информатику, алгебру, теорию вероятностей и математическую статистику. Задачи по информатике мне давались легко, часто получалось быстрее других находить решения.

Именно тогда я впервые задумался: а чем, собственно, занимается мой брат?

Начал расспрашивать его о программировании, создании сайтов, технологиях. Постепенно интерес перерос в желание попробовать самому.

Начал с самого простого — HTML и CSS. Бесплатные курсы на YouTube, различные обучающие сайты, первые попытки что-то сверстать.

Помню, как радовался своей первой форме и карточке товара. Выглядели они, конечно, ужасно. Но я сделал их сам!

В какой-то момент понял, что хочу заниматься этим серьёзнее, и принял довольно непростое решение: перевёлся на математический факультет, пусть даже с потерей курса.

И вот тут началось самое интересное.

Появились алгоритмы, основы ООП, C++. Но университету явно не хватало практики. Мне всегда было проще разобраться в технологии, когда я мог самостоятельно что-то написать, сломать, исправить и увидеть результат.

Поэтому основное обучение происходило за пределами университета: YouTube, собственные эксперименты и ночные созвоны с братом.

К тому времени я уже освоился с вёрсткой, но постоянно задавал себе один вопрос: «Хорошо, а как теперь заставить всё это работать?»

Как отправить форму? Как обработать данные? Где их хранить? Как сделать так, чтобы сайт был не просто красивой картинкой?

Так я познакомился с PHP.

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

Но постепенно что-то начало получаться.

Сначала появилась простая форма, которая обрабатывала данные. Потом я разобрался с SQL, научился выполнять SELECT, INSERT, UPDATE и DELETE, познакомился с PDO и параметризованными запросами.

Затем появилась база данных и первая самодельная админка.

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

Выглядело всё ужасно, но работало! На тот момент я уже практически считал себя Senior Developer. Ну, почти :)

А дальше мне захотелось большего. В качестве своего большого учебного проекта я решил написать собственную мини-MVC, вдохновившись архитектурой Laravel.

Одна точка входа, конфигурация, собственная файловая структура, роутинг, контроллеры, передача параметров через ReflectionClass и прочие эксперименты.

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

К этому времени я уже окончательно понял, что хочу заниматься разработкой.

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

Но программирование никуда не исчезло.

После работы, по вечерам и ночам, я продолжал учиться. Следующим этапом стал Laravel. Я решил сделать небольшой сайт сладостей — просто потому, что это первое, что пришло в голову.

Тогда же начал изучать JavaScript, jQuery и AJAX. Хотелось, чтобы сайт не перезагружался после каждого действия, чтобы интерфейс был живым и отзывчивым.

В итоге получился вполне рабочий небольшой проект на Laravel, Blade и JavaScript. Без платёжных систем, сложного складского учёта и серьёзной бизнес-логики, зато полностью собранный собственными руками.

Я был счастлив.

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

Впереди был ещё примерно год работы разнорабочим, бессонные ночи за изучением технологий и множество попыток найти первую возможность войти в профессию.

И однажды это получилось. Я нашёл свою первую работу стажёром в digital-агентстве.

Но это уже совсем другая история :)

Сейчас, оглядываясь назад, я понимаю одну вещь: иногда не обязательно с самого начала знать, кем хочешь стать. Достаточно найти что-то, что тебе действительно интересно, и не бояться пробовать, даже если сначала ничего не получается.

А как вы пришли в свою профессию? Это была детская мечта, осознанный выбор или тоже случайность, которая постепенно превратилась в дело жизни?

P.S. Да-да, ИИ помог мне красиво написать мои мысли, такие дела

Я вообще не планировал становиться программистом
11