Открытое собеседование на Middle Go-разработчика
Кандидат отвечает на вопросы о срезах, каналах, типах времени и средствах синхронизации Go, а затем решает задачи с пулом и ограничением времени обработки. В конце обсуждается текущий опыт кандидата.
- Опубликовано на YouTube:
- Просмотры на YouTube: 5,5 тыс.
- Лайки на YouTube: 114
Коротко о видео
Это открытое мок-собеседование на Middle Go-разработчика с платформенной секцией. После знакомства интервьюер объясняет, что будет проводить разговор, и переходит к вопросам по языку. Кандидат рассуждает о поведении неинициализированного канала: чтение не вызывает панику, но блокируется навсегда. Далее проверяются различия констант и переменных при приведении к time.Duration, а также каналы, mutex и атомарные операции как средства синхронизации. В практическом блоке участники обсуждают структуру реализации пула и ограничение времени обработки заказов через select с ticker; также упоминается вариант с context. В финале кандидат рассказывает о работе в небольшом ecommerce-стартапе.
Затронутые темы
Что взять на заметку
- Чтение из nil-канала блокируется, поэтому его нужно отличать от ситуации с паникой.
- При работе с time.Duration важно понимать различие констант, переменных и приведения типов.
- Каналы, mutex и атомарные операции решают разные задачи синхронизации.
- Тайм-аут операций в Go можно моделировать через select и механизм времени.
- В задаче на пул стоит сначала определить хранение состояния и конструктор.