Как пройти собес на GO разработчика?
Часть 1. Тех интервью.
Знаю, что GO активно растет и по некоторым данным это самый быстро растущий язык в мире.
В связи с чем я решила узнать: а какие же вопросы задают на собесах и что нужно знать, чтобы устроиться GO разработчиком?
По традиции разделила на 2 части: Хард скиллс и софт скиллс.
И если первая часть будет полезна разработчикам на GO, то вторая будет полезна всем.
В этот раз я мучала вопросами Никиту Ульшина Тимлида из Т-Банка - https://t.me/ulshinblog
Никита, расскажи как ты нанимаешь Go-разработчиков?
Никита:
Я часто участвую в подборе людей в команду. Это нормально: если ты хочешь работать с сильными ребятами — надо их находить и звать :)))
Писать код — это must, но понимать, как думает человек, — не менее важно.
Поэтому на собесах я смотрю не только на Go, но и на голову.
Ниже — мои топ-5 вопросов по хард скиллам и топ-5 по софту.
Формат — живой, без академической скуки. Я не проверяю, помнишь ли ты, сколько байт в int64.
Топ-5 по хард скиллам (Go и системное мышление)
1. “Расскажи, как работает context.Context. Что случится, если его проигнорировать в http-хендлере?”
Смотрю, насколько кандидат понимает не просто синтаксис, а саму идею cancelation и propagation. Контекст — это не просто “чтобы таймаут поставить”.
2. “У тебя есть map[string]int. Что случится, если ты к ней полезешь из нескольких горутин?”
Не интересует заученный ответ про sync.Mutex. Хочу понять, когда человек сам в такое попадал и как выкручивался.
3. “Опиши, как устроен garbage collector в Go.”
Поверхностно, но с пониманием фаз: mark, sweep, stop-the-world. Если человек знает хотя бы что-то про триггеры сборки и понятие latency — сразу плюсик.
4. “Как бы ты реализовал rate limiter на Go?”
Классическая задачка — я смотрю не на правильность, а на подход. Если человек говорит про токен бакет, использует time.Ticker и умеет рассуждать про гранулярность — кайф.
5. “У тебя микросервис на Go. В проде начали теряться запросы. Твой план действий?”
Проверяю мышление: логи, метрики, timeouts, retry policy, circuit breakers, kubernetes readiness — всё, что выдаёт инженера с боевым опытом.
Ждём 2 часть, чтобы быть готовыми ответить и на софт вопросы.