Talanto
For recruiters
PlansCV Review
Login

Categories

  • All articles
  • Job Search
  • Resume & CV
  • Cover Letters & Applications
  • Interviews
  • Salary & Offers
  • Job Reviews & Roundups
  • Remote Work
  • Career
  • Career Growth
  • Market Trends
  • Onboarding
  • Tips

Related articles

  • Заявление на увольнение по собственному желанию: образец и сроки в 2026 году

    17d ago

  • Сокращение штата в 2026 году: выплаты, сроки и права работника

    17d ago

  • Стажировка в IT: как найти программу и оценить условия

    57d ago

  • Как стать Frontend-разработчиком: дорожная карта

    1d ago

  • Как стать Data Analyst: навыки и первый оффер

    13d ago

Looking for a job?

IT roles with remote and relocation options.

Browse jobs
  1. Articles
  2. Career

Go roadmap: что изучать для работы

Go на рынке ближе к backend/инфре, чем к «ещё один язык в резюме». Карта до первой роли.

9 min readFebruary 11, 202663 views

On this page
  1. Кому эта карта, а кому нет
  2. База языка под созвон, не под экзамен
  3. Сервис, который стыкуется с вакансиями
  4. Чего не учить в первые 90 дней
  5. Пример 1. 90-дневный HTTP-сервис
  6. Пример 2. План учёбы
  7. Критерии готовности
  8. Конкурентность и ошибки — то, что спросят вместо «зачем Go»
  9. Резюме и узкий поиск
  10. Частые вопросы
  11. Что сделать сейчас

Go на рынке CIS и русскоязычной удалёнки ближе к backend и инфраструктуре, чем к «ещё один язык в резюме рядом с Python». Вакансии junior часто ждут HTTP-сервис, PostgreSQL, конкурентность без паники, Docker. Не ждут, что вы выучите все пакеты стандартной библиотеки и напишете свой оркестратор.

Ниже — карта до первой роли, а не туториал «Go за неделю». Какая база языка закрывает созвон, какой сервис собрать за 90 дней, чего не добавлять в skills с хайпа и как смотреть вакансии Golang-разработчика без самообмана про «язык будущего».

Коротко:

  • Сначала роль: backend на Go. Не мешайте в одном плане «Go + ML + мобилки».
  • База: модули, интерфейсы на практике, ошибки, слайсы, карты, горутины и каналы на уровне «не устроить гонку в учебном хендлере».
  • Сервис: net/http или один тонкий фреймворк, SQL, тесты, конфиг из окружения.
  • Kubernetes и «высокая нагрузка» — не вход, если в пяти вакансиях этого нет.
  • Готовность — compose up, тесты, рассказ про ошибку и контекст запроса. Не «прошёл Tour of Go».

Кому эта карта, а кому нет

Если вы хотите продуктовый backend на Python/Java, потому что так выглядят ваши объявления — не переключайтесь на Go из статьи «что учить». Переключайтесь, если в целевых вакансиях Go повторяется или вы уже в инфра/платформе. Вход в backend вообще: как стать backend-разработчиком. Навыки широкого backend: навыки backend-разработчика.

Junior на Go в CIS бывает меньше, чем на Java/Python. Это не повод врать в резюме. Это повод сделать один честный сервис и слать туда, где язык в тексте, плюс смежные роли, где Go в плюсах и вы готовы так и сказать.

Как читать объявление: если must-have — Go, PostgreSQL, Docker — это ваша карта. Если must-have — Kubernetes, service mesh, «опыт высокой нагрузки 3 года» — не ваш слот на 90-й день. «Go будет плюсом» в Python-команде имеет смысл, когда основной стек у вас уже есть; иначе вы снова без роли. Не собирайте резюме «Python/Java/Go backend» с тремя hello world.

Формат работы: много Go-ролей ближе к платформе, биллингу, интеграциям, внутренним API, чем к «ещё один интернет-магазин». Учебный сервис коротких ссылок или тикетов всё равно валиден: там есть уникальность, конфликт, БД, таймаут. Не нужно имитировать высоконагруженный прокси, чтобы показать язык.

Инструментарий команды: git, code review самому себе через PR, linter. На созвоне могут попросить написать хендлер на доске или в редакторе. Тренируйте это на своём пакете: создать сущность, вернуть 409, закрыть rows. Это полезнее спора, «какой язык быстрее в бенчмарке блога».

База языка под созвон, не под экзамен

Tour of Go — старт на несколько дней, не профессия. Дальше пишите код сервиса и возвращайтесь к языку, когда упираетесь.

Слайсы и массивы: длина, ёмкость, случай «отрезал и удивился, что исходник изменился». Карты: итерация в случайном порядке, не хранить в ключе то, что не сравнивается так, как вы думаете. Строки — байты и руны на пальцах, чтобы не порезать UTF-8 в учебном ключе короткой ссылки. fmt и логи: структурированный лог или хотя бы единый префикс request id, не десяток Println.

Инструменты: go test ./..., go fmt, гошный линтер по возможности. Модули: не вендорьте «на всякий случай» без причины. Версии зависимостей зафиксируйте. Если тянете ORM — один, и всё равно читайте SQL. Если database/sql — напишите два запроса руками и закройте rows.

  • модули, версии, зачем go.mod, не GOPATH-ностальгия;
  • ошибки: обёртки, сравнение, когда sentinel;
  • указатели vs значения в полях структур — практическое правило, не философия;
  • интерфейсы: маленькие, там, где есть два поведения, не «интерфейс на каждую структуру»;
  • горутины: утечка, wait, контекст отмены запроса;
  • тесты в _test.go, табличные кейсы.

Generics — точечно, если упростили свой код. Не как цель месяца. Reflection — не вход. Cgo — нет.

Сервис, который стыкуется с вакансиями

Типичный контур: REST, JSON, Postgres, миграции, логи в stdout, graceful shutdown на пальцах, Docker. Фреймворк: стандартный net/http плюс chi/echo/gin — один, как в ваших объявлениях. Не три.

SQL: database/sql или тонкий обёртка. Понимать запрос важнее, чем «орм за 5 минут». SQL-карта: SQL roadmap. Docker: Docker roadmap.

Очереди и gRPC — если в пяти вакансиях есть. Иначе README честно: «нет брокера». Это лучше, чем строка Kafka без кода.

Чего не учить в первые 90 дней

  • свой фреймворк и «микроядро компании»;
  • k8s-оператор;
  • все облака как навыки;
  • сравнение «Go vs Rust vs Zig» вместо репозитория;
  • бенчмарки на пустом месте без профилировщика и задачи.

Английский: документация и предложения в стандартной библиотеке. Устный — по вакансии.

Пример 1. 90-дневный HTTP-сервис

Сервис коротких ссылок или «задачи команды»: сущность, CRUD, уникальность ключа, счётчик, Postgres, тесты на конфликт ключа, Docker Compose.

  1. Дни 1–15. Модуль, хендлер создания, ошибка 409, таблица.
  2. Дни 16–40. Чтение, список с лимитом, контекст с таймаутом к БД, логирование request id.
  3. Дни 41–65. Миграции, compose, healthcheck, тест гонки на уникальность — хотя бы попытка и комментарий, что получилось.
  4. Дни 66–90. README: запуск, переменные, чего нет. Резюме backend с Go, не «полиглот». Отклики по фильтру языка.

Откликаюсь на junior Go. Собрал сервис коротких ссылок: net/http, PostgreSQL, тесты на конфликт ключа, Docker Compose. Коммерческого стажа нет. На созвоне разберу обработку ошибки БД и контекст. Репозиторий: [ссылка]. Готов к тестовому на Go.

Короткое письмо лучше «изучаю современный язык». Каркас: генератор сопроводительного.

Пример 2. План учёбы

Было. Неделя синтаксиса. Неделя горутин «в вакууме». Неделя gin + grpc + kafka из разных видео. Нет ни одного compose.

Стало. Дни 1–10: язык внутри хендлера. Дни 11–60: БД и тесты. Дни 61–80: Docker и README. Дни 81–90: резюме, проверка резюме, 10–15 откликов туда, где Go в обязательных.

Второй план выглядит скромно и переживает live coding на «напиши хендлер». Первый рассыпается на вопросе про утечку горутины.

CV review

How does your resume look to a recruiter?

Upload a PDF or DOCX. In 1–2 minutes you get a score across 7 sections and fixes in order of impact.

AKAnna KovalevaFrontend · Middle
46

The best result is buried at the end

Worked on developing new features and fixing bugs. Took part in moving the cart to Next.js, after which conversion grew from 2.1% to 2.8%.

Rewrite

Moved the cart to Next.js with the team, lifting conversion from 2.1% to 2.8%.

Review my resumePDF or DOCX · 1–2 minutes

Критерии готовности

Сервис стартует у другого человека. Тесты без сети к прод-БД. Вы объясняете, зачем Context в запросе. В skills нет Kubernetes. Заголовок — Go backend / backend developer (Go), не пять языков.

Как описать проект: как описать проекты в резюме. Созвон: свой сервис плюс ошибки, слайсы, «что будет, если забыть закрыть строки БД». Общая подготовка: interview-prep.

Конкурентность и ошибки — то, что спросят вместо «зачем Go»

На созвоне редко ждут лекцию про планировщик. Ждут, что вы не запустите горутину на каждый запрос без лимита и не забудете отменить работу, когда клиент отвалился. В учебном сервисе это выглядит так: Context с таймаутом к БД, defer закрытия rows, лог ошибки с кодом, 503 если база не отвечает, а не panic в хендлере.

Сделайте один осознанный параллельный кусок или наоборот — сознательно последовательный, с комментарием в DECISIONS.md: «не гонял N запросов параллельно, потому что упёрся в лимит соединений». Это сильнее канала из туториала «ping-pong».

Ошибки: не сравнивайте строки текста. Обёртки, %w, errors.Is на своих sentinel, где это правда нужно. В JSON-ответе клиенту — стабильный код, в лог — деталь. Путать эти два слоя — частая junior-ошибка на любом языке, в Go её видно сразу.

Резюме и узкий поиск

Заголовок честный: Go backend. Если junior-вакансий мало, не раздувайте файл Python+Java+Go. Лучше один сильный репозиторий и отклики туда, где язык must-have, плюс роли «Go будет плюсом» без вранья в skills. Как собрать документ: как составить резюме.

Пули: «сервис коротких ссылок, конфликт ключа, Postgres, тесты, Compose». Письмо — ссылка и готовность писать хендлер на созвоне. Шаблон: письмо без опыта. Тестовое часто и есть маленький HTTP-сервис — не приносите gRPC, если не просили. Жанр: тестовое задание.

Смотрите каталог Go и backend-роли с фильтром языка. Если вход совсем узкий, параллельно не начинайте третий язык «для статистики». Усильте README и тесты. Стажировки: стажировка в IT.

Частые вопросы

01Стоит ли учить Go «потому что он быстрый»?

Нет. Учите, если вакансии и интерес к этому контуру есть. Скорость языка не закрывает отсутствие проекта. Не используйте рейтинги «язык года» как план карьеры. «Go быстрый» в письме не заменяет 409 на конфликте ключа.

02Gin или стандартная библиотека?

Что в целевых вакансиях. Для учёбы net/http полезен, чтобы не бояться Handler. В резюме — то, что в репозитории. Три фреймворка в skills при одном хендлере выглядят как курс.

03Нужен ли gRPC на junior?

Только если повторяется в объявлениях. Иначе лишний контур. REST достаточен для входа. Protobuf без сервиса — не навык.

04Как быть с маленьким числом junior-вакансий?

Не раздувайте skills. Усильте артефакт. Смотрите стажировки и «Go будет плюсом» в Python/Java командах только если готовы не врать. Параллельно не начинайте третий язык «на всякий случай». Узкий рынок лечится качеством репозитория, не шириной стека.

05Сравнивать ли Go с Python в письме?

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

06Когда смотреть DevOps-роли с Go?

Когда есть Linux, Docker, кусок автоматизации, не только «написал хендлер». Иначе это другая карта: как стать DevOps-инженером. Один HTTP-сервис не делает вас SRE.

Что сделать сейчас

Поставьте Go, опишите одну сущность и конфликт уникальности в БД. Не начинайте с бенчмарков. Доведите compose и тесты. Затем резюме под язык и поиск в каталоге Go-вакансий.

Карта без сервиса — конспект Tour. Работа начинается, когда рекрутер может запустить ваш бинарь в Docker и спросить про ошибку, которую вы сами оставили в issues.

Практический якорь на ближайшие две недели: POST создания ключа, GET редиректа или чтения, 409 на конфликт, тест на гонку хотя бы в комментарии, если полный тест сложен. Не начинайте с graceful shutdown и метрик Prometheus, пока этот контур не зелёный. Когда он зелёный — добавьте таймаут к БД и request id в лог. Это уже похоже на работу, а не на Tour of Go.

Если после 90 дней тишина, не меняйте язык. Проверьте: поднимается ли compose у другого человека, не слишком ли широкий заголовок резюме, не откликаетесь ли вы на middle с Kubernetes. Узкий поиск по Go-вакансиям плюс сильный README бьёт третий язык «для статистики». Файл перед рассылкой — через cv-review.

Откликаюсь на junior Go. HTTP-сервис с Postgres: создание ключа, 409 на конфликт, тесты, Compose. Коммерческого стажа нет. Могу написать хендлер на созвоне и разобрать закрытие rows. Репозиторий: [ссылка]. Готов к тестовому.

Next step

Try this article's advice on your own resume

The review highlights the lines where recruiters lose interest and suggests what to write instead.

  • A score out of 100 across 7 sections
  • Ready-made rewrites for weak lines
  • How well you fit a specific vacancy
Review my resumePDF or DOCX · 1–2 minutes
Sample reviewFrontend · Middle
46

Was 46
Now 87 / 100

  • Summary3 → 9
  • Experience4 → 9
  • Skills5 → 9

On this page

  1. Кому эта карта, а кому нет
  2. База языка под созвон, не под экзамен
  3. Сервис, который стыкуется с вакансиями
  4. Чего не учить в первые 90 дней
  5. Пример 1. 90-дневный HTTP-сервис
  6. Пример 2. План учёбы
  7. Критерии готовности
  8. Конкурентность и ошибки — то, что спросят вместо «зачем Go»
  9. Резюме и узкий поиск
  10. Частые вопросы
  11. Что сделать сейчас

Categories

  • All articles
  • Job Search
  • Resume & CV
  • Cover Letters & Applications
  • Interviews
  • Salary & Offers
  • Job Reviews & Roundups
  • Remote Work
  • Career
  • Career Growth
  • Market Trends
  • Onboarding
  • Tips

Related articles

  • Заявление на увольнение по собственному желанию: образец и сроки в 2026 году

    17d ago

  • Сокращение штата в 2026 году: выплаты, сроки и права работника

    17d ago

  • Стажировка в IT: как найти программу и оценить условия

    57d ago

  • Как стать Frontend-разработчиком: дорожная карта

    1d ago

  • Как стать Data Analyst: навыки и первый оффер

    13d ago

Looking for a job?

IT roles with remote and relocation options.

Browse jobs
AboutPublic OfferTerms of ServicePrivacy PolicySupport
AboutPublic OfferTerms of ServicePrivacy PolicySupport

By Region

  • Jobs in Europe
  • Jobs in USA
  • Jobs in Canada
  • Jobs in Russia

By Format

  • Remote Jobs
  • Relocation to USA
  • Hybrid Jobs
  • Office Jobs

By Experience Level

  • Junior Jobs
  • Middle Jobs
  • Senior Jobs