Текст площадки «Stepik». Упомянутые цены и обещанные результаты могут быть неактуальны; условия покупки проверяйте у продавца.
Приготовьтесь к техническим собеседованиям в IT-компаниях! Этот интенсивный курс содержит 50 тщательно отобранных задач, которые реально встречаются в интервью таких компаний как Яндекс, Tinkoff, VK, Ozon и других. Никакой «воды» — только практика, разборы решений и ключевые паттерны для успешного прохождения coding in
Читать полное описание
Go Interview Prep: 50 задач + 2 мини-проекта
Зачем этот курс
Если ты учишь Go и готовишься к собеседованию, чаще всего проблема не в том, что ты “ничего не знаешь”, а в том, что знания дырявые:
путаешься в базовых условиях и циклах
не уверен в рунах/Unicode и строках
пишешь конкурентность “на удачу” и ловишь утечки горутин
не умеешь делать ошибки “по-Go” (%w, errors.Is, defer, recover)
решаешь алгоритмы медленно или нестабильно
в прод-задачах теряешься: логгер, HTTP API, статусы, JSON, mutex
Этот курс — структурированная практика, которая быстро приводит навыки в порядок.
Что ты получишь после прохождения
После курса ты сможешь:
уверенно решать типовые задачи собеседований на Go (строки, map/slice, алгоритмы)
писать корректную конкурентность: goroutines, channels, select, WaitGroup, семафоры, graceful shutdown
обрабатывать ошибки “как в Go”: контекст + %w, errors.Is, defer, recover
читать и писать тесты в стиле table-driven
собрать 2 мини-проекта уровня “можно показать работодателю”:
конкурентный логгер с shutdown
HTTP JSON CRUD (in-memory) с правильными статусами и валидацией
Чем этот курс отличается
Не теория ради теории — только практические задачи, близкие к тому, что спрашивают на интервью.
Системно: от “проверки базы” до мини-проектов.
Go-идиоматично: правильные паттерны ошибок, конкурентности и работы со строками.
Задачи подобраны так, чтобы выявлять слабые места, а не просто “дать решить пару задач”.
Для кого курс
Подойдёт тебе, если ты:
уже знаешь основы Go, но хочешь закрыть пробелы и натренировать скорость
готовишься к собеседованию на Junior+/Middle Go
хочешь практику по конкурентности и стандартной библиотеке (net/http, encoding/json, sync)
хочешь “добить базу” и чувствовать уверенность в коде
Не подойдёт, если ты совсем не знаком с синтаксисом Go (тогда лучше сначала пройти базовый вводный курс).
Как устроен курс
Курс состоит из 7 модулей: 50+ задач + 2 “толстых” мини-проекта.
Модуль 0: Golang Essentials Check
Быстрая диагностика базы: типы, условия, циклы, ошибки, руны.
Здесь ты сразу поймёшь, где именно “дыры”.
палиндром чисел (без строк)
конвертер температуры (any + type switch + error)
подсчёт гласных (Unicode + runes)
безопасное деление (int, error, b==0)
максимум из трёх без math
сумма цифр без строк
високосный год (делимость 4/100/400)
Модуль 1: Горутины и каналы (10 задач)
Конкурентность и паттерны без утечек:
параллельный поиск, WaitGroup, конвейер, map-reduce
таймауты в select
worker pool с буфером
graceful shutdown через context
fan-in (слияние каналов)
неблокирующая отправка/чтение
лимит параллелизма (semaphore channel)
Модуль 2: Строки, руны, байты (8 задач)
Типовые строковые задачи, которые постоянно спрашивают:
reverse по рунам (Unicode-safe)
анаграммы (map[rune]int)
longest substring без повторов (sliding window)
RLE-сжатие
prefix/suffix без HasPrefix/HasSuffix
упрощённый CSV parser (state machine)
нормализация пробелов (unicode.IsSpace)
atoi без strconv (переполнение + error)
Модуль 3: Срезы, карты, структуры, методы (8 задач)
База структур данных на Go:
удаление из среза, удаление дубликатов
top-K частых, группировка анаграмм
упрощённый LRU
merge отсортированных массивов
пересечение множеств
методы и pointer receiver
Модуль 4: Алгоритмы “интервью классика” (10 задач)
Чтобы уверенно проходить средний уровень:
binary search, two-sum, three-sum
merge intervals
min in rotated array
quickselect (k-th largest)
валидные скобки (stack)
очередь на двух стеках
subarray sum = K
trapping rain water (two pointers)
Модуль 5: Ошибки, panic/recover, defer, тестируемость (5 задач)
Пишем безопасный Go-код:
%w + errors.Is
defer для гарантированного unlock
recover (panic → error)
валидация входа и понятные ошибки
table-driven tests (дописать тесткейсы)
Модуль 6: Мини-проекты (2 задачи)
Финальная сборка навыков:
Конкурентный логгер
уровни, канал, worker, форматирование, graceful shutdown
HTTP JSON CRUD (in-memory)
net/http, encoding/json, mutex, статусы, валидация