Вернуться в видеотекуКоротко о видео
Это публичное мок-интервью на позицию Middle Go-разработчика, совмещённое с презентацией менторской программы «Эйч Навыки». Интервьюер проверяет Go Core, конкурентность, память, каналы, контекст, тестирование, отладку, observability, базы данных и инфраструктуру; затем даёт кандидату устный фидбек. В финальном Q&A участники обсуждают подготовку к собеседованиям, SQL, алгоритмы, паттерны, карьерные вопросы и формат менторства.
Затронутые темы
Что взять на заметку
- Для Middle Go стоит уверенно объяснять NaN, пакет builtin, сравнимость ключей map, interface, embedding, receiver и изменение слайса сортировкой in-place.
- Нужно понимать модель GMP, локальные и глобальную очереди goroutine, рост стека, heap и escape analysis; кандидат получил замечание, что вопросы памяти требуют усиления.
- Каналы рассматриваются как средство синхронизации: важны различия buffered/unbuffered channel, операции чтения, записи и close, проверка закрытия через второе значение и отсутствие приоритета case в одном select.
- Интерфейсы особенно полезны для unit-тестов и подмены зависимостей; для логгера кандидат предпочёл явную передачу зависимости через конструктор, а не global state или context.
- Для интеграционных тестов обсуждаются build tags; для диагностики — pprof-профили CPU, памяти, goroutine и трассировка между сервисами, в частности Jaeger.
- При проектировании доступа к master/replica нужно скрывать инфраструктурные детали от бизнес-кода; ведущий предлагает выносить маршрутизацию пулов подключения на внешний уровень, например PgBouncer.
- По мнению ведущего, на обычном Go-собеседовании алгоритмы и графы спрашивают реже, чем на отдельной алгоритмической секции, а SQL-вопросы зависят от DB-нагруженности команды.