Интерфейс кликабельный, ну а что внутри?..
Web-разработка — это создание сайтов и приложений, от идеи клиента до полноценного рабочего продукта. Любой блог, соцсеть, интернет-магазин или приложение имеют лицевую и изнаночную стороны. Лицевую — дизайн проекта, или его интерфейс, — создает frontend-разработчик, а изнаночную, не видимую пользователям часть, — его backend-коллега.
Омар, Шамиль и Заур — три друга, которых объединила не только профессия, но и желание покорить Москву. Все они в профессиональной градации считаются специалистами уровня middle — почти самостоятельными разработчиками с опытом более трех лет. Вместе с ними мы попытались разобраться в нюансах востребованной профессии.
From junior to middle: путь от новичка к профи
Все разработчики начинают с уровня junior — новичка. Однако даже на начальном этапе нужно знать базовые языки программирования: HTML, CSS и JavaScript для frontend-, PHP и MySQL — для backend-разработки. А путь к профессиональному успеху у всех начинается по-разному.
Омар Газимагомедов, frontend-разработчик компании Puzzle English:
— К компьютерным технологиям у меня был интерес с детства. После девятого класса я сразу пошел в Дагестанский механический техникум, где получил основные знания. Но многое изучал дома сам. Потом заочно поступил в ДГУНХ на специальность «прикладная информатика в экономике», работал в банке в Махачкале. У нас было 300 компьютеров, и я решал технические проблемы, которые возникали в обслуживании, консультировал по телефону. В общем, начинал как типичный технарь, но в процессе понял, что мне это не очень нравится.
Потом нам с Шамилем выдался шанс поехать в Москву, да и банк как раз закрывался. Еще в Дагестане я отправлял резюме и договаривался о собеседованиях. Когда приехал, помню, это было 16 апреля 2013 года, сразу пошел на собеседования, но меня никуда не взяли. Не хватало знаний. Однако на каждом собеседовании я узнавал что-то новое и постепенно понял, как нужно отвечать, что в какой момент говорить. Меня взяли в небольшую web-студию.
Около года я работал у них, верстал сайты. Потом вернулся в Дагестан, защитил диплом и снова приехал в столицу. И понял, что мне не интересно просто создавать поставленные на конвейер сайты. Стал искать работу, где есть рост и развитие.
Тогда я нашел стартап, который занимается обучением английскому языку онлайн. С 2015 года компания быстро выросла, привлекла инвестиции. Я там начинал как верстальщик. Верстка — это один из этапов создания сайта: сначала создается дизайн, из него делается верстка, потом к ней прикручивается backend — серверная часть. Я увидел, что могу уйти во frontend и взять всю эту часть на себя. Frontend мне нравится тем, что вижу конечный продукт в том виде, в котором я его создаю. Верстка плюс скрипты, кнопки, интерактивные формы сервиса — это и есть разработка интерфейса.
Шамиль Абдулаев, frontend-разработчик «СТС Медиа»:
— Я учился в ДГТУ, на факультете информатики и управления по специальности «программное обеспечение вычислительной техники и автоматизированных систем». Выбор специальности, наверное, не совсем осознанный, так как на момент окончания школы я не был точно уверен, что буду заниматься разработкой и программированием. Когда все взвесил, понял, что именно в этой сфере у меня получится достичь наибольших успехов. Первое профессиональное приложение сил я сделал после университета, когда работал в банке, в отделе автоматизации информационных технологий. По сути, наш отдел занимался системным администрированием. Это было не совсем то, что я ожидал, но неплохой шаг, чтобы попасть в профессиональную среду.
Когда у банка отозвали лицензию, у меня было два пути: остаться в Махачкале и заниматься созданием сайтов или поехать в Москву. Я выбрал Москву. На момент приезда не обладал еще такими навыками, чтобы сразу устроиться на работу. Я мониторил рынок вакансий, смотрел, что нужно для работы в той или иной компании, и, соответственно, пытался подтянуться. Для начала решил попробовать себя верстальщиком. Стал читать сайты и техническую литературу, смотреть видеоуроки. Имея портфолио из тестовых проектов, пошел продавать свои услуги. Очень важно, чтобы на собеседовании ты уже мог показать, что умеешь. На тот момент я мог предложить навыки начинающего верстальщика и попал в web-студию, которая занималась разработкой сайтов.
Через год решил немного пофрилансить. Я так же разрабатывал сайты, просто задачи становились все сложнее. Потом устроился в компанию, которая занималась разработкой мобильных кросс-платформенных приложений для презентаций и ивентов, а оттуда перешел в амбициозный стартап — это была дочерняя компания одного известного венчурного фонда. Они инвестировали в разные стартапы, которые занимались нейросетями, машинным обучением и прочими модными штуками.
Я разрабатывал интерфейсы, мы создавали сложные web-приложения, которые продавали крупным компаниям для улучшения бизнеса. Но стартап в итоге закрыли. Нужно понимать, что стартап — это сам по себе риск, и тебе никто ничего не гарантирует, но он дает хорошую профессиональную школу.
Сейчас я работаю в «СТС Медиа». Мы разрабатываем и поддерживаем сайты каналов «СТС», «Домашний», «Че», «СТС Love», а также ряд внутренних продуктов. Сайты удобны тем, что ты управляешь контентом и можешь посмотреть свой любимый сериал, фильм или шоу, когда тебе хочется. У тебя свободная навигация, есть интерактив, где можно обмениваться мнениями, и некоторые эксклюзивные разделы. Наши менеджеры постоянно анализируют поведение пользователей на сайте, отмечают, какие разделы наиболее у них востребованы и какие, наоборот, можно упростить или сократить. На основе этих пользовательских историй мы вносим изменения, а также всячески пытаемся оптимизировать и ускорить наш продукт, делая его удобным для посетителей.
Заур Якубов, backend-разработчик:
— Я закончил ДГТУ, факультет информатики и управления, как и Шамиль.
Потом устроился в дагестанское управление Пенсионного фонда. Там был IT-отдел, где я являлся наполовину разработчиком, наполовину системным администратором. В конце 2017 года перебрался в Москву — хотел дальнейшего профессионального развития.
Я backend-разработчик, то есть работаю с серверной, невидимой пользователю частью программного обеспечения. Серверная часть — это вся логика и бизнес-процессы, она включает более масштабные задачи, берет на себя большие данные, ведь их обработка идет на серверах. Это можно объяснить на примере любой соцсети: пользователь вводит текст, отправляет его адресату, и данные отправляются на сервер. Там идет их обработка и модерация, если она нужна. А затем они уходят получателю. Это происходит за несколько секунд, поэтому серверы должны быть очень мощными.
АнтиБАГ: размышления и немного подсказок
— Почему многие ребята сейчас стремятся в IT-сферу?
Омар: Сейчас почти все сферы бизнеса и услуг ушли в Интернет. У IT-специалистов практически безграничные возможности по самореализации.
Заур: Все бизнес-процессы можно оцифровать, и это дает более гибкие возможности и перспективы.
— Какие IT-направления, на ваш взгляд, сейчас активно развиваются?
Омар: Из нового — машинное обучение, «Big Data» («Большие данные». — Прим. авт.) и очень популярная тема — блокчейн (цепочка блоков с возможностью передавать по зашифрованному каналу какую-либо информацию. — Прим. авт.). Это, так сказать, самые хайповые направления. Но если человек знает основы — frontend, backend, без работы точно не останется.
— Что вы предпочтете в перспективе: стартапы, большую компанию или свой бизнес?
Омар: У стартапов есть свои плюсы и минусы, то же самое и у больших компаний. Хотелось бы поработать в крупной международной компании, возможно, даже за границей. Но в перспективе – это, конечно же, свой проект, который повлиял бы на всю IT-сферу.
Шамиль: Я бы предпочел работать в средней компании. Но и та медиакомпания, в которой сейчас тружусь, мне очень нравится. А если говорить, как мечтатель, хотел бы поработать в Google.
Заур: У меня есть желание поработать в крупной международной компании. Стать хорошим разработчиком. А еще — в разработке игр. Ну и, в конечном счете, создать свой проект, в который вложить всю душу и знания.
— Что бы вы подсказали начинающему специалисту?
Омар: Самое главное — держать руку на пульсе. Сейчас технологии меняются очень быстро. Необходимо постоянное обучение, обязательна наработка своих проектов. Нынче популярны проекты open source, когда один человек создает в Интернете свой продукт, к нему подключаются другие люди, и получается некий мозговой штурм. Люди общаются, обмениваются опытом и знаниями. Конечно, важно знать английский. Это просто необходимо в нашей сфере. А еще — не бояться собеседований. Это отдельный скилл, который надо в себе развивать и уметь выгодно себя представить.
Шамиль: Очень важно знать английский язык. Какое заведение ты закончил, не играет решающую роль, уж очень много открытых ресурсов, откуда ты сможешь подтянуть необходимые знания. Лучше начинать с самых основ — выучить один из базовых языков программирования, математику. Если ты знаешь базу, заняться более специфической разработкой будет достаточно просто. База программирования — это математика, структура данных, алгоритмы. Еще важный момент: человеку очень повезет, если он найдет себе хорошего ментора (наставника), это поможет избежать многих ошибок.
Заур: Конечно, нужно знать математику и английский. Еще важна коммуникабельность для работы в команде. При этом человек должен четко знать, чего он хочет, и быть готовым к немалым трудностям. Каждые год-полтора нужно совершенствоваться. Необходимо уделять профессии много времени и подходить к ней с большим желанием. Тогда все получится.
Мария Малова
Читайте также Баги, лаги и алгоритмы жизни