Перейти к содержимому

Мета-гайд по подготовке к собеседованию Go-разработчика 2025-2026

Гайд “как готовиться, что ждать, чего опасаться” Актуально на 2026 год для РФ/СНГ


1. Структура типичного Go-собеседования в РФ/СНГ

Заголовок раздела «1. Структура типичного Go-собеседования в РФ/СНГ»

В 2026 году типичное интервью на Go-позицию состоит из 4–6 этапов. Компании отказались от «вопросов на засыпку» в пользу проверки практических навыков.

[1] HR-скрининг (30 мин)
[2] Алгоритмическая секция (1–1.5 ч) — 1-3 секции в больших компаниях
[3] Языковая / live coding секция на Go (1–1.5 ч)
[4] System design (1–1.5 ч) — для middle 2+
[5] Финальное с тимлидом / архитектором (1 ч)
[6] Cultural fit / поведенческое (30–60 мин)
[7] Оффер
  • Опыт работы, причины смены работы
  • Зарплатные ожидания
  • Готовность к переезду / удалёнке
  • Мотивация: почему именно эта компания
  • Иногда — короткий технический опросник (5-7 вопросов): что такое горутина, зачем defer, чем slice отличается от array

Цель: отсев заведомо неподходящих кандидатов и проверка адекватности.

Совет: изучите продукт компании заранее. Особенно в Т-Банке, Ozon, Авито — там обращают внимание на мотивацию.

Пишите код в CoderPad / Codility / собственный live-coding редактор.

  • Задача уровня LeetCode Easy / Medium
  • Иногда — две задачи (одна простая, одна сложнее)
  • Яндекс — обязательно для всех уровней, 2-3 секции
  • Ozon, Avito — обычно 1 алгоритм
  • Т-Банк — 1-2 задачи + теория
  • VK, Сбер — алгоритм + знание языка

Что важно:

  • Объяснить ход мысли вслух
  • Сначала наивное решение, потом оптимизация
  • Учесть граничные случаи
  • Написать тесты в голове или в коде
  • Глубокие вопросы по Go (см. ниже)
  • Решение задачи с concurrency
  • Иногда — модификация существующего кода (рефакторинг)
  • В Авито часто дают инфраструктурные задачи: graceful shutdown, fan-out/fan-in, worker pool

Тренд 2026: В live-coding теперь могут попросить использовать AI-ассистента (Copilot, Cursor) — проверяют не память, а навык работы с инструментами.

Для middle 2 и выше — обязательно.

Что проектировать:

  • URL shortener
  • Чат-сервис
  • Notification system
  • Лента новостей
  • Платёжный сервис
  • Поиск по объявлениям (Avito-стиль)
  • Сервис трекинга (Яндекс-стиль)
  • Аналог Twitter

Структура ответа (стандартная):

  1. Functional requirements — что должна делать система
  2. Non-functional requirements — RPS, latency, объём данных
  3. Capacity estimation — back-of-the-envelope расчёт
  4. High-level design — основные компоненты, схема
  5. API design — эндпоинты, форматы
  6. Data model — таблицы, индексы, шардирование
  7. Deep dive — самое интересное место по запросу интервьюера
  8. Bottlenecks — где упрётся, как масштабировать
  • Технические вопросы про реальные задачи
  • Архитектурные обсуждения
  • Иногда — повторный live coding, но более прикладной
  • Вопросы кандидата
  • Расскажи о конфликте в команде
  • Расскажи про факап
  • Расскажи про инициативу
  • Как ты учишься новому
  • Как реагируешь на критику
КомпанияЭтаповОсобенности
Яндекс5-7One Day Offer возможен (всё за 2-3 дня), 2-3 алгоритмических секции
Т-Банк3-42 техсекции + cultural fit, можно проходить параллельно
Ozon4-5Акцент на concurrency и микросервисы
Avito4-5Инфраструктурные задачи, паттерны Go
Сбер4-6Долгий процесс, бюрократия, hr + tech + team + security check
VK3-4Проще Яндекса, но больше внимания внимательности
Wildberries3-4Растущая компания, активный найм, бывают тестовые задания
X5 Tech3-4Похоже на Сбер, но быстрее
Альфа-Банк3-4Похоже на Т-Банк, тех + cultural
Lamoda3-4Более стартап-стайл, ценится продуктовое мышление

  1. Решай задачи каждый день — хотя бы 30 минут
  2. Пиши на Go — даже если LeetCode позволяет другие языки
  3. Учись объяснять вслух — записывай себя на видео
  4. Решай в редакторе без подсказок — без LSP, как на собеседовании
  5. Тренируй паттерны — а не количество задач
ПлатформаДля чего хорошо
LeetCodeСтандарт индустрии, есть Go
CodeforcesАлгоритмически сильнее, div B/C
CodewarsЧуть проще, хорошо для разминки
HackerRankИногда используют как screening
Exercism (Go track)Курс с менторами
Easyoffer.ruМок-собесы на русском
It-interview.ioБесплатные мок-собесы
PrampБесплатный peer-to-peer мок-собес
Interviewing.ioПлатный, но с senior’ами из big tech

По темам (классические):

  • Reverse a linked list
  • Two Sum / Three Sum
  • Valid Parentheses
  • Merge Two Sorted Lists
  • Maximum Subarray (Kadane)
  • Best Time to Buy and Sell Stock
  • Climbing Stairs (DP)
  • Longest Substring Without Repeating Characters
  • Container With Most Water
  • Merge Intervals
  • Word Break
  • LRU Cache
  • Number of Islands (BFS/DFS)
  • Course Schedule (топсорт)
  • Trapping Rain Water
  • Median of Two Sorted Arrays
  • Word Ladder

Чисто Go-задачи (часто встречающиеся):

  • Реализуй worker pool с лимитом concurrency
  • Реализуй rate limiter (token bucket / leaky bucket)
  • Реализуй LRU cache (с горутин-безопасностью)
  • Реализуй semaphore через канал
  • Fan-in / fan-out на каналах
  • Graceful shutdown HTTP-сервера
  • Pipeline на каналах
  • Реализация Pub/Sub
  • Параллельный обход дерева
  • 30-45 минут на задачу в среднем
  • Не зависай — если за 10 минут нет идей, начинай с brute force
  • Оставь 5 минут на тесты в конце

Стандартная схема:

  1. Прочитай условие — переформулируй своими словами, уточни границы (что если массив пустой? что если есть дубликаты?)
  2. Приведи пример — на бумаге / в голове
  3. Расскажи brute force — даже если знаешь оптимальное
  4. Оптимизируй — какая структура данных поможет? что закешируем?
  5. Озвучь сложность — Big O time + space
  6. Пиши код — комментируя ключевые места
  7. Проверь на тестах — рукой пройди код по примеру
  8. Спроси о следующих шагах — что бы вы делали дальше?

Главное правило: молчать на собесе — хуже всего. Даже если не знаешь, говори, что думаешь.


  • Easy задачи LeetCode
  • Знание базовых структур данных (массив, мапа, slice)
  • Простой обход данных
  • Big O должен понимать
  • Easy + Medium
  • Двух-указатели, sliding window
  • Hash map применение
  • Базовая рекурсия
  • Medium регулярно
  • DP базовый
  • Графы (BFS / DFS)
  • Trees (Binary Tree, BST)
  • Sorting algorithms на пальцах
  • Concurrent задачи на Go
  • Medium / Hard
  • Сложный DP
  • Графовые алгоритмы (Dijkstra, топсорт)
  • Сложные concurrent задачи (race-free LRU cache, distributed rate limiter)

Не количество, а паттерны:

  1. Two Sum
  2. Valid Palindrome
  3. Valid Parentheses
  4. Reverse String
  5. Reverse Linked List
  6. Merge Two Sorted Lists
  7. Best Time to Buy and Sell Stock
  8. Maximum Subarray
  9. Contains Duplicate
  10. FizzBuzz
  11. Climbing Stairs
  12. Plus One
  13. Single Number
  14. Move Zeroes
  15. Intersection of Two Arrays
  16. First Unique Character in a String
  17. Valid Anagram
  18. Roman to Integer
  19. Longest Common Prefix
  20. Remove Duplicates from Sorted Array
  21. Search Insert Position
  22. Length of Last Word
  23. Add Binary
  24. Sqrt(x)
  25. Linked List Cycle
  26. Min Stack
  27. Linked List intersection
  28. Symmetric Tree
  29. Maximum Depth of Binary Tree
  30. Pascal’s Triangle
  1. Group Anagrams
  2. Container With Most Water
  3. 3Sum
  4. Letter Combinations of a Phone Number
  5. Remove Nth Node From End
  6. Generate Parentheses
  7. Merge Intervals
  8. Spiral Matrix
  9. Set Matrix Zeroes
  10. Rotate Image
  11. Word Search
  12. Subsets
  13. Combinations
  14. Permutations
  15. Longest Substring Without Repeating Characters
  16. Longest Palindromic Substring
  17. Search in Rotated Sorted Array
  18. Find First and Last Position
  19. Validate Binary Search Tree
  20. Number of Islands
  1. Course Schedule (topo sort)
  2. Clone Graph
  3. Word Ladder
  4. Pacific Atlantic Water Flow
  5. Lowest Common Ancestor of BST
  6. Lowest Common Ancestor of Binary Tree
  7. Serialize and Deserialize Binary Tree
  8. Kth Largest Element
  9. Top K Frequent Elements
  10. Sort Colors
  11. House Robber
  12. House Robber II
  13. Coin Change
  14. Longest Increasing Subsequence
  15. Word Break
  16. Unique Paths
  17. Jump Game
  18. LRU Cache
  19. Implement Trie
  20. Design Add and Search Words
  1. Median of Two Sorted Arrays
  2. Regular Expression Matching
  3. Wildcard Matching
  4. Minimum Window Substring
  5. Longest Valid Parentheses
  6. Edit Distance
  7. Largest Rectangle in Histogram
  8. Trapping Rain Water
  9. Sliding Window Maximum
  10. Word Search II
  11. Maximum Profit in Job Scheduling
  12. Burst Balloons
  13. Russian Doll Envelopes
  14. Find Median from Data Stream
  15. Design Twitter
  16. Insert Delete GetRandom O(1)
  17. LFU Cache
  18. Skyline Problem
  19. Number of Distinct Islands
  20. Critical Connections in a Network
  21. Network Delay Time (Dijkstra)
  22. Cheapest Flights Within K Stops (Bellman-Ford)
  23. Alien Dictionary (topo sort)
  24. Min Cost to Connect All Points (MST)
  25. Word Search II (Trie + DFS)
  26. Frog Jump (DP)
  27. Stone Game
  28. Maximum Profit Selecting (DP)
  29. Race Car
  30. Maximum Number of Visible Points
ПаттернКогда применятьПримеры
Sliding windowПодстрока / подмассив фикс/var длиныLongest substring, Max sum subarray K
Two pointersОтсортированный массив, палиндром3Sum, Container with most water
Hash mapУникальность, частота, lookupTwo Sum, Group Anagrams
Stack / QueueСкобки, BFS, undoValid Parentheses, BFS on tree
Heap (priority queue)K largest/smallest, schedulingTop K elements
Tree DFS / BFSБинарные деревьяInorder, Level order
Graph BFS / DFSСвязность, кратчайший путьNumber of islands, Course schedule
Топ. сортировкаЗависимости, DAGCourse schedule II, Alien dictionary
BacktrackingПеребор всех решенийPermutations, N-Queens
Dynamic programmingОптимизация + memoizationClimbing stairs, Coin change
GreedyЛокально-оптимальный выборJump game, Gas station
Binary searchОтсортированные данныеSearch rotated, Median of two arrays
Union-FindГруппировка, циклыNumber of provinces, Redundant edge
TrieПрефиксы строкWord search II, Autocomplete
Monotonic stackNext greater, hist gramLargest rectangle, Daily temperatures

Эти задачи специфичны для Go-собесов и не встречаются на LeetCode (или встречаются редко). Учитесь решать:

  1. LRU cache, потокобезопасныйsync.Mutex + container/list + map
  2. Rate limiter — token bucket или leaky bucket
  3. Semaphore через каналchan struct{}
  4. Worker pool с graceful shutdown — горутины + select + context
  5. Fan-out / Fan-in — N горутин читают из канала, M пишут в общий
  6. Pipeline на каналах — несколько стадий, каждая в горутине
  7. Pub/Sub — топики, подписчики, broadcasting
  8. Параллельный merge sort — рекурсия + goroutine
  9. Race-free counteratomic.Int64 или sync.Mutex
  10. Dead-lock детектор — distributed lock с TTL
  11. Concurrent map (или почему sync.Map не везде подходит)
  12. Producer-consumer с backpressure
  13. Token bucket (rate limiter с пиковыми всплесками)
  14. Sliding window rate limiter
  15. Circuit breaker (closed / open / half-open)
  16. Goroutine с таймаутом и отменой
  17. Реализация errgroup своими руками
  18. Round-robin balancer
  19. Throttling (debounce)
  20. Singleflight — деduplication of requests

Книги (must read):

  • “System Design Interview – An Insider’s Guide. Vol 1” — Alex Xu (фундамент)
  • “System Design Interview Vol 2” — Alex Xu (advanced)
  • “Designing Data-Intensive Applications” — Martin Kleppmann (классика; на middle 3+)
  • “Building Microservices” — Sam Newman

Курсы / каналы:

  • ByteByteGo (YouTube + платный курс Alex Xu) — лучшая визуализация
  • System Design Primer (GitHub donnemartin/system-design-primer) — бесплатно
  • Hello Interview — платная платформа для тренировок
  • Coursera “Cloud Computing Specialization” — для фундамента
  • Habr — отдельные статьи по конкретным задачам

Mock interviews:

  • Pramp — бесплатно peer-to-peer
  • Interviewing.io — платно, $225+ за сессию
  • Easyoffer.ru — на русском

Стандартная схема, которую ожидают практически везде:

  • Что должна делать система? Какие основные user stories?
  • Сколько пользователей? RPS? Объём данных?
  • Какие ограничения (мобильное приложение? веб? офлайн?)
  • На какой timeframe готовим (запустить за месяц? на 100M пользователей?)

Что система делает. 3-5 основных функций. Списком.

Пример (URL shortener):

  • Создать короткую ссылку
  • По короткой ссылке перейти на длинную
  • Аналитика кликов
  • Custom alias

Не делает, но обеспечивает:

  • Latency (например, < 100ms)
  • Throughput (например, 10K RPS)
  • Availability (99.9%, 99.99%)
  • Consistency (strong / eventual)
  • Scalability (что если 10x?)
  • Data durability
  • Cost-efficiency

“Back of the envelope”:

  • DAU * actions/day = total requests/day
  • Peak RPS = avg RPS * 5
  • Storage = users * data/user
  • Bandwidth = QPS * avg request size

REST или gRPC?

POST /api/v1/urls { url, ttl } → { short_code }
GET /api/v1/{short_code} → 302 Redirect
GET /api/v1/urls/{id}/stats → { clicks, geo, devices }
  • Таблицы, схема
  • PK / FK
  • Индексы
  • Шардирование (если нужно) — по какому ключу?
urls (id PK, short_code UNIQUE, long_url, created_at, ttl, user_id FK)
clicks (id PK, url_id FK, clicked_at, ip, geo, device)
  • Боксы и стрелочки
  • Клиент → CDN → Load Balancer → API Gateway → Сервисы → БД
  • Где Redis, где Kafka, где Elasticsearch

Интервьюер выберет одно место. Готовьтесь говорить про:

  • Как генерируется short_code? (counter + base62, hash + collision check, snowflake)
  • Кеш — Redis, что кешируем, TTL, инвалидация
  • Шардирование БД при росте
  • Гео-распределение
  • Что упадёт первым при росте?
  • Single point of failure?
  • Какие компромиссы (CAP)?
  • Что мы НЕ покрыли?
  1. Load balancing (L4 / L7, алгоритмы — RR, least connections, IP hash)
  2. Caching (паттерны: cache-aside, write-through, write-back; инвалидация)
  3. Database scaling (vertical, sharding, replication, partitioning)
  4. NoSQL vs SQL (когда что выбирать)
  5. CAP theorem + PACELC
  6. Message queues (Kafka vs RabbitMQ; partitions, consumer groups)
  7. Microservices vs Monolith
  8. API Gateway
  9. CDN
  10. WebSocket / Long polling / SSE
  11. Consistent hashing
  12. Rate limiting algorithms (token bucket, leaky bucket, sliding window)
  13. Idempotency
  14. Eventual consistency / strong consistency
  15. Two-phase commit / Saga / Outbox

Структура ответа на любой поведенческий вопрос:

  • S — Situation — где/когда было, кто участвовал
  • T — Task — что нужно было сделать, какая была цель
  • A — Action — что именно ты сделал (не “мы”, а “я”!)
  • R — Result — что получилось, что измерено

Правило: каждая история — 1.5-3 минуты. Не дольше.

Технические вопросы про опыт:

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

Конфликты и коммуникация:

  • Конфликт с коллегой
  • Конфликт с менеджером
  • Как реагируешь на критику
  • Как давал критику другим
  • Случай, когда работал с “сложным” человеком

Инициатива и лидерство:

  • Случай инициативы — что предложил, как реализовал
  • Менторство джунов
  • Лидерство без формальной роли
  • Сложное решение, за которое тебя могли уволить

Факапы:

  • Самый большой факап
  • Что выучил из ошибок
  • Как восстанавливался после факапа

Мотивация:

  • Почему наша компания
  • Чего хочешь через 3 года
  • Что тебя демотивирует
  1. Соберите 10-15 историй из карьеры
  2. Запишите по STAR — на бумаге
  3. Проиграйте вслух — на видео
  4. Сократите до 2 минут
  5. Уберите “мы” — оставьте “я”
  6. Добавьте цифры — “ускорил на 40%”, “сократил с 5 секунд до 200мс”

Подсказка: одну историю можно адаптировать под разные вопросы. История про переписку плохого сервиса — это и “технический вызов”, и “инициатива”, и “результат”.

  • Жалобы на прошлых работодателей / коллег
  • “У меня не было факапов” (точно ложь)
  • “Я работаю по 12 часов” (антипаттерн)
  • “Я не лажу с другими разработчиками” (даже если правда)
  • “Деньги — главное” (даже если правда, не на собесе)

  • Стек: Go, C++, Python, Java; Yandex Cloud, YDB, ClickHouse, собственный k8s
  • Процесс: HR → 2-3 алгоритм. секции → System design → команда → cultural fit
  • Особенность: есть One Day Offer — все этапы за 1-2 дня
  • Акцент: алгоритмы хорошего уровня даже для junior (LeetCode Medium)
  • Грейды: 12-15+, есть RSU (Yandex N.V. → ныне MKPAO Яндекс)
  • Команды на Go: Поиск, Реклама, Такси, Маркет, Cloud, Алиса, YDB
  • Стек: Go (главный язык бэка), Kotlin, Scala, TypeScript
  • Процесс: 3 этапа — 2 техсекции (алгоритмы + Go/архитектура) + cultural fit
  • Особенность: активно набирают, есть Т-Образование (стажировки)
  • Акцент: на чистый код, ясное мышление, понимание Go
  • Команды: Стрим бизнес-приложений, инфраструктура, скоринг, инвестиции
  • Стек: Go (доминирует), gRPC, Kafka, PostgreSQL, ClickHouse
  • Процесс: 4-5 этапов
  • Акцент: concurrency, микросервисы, system design
  • Особенность: очень много Go-разработчиков, есть курсы перехода с других языков
  • Бренд: хорошая школа Go в РФ, многие Go-сениоры — выходцы из Ozon
  • Стек: Go, PHP (легаси), Python; собственная PaaS платформа
  • Процесс: 4-5 этапов
  • Акцент: инфраструктурные задачи (graceful shutdown, fan-out, паттерны concurrency)
  • Особенность: сильная инженерная культура, доклады, conf’ы
  • Команды: Поиск, Платформа, Маркетплейс, Мессенджер
  • Стек: Go, PHP, C++, Java
  • Процесс: 3-4 этапа, проще Яндекса
  • Акцент: внимание к деталям, типичные ошибки в коде
  • Особенность: не самые высокие зарплаты по сравнению с Т-Банком/Ozon
  • Стек: Go, Java, Scala, Python
  • Процесс: 4-6 этапов (security check, бюрократия)
  • Акцент: надёжность, безопасность, enterprise
  • Особенность: SberDevices — больше Go (для умных колонок, ассистентов)
  • Минус: долгий найм (1-2 месяца)
  • Стек: Go, Java, Kotlin, Python; Kafka, ClickHouse
  • Процесс: 3-4 этапа, иногда тестовое задание
  • Акцент: highload, e-commerce
  • Особенность: растёт быстро, активный найм, есть бесплатное обучение Go (3 месяца)
  • Стек: Go, Java, Python; Kafka
  • Процесс: 3-4 этапа
  • Акцент: retail, цепочки поставок, IoT
  • Особенность: похоже на Сбер, но быстрее
  • Стек: Go (растёт), Kotlin, Java, Scala
  • Процесс: 3-4 этапа, похоже на Т-Банк
  • Акцент: банкинг, надёжность
  • Стек: Python (легаси), Go (новые сервисы), Kotlin
  • Процесс: 3-4 этапа
  • Акцент: продуктовое мышление, fashion-домен
  • Особенность: более стартап-стайл, гибкость
  • Райффайзен — Go для финтеха, более консервативно
  • МТС, МегаФон — телеком, Go растёт
  • HFLabs, OZON.ru, KazanExpress — растущие
  • inDriver, Bolt — международные

КомпанияЧто делают на GoСложность найма из РФ
GoogleKubernetes, многие внутренниеОчень сложно, нужен оффис вне РФ
CloudflareWorkers, edge, инфраструктураСложно, иногда удалёнка из EU
UberМикросервисы (отказались на Go)Сложно, US/EU
DiscordБэкенд (с Elixir + Rust)Сложно
TwitchБэкендСложно
HashiCorpTerraform, Vault, ConsulСложно, US-centric
DockerDocker engineСложно
Kubernetes (CNCF)Сама K8s и весь экосистемаOpen source — можно влиять
MongoDBСервер БДВозможно из EU
DropboxЧасть инфры на GoСложно
StripeМикросервисыСложно
PayPalБэкендСложно
ShopifyЧасть инфрыВозможно
GitHubЧасть бэкендаСложно

Реалии:

  • US: сложно даже виза, политические причины, санкции (с 2022)
  • EU: возможно, особенно через релокацию в Берлин, Амстердам, Варшаву
  • UAE, Армения, Грузия, Сербия, Кипр — популярные хабы для релокации
  • Удалёнка — есть, но конкуренция высокая, английский от B2+

Что нужно:

  • Английский (минимум B2)
  • LinkedIn профиль с английским описанием
  • Open source contributions
  • Возможно — релокация в нейтральную страну

Структура (1 страница для junior/middle 1, 2 — для middle 2+)

Заголовок раздела «Структура (1 страница для junior/middle 1, 2 — для middle 2+)»
  • ФИО
  • Должность (точно — “Go-разработчик”, не “Программист”)
  • Грейд (по желанию — Middle Go-developer)
  • Город / готовность к релокации
  • Контакты — telegram, email, github
  • LinkedIn (если есть)
  • Зарплатные ожидания (можно опускать — но HR будет спрашивать)

“Go-разработчик с 3+ годами опыта в highload-микросервисах. Работал с Kafka, PostgreSQL, gRPC, Kubernetes. Знаю concurrency на уровне профайлинга и оптимизации. Веду pet-проекты по distributed systems.”

Через запятую (топ навыки из вакансий 2026):

  • Языки: Go, Bash, SQL
  • Базы данных: PostgreSQL, Redis, ClickHouse, MongoDB
  • Брокеры: Kafka, RabbitMQ
  • Инфра: Docker, Kubernetes, Linux
  • Observability: Prometheus, Grafana, Jaeger, OpenTelemetry
  • CI/CD: GitLab CI, GitHub Actions
  • Прочее: gRPC, REST, OpenAPI, GraphQL

Для каждого места:

  • Компания, должность, период
  • Стек проекта
  • Достижения с цифрами:
    • “Разработал 6 микросервисов на Go, обрабатывающих 100K RPS с latency < 80ms”
    • “Сократил время ответа сервиса с 500мс до 80мс через оптимизацию запросов и кеширование”
    • “Внедрил автотесты, покрытие выросло с 30% до 75%”
    • “Провёл 150+ code review за год, снизил баги на 40%”

ВАЖНО: избегай “участвовал”, “помогал”, “был частью команды”. Только я делал X и получил Y.

  • Название, ссылка на GitHub
  • Краткое описание (2-3 предложения)
  • Стек
  • Что узнал / что освоил
  • README с архитектурой обязательно

Хорошие pet-проекты для Go-разработчика:

  • URL shortener с Postgres + Redis
  • Чат на WebSocket
  • Telegram-бот с интеграциями
  • CLI-утилита (бэкап, мониторинг)
  • Мини-аналог Trello / Notion
  • gRPC-микросервис (например, file storage)
  • Краулер с concurrent processing
  • ВУЗ, факультет, годы
  • Если без вышки — курсы, сертификаты
  • A1/A2/B1/B2/C1 (без вранья — на собесе проверят)
ПлатформаДля чего
hh.ruСтандарт РФ, ~70% работодателей
Habr CareerЛучше для middle+, в IT-секторе
LinkedInЗарубежные компании, релокация
GetMatchАукцион, работодатели сами пишут
GeekjobАльтернатива hh.ru
Telegram-каналыБыстрые вакансии, прямые контакты
GitHub профильКосвенно, через активность

Специализированные по Go:

  • @godevjob — “Go jobs” — основной канал
  • @golangjob — Golang Jobs
  • @goproglib — Библиотека Go-разработчика (вакансии + материалы)

Общие IT-каналы с фильтром по Go:

  • @g_jobbot — поиск по навыкам, есть Go
  • @itjob — общий IT
  • @vacuna — для middle+
  • @workforproginrussia — РФ-вакансии
  • @digital_finder — IT в digital
  • @remote_it_jobs — удалёнка
  • @inflowjob — IT на удалёнке
  • @ITbestrussia — лучшие вакансии

Релокация и зарубежные:

  • @relocateme — релокация
  • @itreloc — IT релокация
  • @workinjapan_it — Япония
  • @remoteit_eng — на английском
  • @workinusa_jobs — США

Совет: подпишитесь на 5-10 каналов одновременно. Хорошие вакансии разлетаются за часы.


  • Прорешать LeetCode Easy на Go (10-15 задач)
  • Повторить slice / map / channel под капотом
  • Решить 2-3 concurrent задачи на Go (worker pool, rate limiter)
  • Прочитать “100 Go Mistakes” topics
  • Повторить error handling, defer/panic/recover
  • Просмотреть GMP-модель планировщика
  • 5 задач/день на LeetCode Medium на Go
  • Каждый день — одна задача без помощи (45 минут)
  • Сделать дайджест паттернов (sliding window, two pointers, DP, BFS/DFS)
  • Решить 3-5 “Go-специфичных” задач (LRU, semaphore, pipeline)
  • Mock interview на Pramp или с другом
  • Прочитать главы 1-5 “System Design Interview Vol 1” (Alex Xu)
  • Разобрать 5 классических задач:
    • URL shortener
    • Chat system
    • Newsfeed
    • Notification system
    • Rate limiter
  • Нарисовать своё решение, проговорить вслух
  • Просмотреть ByteByteGo (3-5 видео)
  • Mock system design на Pramp
  • 2-3 mock interviews подряд (один день — один)
  • Записать на видео — посмотреть, как объясняешь
  • Исправить слабые места
  • Прочитать обзор интервью в компаниях, куда идёшь
  • Подготовить 10-12 STAR-историй
  • Проиграть вслух
  • Обновить резюме (актуальный стек, достижения с цифрами)
  • Обновить LinkedIn / Habr Career
  • Изучить компании, куда подаёшься
  • Подготовить свои вопросы для собеса (минимум 5-7)
  • Выспаться

После каждого отказа — разбор полётов:

  1. Запиши, что спрашивали (по памяти, сразу после собеса)
  2. Что не знал? — добавь в личный roadmap
  3. Что ответил плохо? — обдумай “идеальный ответ”
  4. Спроси фидбек у HR — большинство ничего не скажут, но иногда дают
  5. Признаки слабых мест:
    • “Не хватило глубины” → углубляй internals
    • “Не нашёл оптимального решения” → больше алгоритмов
    • “Слабая системная картина” → больше system design
    • “Не подошёл по culture fit” → пересмотри подачу

Стандарт: 6 месяцев после отказа в большинство компаний.

Исключения:

  • Если отказ был “не наш уровень, но потенциал есть” — можно через 3 месяца
  • Если отказ за конкретный навык, который ты усилил — можно через 3-4 месяца
  • “Не подошли по culture” — обычно навсегда (но не всегда)

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

Главные правила:

  1. Никогда не называй желаемую сумму первым. Всегда спрашивай “какой у вас вилка?”.

  2. Дай несколько собесов параллельно. Лучший аргумент — конкурирующий оффер.

  3. Торгуйся не только за зарплату:

    • Грейд (Middle 2 → Middle 3 — большой скачок)
    • Бонусы (квартальные, годовые)
    • RSU / опционы (в Яндексе, Озоне)
    • Подписной бонус (signing bonus)
    • Релокационный бюджет
    • ДМС / спорт / обучение
    • Гибкий график / 100% удалёнка
    • Премии за on-call
    • Дополнительный отпуск
  4. Не блефуй. Если у тебя нет оффера от Я, не говори, что есть.

  5. Не давай решение мгновенно. Возьми 1-3 дня “подумать”, в это время дожми других.

  6. Письменный оффер до увольнения. Никогда не увольняйся, пока не подписан оффер.

Стандартный диапазон torgа: +10-25% от первоначального оффера.


Перед собесом:

  • Выспись (8 часов)
  • Поешь нормально (но не переедай)
  • Разомнись физически (10-15 минут)
  • 5-10 минут медитации / дыхания
  • Подготовь рабочее место: вода, блокнот, ручка, тишина
  • Проверь интернет, камеру, микрофон заранее
  • За 5 минут включи Pomodoro — “проверь себя готовым”

Во время собеса:

  • Дыши глубоко
  • Не торопись отвечать (3-5 секунд паузы — это норма)
  • Уточняй вопросы, если непонятно
  • Не бойся сказать “не знаю” — но добавь “но я бы подумал в таком направлении”
  • Пиши на бумаге / в редакторе, не держи всё в голове
  • Если поплыл — сделай глубокий вдох и попроси переформулировать
  1. Не молчи. Молчание убивает интервью.
  2. Скажи: “Дайте подумать минуту.” Это нормально.
  3. Сформулируй, что ты понял из вопроса. Часто интервьюер поможет уточнить.
  4. Расскажи, что знаешь рядом. Если не помнишь точно — расскажи, что знаешь о смежной теме.
  5. Признай честно: “Я не работал с этим, но из общих знаний думаю…”
  6. Запиши себе — после собеса разберись с этим вопросом.

Помни: опытные интервьюеры понимают стресс. Они оценивают не “идеального робота”, а процесс мышления.

Бесплатно:

  • Pramp — пары с другими кандидатами
  • It-interview.io — мок-собесы
  • Easyoffer.ru — на русском
  • Discord-серверы Go-разработчиков (русские и английские)
  • Друзья / коллеги — попроси сениора сделать tech interview

Платно:

  • Interviewing.io — с senior’ами FAANG ($225+)
  • Hello Interview — system design
  • Личный ментор — на 1-2 месяца, $50-200 за сессию

Совет: делайте mock interview за день до настоящего. Это разогреет.

Собес — это диалог, а не экзамен.

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

Хорошие компании знают, что рынок Go-разработчиков узкий и относятся к кандидатам с уважением.