Перетяжка, Дом карьеры
Перетяжка, Дом карьеры
Перетяжка, Дом карьеры

Как сейчас стать Go-разработчиком с нуля? Все пути

Аватарка пользователя Danil Dinko
для
Логотип компании Tproger
Tproger
Отредактировано

Даниил Динько, тимлид в компании-лидере в международном кибербезе и эксперт Эйч Навыки, рассказывает, как новичкам вкатиться в разработку на Go.

769 открытий3К показов
Как сейчас стать Go-разработчиком с нуля? Все пути

Из всех телевизоров говорят, что в IT дефицит — критически не хватает специалистов. На самом деле, это не совсем так: не хватает мидлов (уже даже middle+) и выше, а вот стажеров и джунов в России слишком много. Но спешу вас обрадовать, вкатиться еще можно и с вполне неплохими шансами!

Я — Даниил Динько, веду свой личный телеграм-канал, где рассказываю о себе, об IT и о Golang. Также являюсь экспертом и спикером в компании Эйч Навыки, TeamLeadом в компании-лидере в международном кибербезе, ex. старшим разработчиком в Ozon Tech. Вместе разбираемся, что нужно тем, кто только знакомится с Go, для старта в IT.

В статье будет две части: первая — как построить процесс обучения, и вторая — как конкретно обучаться и вкатываться. По статистике менторства считаю, что самое сложное — правильно выстроить процесс, поэтому настоятельно рекомендую уделить этому достаточно внимания.

Кстати, в следующей статье я собрал стартер-пак Go-разрабов на каждом грейде — почитать можно здесь.

Для начала: почему Golang на хайпе

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

Мне кажется, Go валиден почти в любой сфере. Его основные преимущества:

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

Хотя не обязательно высоконагруженную: Go используют на всех уровнях бизнеса.

Также в Go крутые зарплаты — в основном, выше рынка. Новички могут получать от 100 000 рублей в месяц, а сеньоры — даже 500 000. В среднем — 160 000 рублей.

Какие есть подходы для старта карьеры

Глобально есть четыре подхода:

  1. Курсы. Вас ведут за ручку и не нужно ничего самому искать. Есть мотивация, но нет прокачки двух самых важных навыков —  поиска информации и самообразования.
  2. Менторство. На начальных этапах вообще не рекомендую, оверхед, лучше думать в сторону курсов. 
  3. Сообщество. Здесь вы объединяетесь с другими начинающими ребятами. Это лучший вариант — бесплатно, сохраняются все преимущества, за исключением того, что придется самому вести себя за ручку и искать всю нужную информацию. Но в начале должно быть именно так. В сообществе вы идете командой, и с корабля просто так не спрыгнешь: будет банально неудобно перед другими ребятами.
  4. Расти самому. Плюсов меньше, чем в варианте выше, а минусов — больше. Например, нет видимой конкуренции и взаимной мотивации друг друга.

Я рекомендую третий вариант: практика показывает, что он самый эффективный в плане процента «доходимости». Единственное, в его рамках предстоит решить несколько вопросов.

Как найти таких людей, с которыми можно будет вместе двигаться?

Тут довольно просто: беседы в Telegram, воронки, взлетевшие видео на ютубе по Go — их полно. Например, этот курс считаю одним из лучших. Поэтому план простой: находим подобное видео, переходим в беседу, в ней ищем себе товарищей, списываемся, предлагаем совместный рост и созваниваемся.

Крайне важно правильно выбрать себе друзей, поскольку они будут играть значительную роль в вашем становлении разработчиком. Основные критерии, по моему мнению, — мотивация к работе (горящие глаза), детерминированная причина стать Go-разработчиком, идейная заинтересованность в программировании, уровень силы воли и организованности человека (без этого никак).

Как найти человека, которому можно задавать свои вопросы?

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

*А еще не забываем про ChatGPT или DeepSeek — они должны быть вашими основными консультантами.

Так, мы нашли людей, с которыми будем двигаться вместе, и тех, у кого будем спрашивать. Теперь давайте ответим на последний вопрос.

Как учиться?

Пока мы не умеем учиться сами, поэтому задача — экстерном влететь в этот навык. Здесь лучшее бесплатное предложение — Learning How to Learn от Coursera (оно на английском, но есть субтитры). Там собрались эксперты, профессора крупных университетов, чтобы научно подойти к вопросу и дать практические советы по тому, как можно эффективно обучаться. Честно говоря, сам бы пересмотрел курс, если бы было больше свободного времени. Считаю его лучшим вариантом вкатиться в эффективное самообразование. Особенно рекомендую обратить внимание на технику помидоров, она, мне кажется, значительно ускоряет перформанс.

Главное: какие есть пути вката в разработку на Go

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

А теперь — об основных путях «входа в айти».

Стажировки

Чтобы попасть на программу, рекомендую решать каждый день 2-3 задачки с leetcode.com (Если совсем тяжело — сначала решаем на codewars.com, а потом переходим на литкод). Затем, все просто (ну, почти): стучимся во все возможные наборы на стажировку в бигтех: Ozon Route 256, VK, Т-Банк, школа стажеров Wildberries — перечень можно легко найти в Гугле. Вариант довольно сложный и требует в большинстве случаев хорошую алгоритмическую подготовку. Но она нарабатывается за 3-4 месяца ежедневного решения задач на leetcode, кажется, не так много. Навык решения алгоритмических задач будет на протяжении всей карьеры расширять список потенциальных компаний для трудоустройства, так что временная инвестиция вполне валидная.

Бесплатные стартапы

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

Накрутка опыта

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

Желаю самого успешного роста и верю, что если следовать по плану, описанному в этой статье, у вас все получится! Главное — уделяйте большое внимание моральной составляющей. Мотивация будет не всегда, поэтому пока она есть — максимально быстро конвертируем ее в силу воли.

В следующей статье расскажу, какие навыки и знания нужны Go-разработчикам на каждом грейде.

Следите за новыми постами
Следите за новыми постами по любимым темам
769 открытий3К показов