Вернуться в видеотекуКоротко о видео
Публичная демо-версия mock-интервью на позицию Junior Go developer: кандидат рассказывает о практиках, проектах, Docker Compose, CI/CD, PostgreSQL, MongoDB и приложении с OpenAI. Интервьюер проверяет понимание горутин, замыканий, WaitGroup, каналов, worker pool, mutex, data race, context и select, а затем даёт задачу на RLE-сжатие строки. В финале интервьюер даёт кандидату предметный фидбек, после чего ведущие отвечают на вопросы и рассказывают о программе менторства и платном mock-интервью.
Затронутые темы
Что взять на заметку
- Для задач с горутинами нужно объяснять, когда замыкание читает переменную цикла, передавать значение в горутину явно и отдельно обеспечить ожидание завершения горутин через sync.WaitGroup.
- Worker pool следует строить из фиксированного числа воркеров: каждый продолжает читать URL из канала до его закрытия, а основной поток ждёт завершения всех воркеров.
- Одновременную запись нескольких горутин в обычную map в Go нужно синхронизировать, например sync.Mutex: map не потокобезопасна и конкурентные записи могут привести к panic.
- Для отмены работы при пустом входном канале недостаточно проверять context перед чтением: нужен select, одновременно ожидающий URL и ctx.Done().
- В RLE-задаче надо сжимать именно соседние одинаковые символы, а не собирать частоты через map; важно сбрасывать счётчик при смене символа, обработать последнюю группу и пустую строку.
- По фидбеку интервьюера кандидату стоит углубить понимание замыканий в Go, каналов, worker pool и select, а также практиковать типовые алгоритмические задачи без костылей.