Все вопросы с собеседований¶
Полная база (170+ вопросов) находится в материнском репозитории:
materials/roadmap/Private & Shared 44/.
Здесь — структурированный обзор по категориям и краткие шпаргалки.
Категории¶
| Категория | Кол-во | Где разбирается |
|---|---|---|
| Go core | 55+ | Sprint 1 |
| Concurrency | 30+ | Sprint 2 |
| БД (PostgreSQL) | 25+ | Sprint 2 |
| Сети, OS | 20+ | конспекты по системному дизайну |
| Архитектура | 15+ | Sprint 3 |
| Soft skills | 30+ | Sprint 6 |
Топ-30 вопросов на собесе (по частоте)¶
Go core¶
- Чем slice отличается от array?
- Что произойдёт при append, если cap не хватает?
- Как устроена map в Go? Что с порядком итерации?
- Что такое interface? Что такое typed nil?
- Что такое pointer receiver vs value receiver?
- Когда defer вычисляет аргументы?
- Что такое panic / recover, когда уместно?
- Что такое context.Context, зачем первый аргумент?
- Как устроен GC в Go (примерно)?
- Что такое go scheduler (G/M/P)?
Concurrency¶
- Что такое race condition? Как детектить?
- В чём отличие unbuffered/buffered канала?
- Что произойдёт при send в closed канал?
- Что произойдёт при receive из closed канала?
- Чем sync.Mutex отличается от sync.RWMutex?
- Когда atomic быстрее Mutex?
- Что такое worker pool, как реализовать?
- Что такое deadlock, как избежать?
- Чем отличается context.WithCancel от WithTimeout?
- Когда лучше sync.Map vs map+Mutex?
БД¶
- Чем отличается READ COMMITTED от REPEATABLE READ?
- Что такое phantom read?
- Как работает индекс? Когда не работает?
- Что покажет EXPLAIN ANALYZE?
- Что такое N+1 problem, как починить?
Архитектура¶
- Что такое микросервисы, плюсы/минусы?
- Что такое outbox pattern?
- Как обеспечить идемпотентность POST?
- Что такое graceful shutdown?
- Что такое observability (RED/USE)?
Тренировка¶
В боте — мок-собес drill'ы по каждой теме (gc, scheduler, channels, patterns, ...). 6 вопросов в drill'е, AI оценивает ответы.
Совет¶
Не зубри ответы. Пойми принципы. На собесе тебя обязательно спросят вариацию: «а если N=1000000? а если в проде уже работает?». Шаблонный ответ не пройдёт — нужно реальное понимание.