Натирал вилки, пока учился программировать

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Ночные смены в роли официанта, графический дизайн и образование управляющего гостиниц – вряд ли это приводит к IT, но жизнь распоряжается иначе.

Ошибка с выбором и ее осознание

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

Поступил на «Ресторанное дело и гостиничный бизнес», по крайней мере это звучало весело.

Параллельно участвовал в “супертесте” проекта World Of Tanks от компании Wargaming. Здесь впервые попробовал себя в качестве тестировщика и открыл целый новый мир.

Но дохода это не приносило, а университет требовал регулярной оплаты. Чтобы зарабатывать в свободное время делал график-дизайн: адаптации векторных изображений и подготовку макетов к печати.

В мае 2015 года пошел работать на курорт. Работал в ночную смену и учился в дневную. Сказать, что взрослая жизнь ударила в лицо, будет мало. В предрассветные часы я натирал вилки и смотрел обучающие видео по JS и верстке.

Простейшие JQuery селекторы казались rocket science, а проблему с вертикальным выравниванием не мог решить часами. Такие сложные условия привели к больничному и эмоциональному выгоранию. Понял: нужно что-то менять.

Первые деньги за первый сайт

Меня попросили сделать правки в сайте на Wordpress. Для этих правок нужны были знания HTML и CSS. Когда внес правки и заказчик (внезапно) оказался доволен, за ним пришла автомастерская, которая получила собственный сайт на бесплатном шаблоне.

Я объявил себя web-разработчиком, напечатал визитки и начал всем раздавать.

Фриланс и стагнация

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

Я понимал, что не знаю базовых концепций программирования, но не знал, каких именно. Книги были слишком умными и рассчитывали на то, что владею базой. Тогда я не понимал, что большая часть странных надписей в коде – это указания типов, которых в JQuery и HTML не было. Это был тупик, а выхода не было видно.

Первые шаги в профессиональной разработке

В один момент меня попросили сделать логотип, фирменный стиль и сайт для ресторана. Это отлично совпало с темой диплома, поэтому решил получить этот опыт.

После окончания университета пригласили на работу с просьбой начать проект сайта.

Когда закончил дизайн и верстку, немного знал основы PHP и приступил к написанию бэкенда. Знания не позволяли использовать полноценный фреймворк. Выбор пал на ModX, который делал за меня огромное количество работы. Здесь немного познакомился с ООП и шаблонизатором Smarty.

Была огромная проблема: я был единственным разработчиком, без наставника, который мог бы прикрыть и помочь.

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

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

Проба пера в Laravel

Рестораны, которые я помогал открывать, оказались закрыты в локдаун. Выход был один — доставка. Решили, что нужен сайт!

Я уже знал, что тренд – Laravel, и решил попробовать сделать все на нем. Frontend — все тот же JQuery, sass и gulp в качестве сборщика.

Создал CRUD для основных сущностей: category, product, restaurant, user. Реализовал загрузку и обработку изображений. Для хранения данных выбрал PostgreSQL.

Для хостинга – местный PaaS-сервис. Сайт разворачивается через github, с нажатием на кнопку изменения попадают на серверы. Единственное, что отделяет проект от полноценного CI/CD, это необходимость ручного запуска сборки фронтенда. На основной функционал написаны тесты.

Kolesa Academy

В сентябре 2020 года я готовился подавать резюме в IT-компании. Я подал резюме на вакансию PHP-разработчик в Kolesa Group. И спустя день увидел у них набор в PHP-Академию, это стажировка с обучением под менторством ведущих специалистов. Решил податься туда. Пульс в момент прохождения отбора был явно под 130.

Во время обучения я рос так как никогда. Докер, очереди, редис, токены, куча непонятных слов и два написанных микросервиса за две недели. Это были самые полезные недели за весь мой путь в профессию. Сама стажировка длилась три месяца, настройка окружения, подъем проекта и первая реальная задача. Огромная инфраструктура, микросервисы, миллионы строк кода.

И самое главное, я получил то, о чем так долго мечтал, — ментора, опытного наставника.

Несколько важных вещей, которые хотел бы выделить из статьи:

  • Программирование — не язык программирования.

  • Отсутствие профильного образования — не преграда для трудоустройства.

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

  • Ментор – это сгусток опыта и просто очень хороший друг, который поддержит и направит в нужном направлении.

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

Источник: https://habr.com/ru/company/kolesa/blog/574336/


Интересные статьи

Интересные статьи

Каждый, кто ценит жанр постапокалипсиса или фильмы-катастрофы, наверняка уже выбрал свой любимый сценарий конца света. Мы пошли чуть дальше — и подыскали подходящий рюкзак для вторжения инопланетян, в...
GitHub объявил, что долгожданная темная тема, наконец, готова, ознаменовав анонс характерным крутейшим (но не без ироничным) видео, которое лучше сто раз увидеть, чем сто...
В этой статье мы рассмотрим, как система управления 1С-Битрикс справляется с большими нагрузками. Данный вопрос особенно актуален сегодня, когда электронная торговля начинает конкурировать по обороту ...
В прошлом материале мы уже рассмотрели вопрос о том “Применим ли RAID на SSD” на примере накопителей Kingston, но сделали это только в рамках нулевого уровня. В текущей статье мы разберем вариант...
Читая недавно очередную статью про апскейл (Upscale — масштабирование изображения до более высокого разрешения), на этот раз про коммерческий продукт Topaz AI Gigapixel, я оставил комментарий сле...